CrossFramework Library

XG3D/RuntimeTex.hpp

説明を見る。
00001 
00006 #if defined(XG3D_INCLUDED_RUNTIMETEX_HPP)
00007 #else
00008 #define XG3D_INCLUDED_RUNTIMETEX_HPP
00009 
00010 //------------------------------------------------------------
00011 #include <XBase/AutoMemBlock.hpp>
00012 #include <XBase/FunctionAttribute.hpp>
00013 #include <XBase/Color4.hpp>
00014 #include <XBase/Color4b.hpp>
00015 #include <XBase/IAllocator.hpp>
00016 #include <XBase/NonCopyable.hpp>
00017 #include <XG3D/BuiltInTypes.hpp>
00018 #include <XG3D/ITexRes.hpp>
00019 #include <XG3D/RuntimeTexContext.hpp>
00020 
00021 //------------------------------------------------------------
00022 namespace XG3D {
00024 
00025 
00037     class RuntimeTex 
00038         : public ::XBase::NonCopyable
00039         , public ITexRes
00040     {
00041     public:
00043 
00044         static pword_t CalcDataSize( const RuntimeTexContext& ); 
00045         static pword_t RequireAlignment(); 
00046 
00047 
00049 
00050 
00055         RuntimeTex( 
00056             const RuntimeTexContext& aContext
00057             , ::XBase::IAllocator& aAllocator = ::XBase::IAllocator::Default()
00058             );
00059 
00061         ~RuntimeTex();
00063 
00065 
00066         const RuntimeTexContext context()const; 
00067         const ::XBase::MemBlock data()const;    
00068 
00069 
00071 
00072         void beginEdit(); 
00073         void endEdit();   
00074         void setPixel( uint aX , uint aY , const ::XBase::Color4POD& );  
00075         void setPixel( uint aX , uint aY , const ::XBase::Color4bPOD& ); 
00076 
00077 
00079 
00080         XBASE_OVERRIDE( const TexResData texResData()const );
00082 
00083     private:
00084         const RuntimeTexContext mContext;
00085         ::XBase::AutoMemBlock mData;
00086     };
00088 }
00089 //------------------------------------------------------------
00090 #endif
00091 // EOF
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義