"L. Spiro Engine"

F:/My Projects/LSEngine/Modules/LSGraphicsLib/Src/RenderTarget/LSGRenderTargetBase.h

00001 
00021 #ifndef __LSG_RENDERTARGETBASE_H__
00022 #define __LSG_RENDERTARGETBASE_H__
00023 
00024 #include "../LSGGraphicsLib.h"
00025 #include "LSGRenderTargetInterface.h"
00026 
00027 namespace lsg {
00028 
00029         // == Functions.
00034         enum LSG_RENDER_TARGET_FORMAT {
00035                 LSG_RTF_RGB16,                                                  
00036                 LSG_RTF_RGBA16,                                                 
00037                 LSG_RTF_RGB32,                                                  
00038                 LSG_RTF_RGBA32,                                                 
00039                 LSG_RTF_RGB10_A2,                                               
00040                 LSG_RTF_R_F16,                                                  
00041                 LSG_RTF_R_F32,                                                  
00042                 LSG_RTF_RG_F32,                                                 
00043                 LSG_RTF_RG_F64,                                                 
00044                 LSG_RTF_RGBA_F64,                                               
00045                 LSG_RTF_RGBA_F128,                                              
00047                 LSG_RTF_DEPTH16,                                                
00048                 LSG_RTF_DEPTH24,                                                
00049                 LSG_RTF_DEPTH32,                                                
00050                 LSG_RTF_DEPTH15_STENCIL1,                               
00051                 LSG_RTF_DEPTH24_STENCIL4,                               
00052                 LSG_RTF_DEPTH24_STENCIL8,                               
00054                 LSG_RTF_TOTAL                                                   
00055         };
00056 
00057 
00070         class CRenderTargetBase : public CRenderTargetInterface {
00071         protected :
00072                 // == Various constructors.
00073                 LSE_CALLCTOR                                                    CRenderTargetBase();
00074 
00075 
00076         public :
00077                 // == Functions.
00083                 LSE_INLINE LSG_RENDER_TARGET_FORMAT LSE_CALL
00084                                                                                                 GetFormat() const;
00085 
00092                 static LSBOOL LSE_CALL                                  ComponentHasStencil( LSG_RENDER_TARGET_FORMAT _rtfFormat );
00093 
00094 
00095         protected :
00096                 // == Members.
00100                 LSG_RENDER_TARGET_FORMAT                                m_rtfFormat;
00101         };
00102 
00103 
00104         // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00105         // DEFINITIONS
00106         // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
00107         // == Functions.
00113         LSE_INLINE LSG_RENDER_TARGET_FORMAT LSE_CALL CRenderTargetBase::GetFormat() const { return m_rtfFormat; }
00114 
00115 }       // namespace lsg
00116 
00117 #endif  // __LSG_RENDERTARGETBASE_H__
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator