"L. Spiro Engine"
|
00001 00017 #ifndef __LSG_DIRECTX10VERTEXSHADER_H__ 00018 #define __LSG_DIRECTX10VERTEXSHADER_H__ 00019 00020 #include "../LSGGraphicsLib.h" 00021 #include "LSGDirectX10CompiledShader.h" 00022 #include "String/LSTLString.h" 00023 00024 #ifdef LSG_DX10 00025 00026 namespace lsg { 00027 00035 class CDirectX10VertexShader : public CDirectX10CompiledShader { 00036 public : 00037 // == Various constructors. 00038 LSE_CALLCTOR CDirectX10VertexShader(); 00039 virtual LSE_CALLCTOR ~CDirectX10VertexShader(); 00040 00041 00042 // == Functions. 00046 virtual LSVOID LSE_CALL Reset(); 00047 00053 virtual LSBOOL LSE_CALL Activate(); 00054 00058 virtual LSVOID LSE_CALL PreRender(); 00059 00060 00061 protected : 00062 // == Members. 00066 ID3D10VertexShader * m_pvsVertexShader; 00067 00078 virtual LSBOOL LSE_CALL Compile( const CString &_sShaderText, CShaderLanguageParser::LSG_SHADER_TYPES _stShaderType, CString &_sError ); 00079 00080 00081 private : 00082 typedef CDirectX10CompiledShader Parent; 00083 friend class CDirectX10CompiledShaderManager; 00084 }; 00085 00086 } // namespace lsg 00087 00088 #endif // #ifdef LSG_DX10 00089 00090 #endif // __LSG_DIRECTX10VERTEXSHADER_H__