xsi_shaderarrayparameter.h Source File
 
 
 
xsi_shaderarrayparameter.h
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSI_ARRAYPARAMETER_H__
00018 #define __XSI_ARRAYPARAMETER_H__
00019 
00020 #include <xsi_status.h>
00021 #include <xsi_shaderparameter.h>
00022 
00023 namespace XSI {
00024 
00025 // *******************************************************************
00041 // *******************************************************************
00042 
00043 class SICPPSDKDECL ShaderArrayParameter : public ShaderParameter
00044 {
00045 public:
00047         ShaderArrayParameter( );
00048 
00050         ~ShaderArrayParameter( );
00051 
00055         ShaderArrayParameter(const CRef& in_ref);
00056 
00060         ShaderArrayParameter(const ShaderArrayParameter& in_obj);
00061 
00068         bool IsA( siClassID in_ClassID) const;
00069 
00073         siClassID GetClassID() const;
00074 
00079         ShaderArrayParameter& operator=(const ShaderArrayParameter& in_obj);
00080 
00086         ShaderArrayParameter& operator=(const CRef& in_ref);
00087 
00094         ShaderParameter operator[]( LONG in_index );
00095 
00100         LONG GetCount( ) const;
00101 
00110         ShaderParameter Add( );
00111 
00120         CStatus Remove( LONG in_lIndex );
00121 
00130         CStatus Remove( const ShaderParameter &in_parameter );
00131 
00137         CStatus Clear( );
00138 
00148         CStatus Move( LONG in_lIndex, LONG in_lUpDown );
00149 
00159         CStatus Move( const ShaderParameter &in_parameter, LONG in_lUpDown );
00160 
00161 private:
00162         ShaderArrayParameter* operator&() const;
00163         ShaderArrayParameter* operator&();
00164 
00165 };
00166 
00167 };
00168 
00169 #endif // __XSI_ARRAYPARAMETER_H__