Go to the documentation of this file.00001
00011
00012
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016
00017 #ifndef __XSISHADERPARAMDEF_H__
00018 #define __XSISHADERPARAMDEF_H__
00019
00020 #include <xsi_valuemap.h>
00021 #include <xsi_siobject.h>
00022
00023 namespace XSI {
00024
00025
00052
00053
00054 class SICPPSDKDECL ShaderParamDef : public SIObject
00055 {
00056 public:
00058 ShaderParamDef();
00059
00061 ~ShaderParamDef();
00062
00066 ShaderParamDef(const CRef& in_ref);
00067
00071 ShaderParamDef(const ShaderParamDef& in_obj);
00072
00077 bool IsA( siClassID in_ClassID) const;
00078
00082 siClassID GetClassID() const;
00083
00089 ShaderParamDef& operator=(const ShaderParamDef& in_obj);
00090
00096 ShaderParamDef& operator=(const CRef& in_ref);
00097
00098
00104 ValueMap GetAttributes( ) const;
00105
00119 LONG GetCapabilities( ) const;
00120
00125 CValue GetDefaultValue( ) const;
00126
00132 CStatus SetDefaultValue( const CValue& in_value );
00133
00142 CString GetDisplayName( ) const;
00143
00151 bool HasDefaultValue( ) const;
00152
00162 bool IsArray( ) const;
00163
00164
00165 bool IsArrayItem( ) const;
00166
00173 bool IsInput( ) const;
00174
00181 bool IsOutput( ) const;
00182
00192 bool IsStructure( ) const;
00193
00199 bool GetMainPort( ) const;
00200
00205 CStatus PutMainPort( bool in_main );
00206
00213 CValue GetMaxValue( ) const;
00214
00222 CStatus SetMaxValue( const CValue& in_value );
00223
00230 CValue GetMinValue( ) const;
00231
00239 CStatus SetMinValue( const CValue& in_value );
00240
00246 siShaderParameterDataType GetDataType( ) const;
00247
00254 CValue GetSuggestedMaxValue( ) const;
00255
00263 CStatus SetSuggestedMaxValue( const CValue& in_value );
00264
00271 CValue GetSuggestedMinValue( ) const;
00272
00280 CStatus SetSuggestedMinValue( const CValue& in_value );
00281
00290 bool GetTexturable( ) const;
00291
00300 CStatus SetTexturable( bool in_value );
00301
00307 CStatus SetDisplayName( const CString &in_str );
00308
00309 private:
00310 ShaderParamDef * operator&() const;
00311 ShaderParamDef * operator&();
00312 };
00313
00314 };
00315
00316 #endif
00317