"L. Spiro Engine"

F:/My Projects/LSEngine/Modules/LSGraphicsLib/Src/DirectXShaders/LSGDirectX10ShaderTranslator.h

00001 
00016 #ifndef __LSG_DIRECTX10SHADERTRANSLATOR_H__
00017 #define __LSG_DIRECTX10SHADERTRANSLATOR_H__
00018 
00019 #include "../LSGGraphicsLib.h"
00020 #include "../ShaderLanguage/LSGShaderTranslationProcessorBase.h"
00021 #include "LSGDirectX10CBuffer.h"
00022 
00023 #ifdef LSG_DX10
00024 
00025 namespace lsg {
00026 
00033         class CDirectX10ShaderTranslator : public CShaderTranslationProcessorBase {
00034         public :
00035                 // == Various constructors.
00036                 LSE_CALLCTOR                                                                            CDirectX10ShaderTranslator();
00037                 virtual LSE_CALLCTOR                                                            ~CDirectX10ShaderTranslator();
00038 
00039 
00040                 // == Types.
00041 
00042 
00043                 // == Functions.
00044         protected :
00045                 // == Members.
00049                 CVector<CDirectX10CBuffer>                                                      m_vCBuffers;
00050 
00051 
00052                 // == Functions.
00060                 LSBOOL LSE_CALL                                                                         PostShaderString( CString &_sShader, CString &_sError );
00061 
00069                 LSG_PROCESSING_DIRECTIVE LSE_CALL                                       HandleFunctionDeclaration( LSG_NODE_CALLBACK &_ncData );
00070 
00078                 LSG_PROCESSING_DIRECTIVE LSE_CALL                                       HandleInitListWrap( LSG_NODE_CALLBACK &_ncData );
00079 
00087                 LSG_PROCESSING_DIRECTIVE LSE_CALL                                       HandleSingleDeclaration( LSG_NODE_CALLBACK &_ncData );
00088 
00096                 LSG_PROCESSING_DIRECTIVE LSE_CALL                                       HandleIntrinsic( LSG_NODE_CALLBACK &_ncData );
00097 
00105                 LSG_PROCESSING_DIRECTIVE LSE_CALL                                       HandleSemantic( LSG_NODE_CALLBACK &_ncData );
00106 
00114                 virtual LSBOOL LSE_CALL                                                         DecodeTypeQualifier( LSUINT64 _ui64Qualifier, CString &_sString );
00115 
00123                 virtual LSBOOL LSE_CALL                                                         DecodeType( LSUINT64 _ui64Type, CString &_sString );
00124 
00125 
00126         private :
00127                 typedef CShaderTranslationProcessorBase                         Parent;
00128         };
00129 
00130 }       // namespace lsg
00131 
00132 #endif  // #ifdef LSG_DX10
00133 
00134 #endif  // __LSG_DIRECTX10SHADERTRANSLATOR_H__
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator