"L. Spiro Engine"
|
00001 00016 #ifndef __LSG_SHADERLEXER_H__ 00017 #define __LSG_SHADERLEXER_H__ 00018 00019 #include "../LSGGraphicsLib.h" 00020 #include "LSGShaderLanguageParser.h" 00021 00022 #ifdef yyFlexLexer 00023 #undef yyFlexLexer 00024 #endif 00025 #define yyFlexLexer CShaderLexBase 00026 #include "../ShaderLangGen/LSGShaderLexBase.h" 00027 00028 namespace lsg { 00029 00036 class CShaderLexer : public CShaderLexBase { 00037 public : 00038 // == Various constructors. 00039 LSE_CALLCTOR CShaderLexer( std::istream * _pisStream, std::ostream * _posStream = NULL ); 00040 virtual LSE_CALLCTOR ~CShaderLexer(); 00041 00042 00043 // == Functions. 00049 virtual LSUINT32 LSE_CALL NewLex(); 00050 00057 LSVOID LSE_CALL SetContainer( const CShaderLanguageParser &_slpParserContainer ); 00058 00059 00060 protected : 00061 // == Members. 00065 const CShaderLanguageParser * m_pslpContainer; 00066 00067 private : 00068 typedef CShaderLexBase Parent; 00069 }; 00070 00071 } // namespace lsg { 00072 00073 #endif // __LSG_SHADERLEXER_H__