"L. Spiro Engine"
|
00001 00016 #ifndef __LSG_DIRECX10FLOATTEXTURE_H__ 00017 #define __LSG_DIRECX10FLOATTEXTURE_H__ 00018 00019 #include "../LSGGraphicsLib.h" 00020 #include "../Texture/LSGTextureBase.h" 00021 00022 #ifdef LSG_DX10 00023 00024 namespace lsg { 00025 00032 class CDirectX10FloatTexture : public CTextureBase { 00033 public : 00034 // == Various constructors. 00035 LSE_CALLCTOR CDirectX10FloatTexture(); 00036 virtual LSE_CALLCTOR ~CDirectX10FloatTexture(); 00037 00038 00039 // == Functions. 00046 virtual LSBOOL LSE_CALL Activate( LSUINT32 _ui32Slot ); 00047 00051 LSVOID LSE_CALL DeActivate(); 00052 00060 virtual LSBOOL LSE_CALL SetsColorAutomatically() const; 00061 00062 00063 protected : 00064 // == Members. 00070 ID3D10Texture2D * m_pt2tTexture; 00071 00075 ID3D10DepthStencilView * m_pdsvView; 00076 00080 ID3D10ShaderResourceView * m_psrvResourceView; 00081 00085 LSUINT32 m_ui32LastSlot; 00086 00087 00088 // == Functions. 00094 LSBOOL LSE_CALL CreateApiTexture(); 00095 00101 virtual LSBOOL LSE_CALL SetAsDepthStencilRenderTarget() const; 00102 00106 virtual LSVOID LSE_CALL EndAsRenderTarget() const; 00107 00111 LSVOID LSE_CALL ResetApi(); 00112 00113 00114 private : 00115 typedef CTextureBase Parent; 00116 }; 00117 00118 00119 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00120 // DEFINITIONS 00121 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00122 00123 00124 } // namespace lsg 00125 00126 #endif // #ifdef LSG_DX10 00127 00128 #endif // __LSG_DIRECX10FLOATTEXTURE_H__