1 #ifndef __THEME_PARSE_H__
2 #define __THEME_PARSE_H__
9 #define YY_DECL int obthemelex(YYSTYPE *yylval, struct parser_control *pc)
12 #define YYLEX_PARAM pc
14 #define MAX_INCLUDE_DEPTH 32
15 #define LINE pc->currline[pc->include_stack_ptr]
17 extern int themedebug;
51 GHashTable *materials;
90 ObFrameContext context;
91 struct texture texture;
92 struct material *material;
93 struct geometry geometry;
96 struct parser_control {
97 struct yy_buffer_state *include_stack[MAX_INCLUDE_DEPTH];
98 int currline[MAX_INCLUDE_DEPTH];
99 char currfile[MAX_INCLUDE_DEPTH][501];
100 int include_stack_ptr;
101 char error_buf[4096];
102 struct obthemedata *target;
105 void obthemeerror(struct parser_control *pc, char *s);
106 int obtheme_parse(struct obthemedata *td, const char *filename);
107 struct parser_control *parser_init(struct obthemedata *td);
108 int obthemeparse(struct parser_control *);
109 void parser_finish(struct parser_control *);
111 #endif /* __THEME_PARSE_H__ */