00001 //***************************************************************************** 00011 //***************************************************************************** 00012 00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER) 00014 #pragma once 00015 #endif 00016 00017 #ifndef __XSISHADERARRAYPARAMDEF_H__ 00018 #define __XSISHADERARRAYPARAMDEF_H__ 00019 00020 #include <xsi_shaderparamdef.h> 00021 00022 namespace XSI { 00023 00024 //***************************************************************************** 00037 //***************************************************************************** 00038 00039 class SICPPSDKDECL ShaderArrayParamDef : public ShaderParamDef 00040 { 00041 public: 00043 ShaderArrayParamDef(); 00044 00046 ~ShaderArrayParamDef(); 00047 00051 ShaderArrayParamDef(const CRef& in_ref); 00052 00056 ShaderArrayParamDef(const ShaderArrayParamDef& in_obj); 00057 00062 bool IsA( siClassID in_ClassID) const; 00063 00067 siClassID GetClassID() const; 00068 00075 ShaderArrayParamDef& operator=(const ShaderArrayParamDef& in_obj); 00076 00083 ShaderArrayParamDef& operator=(const CRef& in_ref); 00084 00085 00095 ShaderParamDef GetItemDef( ) const; 00096 00103 ULONG GetItemInitialCount( ) const; 00104 00112 CStatus PutItemInitialCount( ULONG in_count ); 00113 00121 ValueMap GetItemInitialValues( ) const; 00122 00134 CString GetItemName( ) const; 00135 00146 CStatus PutItemName( const CString& in_name ); 00147 00154 bool GetStaticArray( ) const; 00155 00162 CStatus PutStaticArray( bool in_static ); 00163 00164 private: 00165 ShaderArrayParamDef * operator&() const; 00166 ShaderArrayParamDef * operator&(); 00167 }; 00168 00169 }; 00170 00171 #endif 00172