Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

SDPLexer.h

Go to the documentation of this file.
00001 #ifndef SDP_LEXER_H 00002 #define SDP_LEXER_H 00003 00004 #ifndef SDP_LEXER_LOCKOUT 00005 /* 00006 * Stupid code in the FlexLexer header file makes it impossible 00007 * to include it twice. Simultaneously, the scanner code needs the 00008 * class definition. 00009 */ 00010 #ifdef yyFlexLexer 00011 #undef yyFlexLexer 00012 #endif 00013 #define yyFlexLexer sdpFlexLexer 00014 #include <FlexLexer.h> 00015 #endif /* SDP_LEXER_LOCKOUT */ 00016 00017 class SDPSessionDescription; 00018 class SDPMediaDescription; 00019 class ParseTimeBase; 00020 class ParseTimeRange; 00021 00022 #include "SDPParser.h" 00023 #include "MNString.h" 00024 00025 int sdpparse( void* SDPScanner ); 00026 00027 /*********************************************************************** 00028 * sdpFlexLexer::yylex() 00029 ***********************************************************************/ 00030 00031 class SDPScanner : public yyFlexLexer 00032 { 00033 MNString _inputString; 00034 00035 public: 00036 SDPSessionDescription* _desc; 00037 char* _text; 00038 00039 public: 00040 SDPScanner( const MNString& str, SDPSessionDescription* desc ) 00041 : _inputString( str ) 00042 , _desc( desc ) 00043 { 00044 } 00045 00046 ~SDPScanner( ) 00047 { 00048 } 00049 00050 virtual int yylex( ); 00051 00052 /* 00053 * This function is used by the lexical scanner as a replacement 00054 * for YY_INPUT. 00055 * Input: buf - buffer to be filled by SockIn 00056 * max_size - maximum number of characters to read 00057 * Ouput: modified buffer 00058 * int - number of characters read or 0 for EOF 00059 */ 00060 virtual int LexerInput( char* buf, int max_size ); 00061 }; 00062 00063 #endif 00064

Generated on Sun Mar 6 13:35:50 2005 for Komssys by doxygen 1.3.8