"L. Spiro Engine"
|
00001 00017 #ifndef __LSG_OPENGLESINDEXBUFFER_H__ 00018 #define __LSG_OPENGLESINDEXBUFFER_H__ 00019 00020 #include "../LSGGraphicsLib.h" 00021 00022 #ifdef LSG_OGLES 00023 00024 #include "../IndexBuffer/LSGIndexBufferBase.h" 00025 00026 namespace lsg { 00027 00036 class COpenGlEsIndexBuffer : public CIndexBufferBase { 00037 public : 00038 // == Various constructors. 00039 LSE_CALLCTOR COpenGlEsIndexBuffer(); 00040 LSE_CALLCTOR ~COpenGlEsIndexBuffer(); 00041 00042 00043 protected : 00044 // == Members. 00048 GLuint m_uiVboId; 00049 00053 LSUINT32 m_ui32PrimitiveTypeApi; 00054 00059 static CCriticalSection m_csCrit; 00060 00061 00062 // == Functions. 00068 LSG_IB_INTERFACE LSVOID LSE_CALL InitApi( CAllocator * _paAllocator ); 00069 00077 LSG_IB_INTERFACE LSBOOL LSE_CALL CreateApiIndexBuffer(); 00078 00083 LSG_IB_INTERFACE LSVOID LSE_CALL ResetApi(); 00084 00091 LSG_IB_INTERFACE LSVOID LSE_CALL RenderApi( const CVertexBuffer &_vbBuffer, LSUINT32 _ui32TotalPrimitives ) const; 00092 00098 LSG_IB_INTERFACE LSVOID LSE_CALL SetApiStripType( LSG_VERTEX_BUFFER_PRIMITIVES _vbpType ); 00099 }; 00100 00101 } // namespace lsg 00102 00103 #endif // #ifdef LSG_OGLES 00104 00105 #endif // __LSG_OPENGLESINDEXBUFFER_H__