00001 //***************************************************************************** 00011 //***************************************************************************** 00012 00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER) 00014 #pragma once 00015 #endif 00016 00017 #ifndef __XSISHADERPARAMDEFOPTIONS_H__ 00018 #define __XSISHADERPARAMDEFOPTIONS_H__ 00019 00020 #include <xsi_siobject.h> 00021 00022 namespace XSI { 00023 00024 //***************************************************************************** 00040 //***************************************************************************** 00041 00042 class SICPPSDKDECL ShaderParamDefOptions : public SIObject 00043 { 00044 public: 00046 ShaderParamDefOptions(); 00047 00049 ~ShaderParamDefOptions(); 00050 00054 ShaderParamDefOptions(const CRef& in_ref); 00055 00059 ShaderParamDefOptions(const ShaderParamDefOptions& in_obj); 00060 00065 bool IsA( siClassID in_ClassID) const; 00066 00070 siClassID GetClassID() const; 00071 00078 ShaderParamDefOptions& operator=(const ShaderParamDefOptions& in_obj); 00079 00086 ShaderParamDefOptions& operator=(const CRef& in_ref); 00087 00088 00097 CStatus SetAnimatable( bool in_v ); 00098 00107 CStatus SetDefaultValue( const CValue& in_v ); 00108 00117 CStatus SetHardLimit( const CValue& in_vMin, const CValue& in_vMax ); 00118 00127 CStatus SetInspectable( bool in_v ); 00128 00142 CStatus SetLongName( const CString& in_str ); 00143 00155 CStatus SetShortName( const CString& in_str ); 00156 00165 CStatus SetSoftLimit( const CValue& in_vMin, const CValue& in_vMax ); 00166 00175 CStatus SetTexturable( bool in_v ); 00176 00188 CStatus SetAttribute( const CString &in_name, const CValue &in_value ); 00189 00190 private: 00191 ShaderParamDefOptions * operator&() const; 00192 ShaderParamDefOptions * operator&(); 00193 }; 00194 00195 }; 00196 00197 #endif 00198