"L. Spiro Engine"
|
00001 00016 #ifndef __LSG_OPENGLESRENDERTARGETMANAGER_H__ 00017 #define __LSG_OPENGLESRENDERTARGETMANAGER_H__ 00018 00019 #include "../LSGGraphicsLib.h" 00020 #include "../RenderTarget/LSGRenderTargetManagerBase.h" 00021 #include "Map/LSTLMap.h" 00022 00023 #ifdef LSG_OGLES 00024 00025 namespace lsg { 00026 00033 class COpenGlEsRenderTargetManager : public CRenderTargetManagerBase { 00034 public : 00035 // == Functions. 00036 00037 00038 protected : 00039 // == Various constructors. 00040 LSE_CALLCTOR COpenGlEsRenderTargetManager(); 00041 LSE_CALLCTOR ~COpenGlEsRenderTargetManager(); 00042 00043 00044 // == Types. 00049 typedef struct LSG_DIMENSIONS { 00050 #pragma pack( push, 1 ) 00051 00054 LSUINT32 ui32Width; 00055 00059 LSUINT32 ui32Height; 00060 #pragma pack( pop ) 00061 00062 00063 // == Operators. 00071 LSBOOL LSE_CALL operator < ( const LSG_DIMENSIONS &_dOther ) const; 00072 00080 LSBOOL LSE_CALL operator == ( const LSG_DIMENSIONS &_dOther ) const; 00081 } * LPLSG_DIMENSIONS, * const LPCLSG_DIMENSIONS; 00082 00083 00084 // == Members. 00088 GLuint m_uiFrameId; 00089 00093 CRenderTargetInterface * m_prtiLastRenderTarget[LSG_MRT_MAX]; 00094 00098 CRenderTargetInterface * m_prtiLastDepthRenderTarget; 00099 00104 CMap<LSG_DIMENSIONS, CColorRenderTarget *> 00105 m_mColorSurfaces; 00106 00107 00108 // == Functions. 00115 LSUINT32 LSE_CALL Finalize(); 00116 00120 LSVOID LSE_CALL EndRender(); 00121 }; 00122 00123 00124 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00125 // DEFINITIONS 00126 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00127 00128 00129 } // namespace lsg 00130 00131 #endif // #ifdef LSG_OGLES 00132 00133 #endif // __LSG_OPENGLESRENDERTARGETMANAGER_H__