CrossFramework Library
|
00001 00006 #if defined(XG3D_INCLUDED_TEXBUFFER_HPP) 00007 #else 00008 #define XG3D_INCLUDED_TEXBUFFER_HPP 00009 00010 //------------------------------------------------------------ 00011 #include <XBase/IAllocator.hpp> 00012 #include <XBase/NonCopyable.hpp> 00013 #include <XG3D/BuiltInTypes.hpp> 00014 #include <XG3D/Engine.hpp> 00015 #include <XG3D/ResTex.hpp> 00016 00017 #if defined(XG3D_ENGINE_GLSERIES) 00018 #include <XG3D/TexBuffer_GL.hpp> 00019 #endif 00020 00021 //------------------------------------------------------------ 00022 namespace XG3D { 00023 class TexSetting; 00024 } 00025 00026 //------------------------------------------------------------ 00027 namespace XG3D { 00029 00030 00036 class TexBuffer : public ::XBase::NonCopyable 00037 { 00038 public: 00040 00041 00046 TexBuffer( 00047 const ResTex& aResTex 00048 , ::XBase::IAllocator& aAllocator = ::XBase::IAllocator::Default() 00049 ); 00050 00052 ~TexBuffer(); 00054 00056 00057 void bind( TexSetting& aSetting ); 00058 00059 00060 private: 00061 TexBuffer_EXT mEXT; 00062 ResTex mResTex; 00063 ::XBase::IAllocator& mAllocator; 00064 }; 00066 } 00067 //------------------------------------------------------------ 00068 #endif 00069 // EOF