"L. Spiro Engine"
|
00001 00017 #ifndef __LSG_DIRECTX10INDEXBUFFER_H__ 00018 #define __LSG_DIRECTX10INDEXBUFFER_H__ 00019 00020 #include "../LSGGraphicsLib.h" 00021 00022 #ifdef LSG_DX10 00023 00024 #include "../IndexBuffer/LSGIndexBufferBase.h" 00025 00026 namespace lsg { 00027 00036 class CDirectX10IndexBuffer : protected CIndexBufferBase { 00037 public : 00038 // == Various constructors. 00039 LSE_CALLCTOR CDirectX10IndexBuffer(); 00040 LSE_CALLCTOR ~CDirectX10IndexBuffer(); 00041 00042 00043 protected : 00044 // == Members. 00048 ID3D10Buffer * m_pbDirectX10IndexBuffer; 00049 00053 D3D10_PRIMITIVE_TOPOLOGY m_ptPrimitiveType; 00054 00055 00056 // == Functions. 00062 LSG_IB_INTERFACE LSVOID LSE_CALL InitApi( CAllocator * _paAllocator ); 00063 00071 LSG_IB_INTERFACE LSBOOL LSE_CALL CreateApiIndexBuffer(); 00072 00077 LSG_IB_INTERFACE LSVOID LSE_CALL ResetApi(); 00078 00085 LSG_IB_INTERFACE LSVOID LSE_CALL RenderApi( const CVertexBuffer &_vbBuffer, LSUINT32 _ui32TotalPrimitives ) const; 00086 00092 LSG_IB_INTERFACE LSVOID LSE_CALL SetApiStripType( LSG_VERTEX_BUFFER_PRIMITIVES _vbpType ); 00093 00094 }; 00095 00096 00097 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00098 // DEFINITIONS 00099 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00100 00101 00102 } // namespace lsg 00103 00104 #endif // #ifdef LSG_DX10 00105 00106 #endif // __LSG_DIRECTX10INDEXBUFFER_H__ 00107