Mercurial > mplayer.hg
view asxparser.h @ 22139:3a3effa718fd
r22104: Add global field dominance flag instead of duplicating this "everywhere"
r22107: Move -vo gl suboptions that should be irrelevant for the average user
r22108: formatting fixes for r22104
r22113: insert line break for readability
r22123: tinterlace mode 4 leaves height unchanged.
r22127: Fix vqscale description to match at least somewhat the code.
r22137: formatting/wording
r22138: wording/formatting
r22150: key-fifo-size default changed
author | voroshil |
---|---|
date | Mon, 05 Feb 2007 19:07:19 +0000 |
parents | 2ec2301183cd |
children | ec2bfbd0d647 |
line wrap: on
line source
typedef struct _ASX_Parser_t ASX_Parser_t; typedef struct { char* buffer; int line; } ASX_LineSave_t; struct _ASX_Parser_t { int line; // Curent line ASX_LineSave_t *ret_stack; int ret_stack_size; char* last_body; int deep; }; ASX_Parser_t* asx_parser_new(void); void asx_parser_free(ASX_Parser_t* parser); /* * Return -1 on error, 0 when nothing is found, 1 on sucess */ int asx_get_element(ASX_Parser_t* parser,char** _buffer, char** _element,char** _body,char*** _attribs); int asx_parse_attribs(ASX_Parser_t* parser,char* buffer,char*** _attribs); /////// Attribs utils char* asx_get_attrib(const char* attrib,char** attribs); int asx_attrib_to_enum(const char* val,char** valid_vals); #define asx_free_attribs(a) asx_list_free((void***)&a,free) ////// List utils typedef void (*ASX_FreeFunc)(void* arg); void asx_list_free(void* list_ptr,ASX_FreeFunc free_func);