CrossFramework Library
|
00001 /* 00002 * @file 00003 * @brief ResMat型を記述する。 00004 * @author akino 00005 */ 00006 #if defined(XG3D_INCLUDED_RESMAT_HPP) 00007 #else 00008 #define XG3D_INCLUDED_RESMAT_HPP 00009 00010 //------------------------------------------------------------ 00011 #include <XBase/Pointer.hpp> 00012 #include <XG3D/BuiltInTypes.hpp> 00013 #include <XG3D/ResMatParam.hpp> 00014 00015 //------------------------------------------------------------ 00016 namespace XG3D { 00017 class ResMatImpl; 00018 } 00019 00020 //------------------------------------------------------------ 00021 namespace XG3D { 00023 00024 00029 class ResMat 00030 { 00031 public: 00033 00034 00035 ResMat(); 00036 00038 ResMat( const ResMatImpl& aImpl ); 00040 00042 00043 bool isValid()const; 00044 bool equals( const ResMat& aRHS )const; 00045 bool operator==( const ResMat& aRHS )const; 00046 00047 00049 00050 uint index()const; 00051 const char* name()const; 00052 uint paramCount()const; 00053 ResMatParam param( uint aIndex )const; 00054 ResMatParam param( const char* aName )const; 00055 00056 00057 //============================================================ 00058 // 内部実装用関数群。 00059 const ResMatImpl* impl_()const; 00060 private: 00061 ::XBase::Pointer< const ResMatImpl > mPtr; 00062 //------------------------------------------------------------ 00063 bool checkInvalid()const; 00064 }; 00066 } 00067 //------------------------------------------------------------ 00068 #endif 00069 // EOF