xsi_arrayparameter.h

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 __XSI_ARRAYPARAMETER_H__
00018 #define __XSI_ARRAYPARAMETER_H__
00019 
00020 #include <xsi_status.h>
00021 #include <xsi_parameter.h>
00022 
00023 namespace XSI {
00024 
00025 // *******************************************************************
00038 // *******************************************************************
00039 
00040 class SICPPSDKDECL ArrayParameter : public Parameter
00041 {
00042 public:
00044     ArrayParameter( );
00045 
00047     ~ArrayParameter( );
00048 
00052     ArrayParameter(const CRef& in_ref);
00053 
00057     ArrayParameter(const ArrayParameter& in_obj);
00058 
00064     bool IsA( siClassID in_ClassID) const;
00065 
00069     siClassID GetClassID() const;
00070 
00075     ArrayParameter& operator=(const ArrayParameter& in_obj);
00076 
00082     ArrayParameter& operator=(const CRef& in_ref);
00083 
00090     Parameter operator[]( LONG in_index );
00091 
00095     LONG GetCount( void ) const;
00096 
00101     Parameter Add( void );
00102 
00108     CStatus Remove( LONG in_lIndex );
00109 
00115     CStatus Remove( const Parameter &in_parameter );
00116 
00125     CStatus Move( LONG in_lIndex, LONG in_lUpDown );
00126 
00135     CStatus Move( const Parameter &in_parameter, LONG in_lUpDown );
00136 
00143     Parameter Add( const CValue& );
00144 
00145 private:
00146     ArrayParameter* operator&() const;
00147     ArrayParameter* operator&();
00148 
00149 };
00150 
00151 };
00152 
00153 #endif // __XSI_ARRAYPARAMETER_H__