"L. Spiro Engine"
|
00001 00017 #ifndef __LSG_DIRECTX11VERTEXSHADER_H__ 00018 #define __LSG_DIRECTX11VERTEXSHADER_H__ 00019 00020 #include "../LSGGraphicsLib.h" 00021 #include "LSGDirectX11CompiledShader.h" 00022 #include "String/LSTLString.h" 00023 00024 #ifdef LSG_DX11 00025 00026 namespace lsg { 00027 00035 class CDirectX11VertexShader : public CDirectX11CompiledShader { 00036 public : 00037 // == Various constructors. 00038 LSE_CALLCTOR CDirectX11VertexShader(); 00039 virtual LSE_CALLCTOR ~CDirectX11VertexShader(); 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 ID3D11VertexShader * 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 CDirectX11CompiledShader Parent; 00083 friend class CDirectX11CompiledShaderManager; 00084 }; 00085 00086 } // namespace lsg 00087 00088 #endif // #ifdef LSG_DX11 00089 00090 #endif // __LSG_DIRECTX11VERTEXSHADER_H__