]> git.sesse.net Git - vlc/blobdiff - modules/demux/playlist/xspf.h
Forgiven in the previous commit (useless test)
[vlc] / modules / demux / playlist / xspf.h
index d612500ef53927a5407cfe704b4e861dc2d9850d..d0a5aacb7880eb141f215037ff5e5f412dc0ac18 100644 (file)
  */
 
 /* defines */
-#define FREE_NAME()  if (psz_name) {free(psz_name);psz_name=NULL;}
-#define FREE_VALUE() if (psz_value) {free(psz_value);psz_value=NULL;}
+#define FREE_NAME()  free(psz_name);psz_name=NULL;
+#define FREE_VALUE() free(psz_value);psz_value=NULL;
 #define FREE_ATT()   FREE_NAME();FREE_VALUE()
 
-#define UNKNOWN_CONTENT 0
-#define SIMPLE_CONTENT 1
-#define COMPLEX_CONTENT 2
+enum {
+    UNKNOWN_CONTENT,
+    SIMPLE_CONTENT,
+    COMPLEX_CONTENT
+};
 
-#define SIMPLE_INTERFACE  (playlist_item_t *p_item,\
-                           input_item_t    *p_input,\
+#define SIMPLE_INTERFACE  (input_item_t    *p_input,\
                            const char      *psz_name,\
                            char            *psz_value)
 #define COMPLEX_INTERFACE (demux_t         *p_demux,\
                            playlist_t      *p_playlist,\
-                           playlist_item_t *p_item,\
-                           input_item_t    *p_input, \
+                           input_item_t    *p_input_item,\
                            xml_reader_t    *p_xml_reader,\
                            const char      *psz_element)
 
 /* prototypes */
-int xspf_import_Demux( demux_t *);
-int xspf_import_Control( demux_t *, int, va_list );
-
 static vlc_bool_t parse_playlist_node COMPLEX_INTERFACE;
 static vlc_bool_t parse_tracklist_node COMPLEX_INTERFACE;
 static vlc_bool_t parse_track_node COMPLEX_INTERFACE;
+static vlc_bool_t parse_extension_node COMPLEX_INTERFACE;
+static vlc_bool_t parse_extitem_node COMPLEX_INTERFACE;
 static vlc_bool_t set_item_info SIMPLE_INTERFACE;
 static vlc_bool_t skip_element COMPLEX_INTERFACE;
-static vlc_bool_t insert_new_item( playlist_t *, playlist_item_t *, playlist_item_t **, char *);
 
 /* datatypes */
 typedef struct