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 // *******************************************************************
00034 // *******************************************************************
00035 
00036 class SICPPSDKDECL ArrayParameter : public Parameter
00037 {
00038 public:
00040     ArrayParameter( );
00041 
00043     ~ArrayParameter( );
00044 
00048     ArrayParameter(const CRef& in_ref);
00049 
00053     ArrayParameter(const ArrayParameter& in_obj);
00054 
00060     bool IsA( siClassID in_ClassID) const;
00061 
00065     siClassID GetClassID() const;
00066 
00071     ArrayParameter& operator=(const ArrayParameter& in_obj);
00072 
00078     ArrayParameter& operator=(const CRef& in_ref);
00079 
00086     Parameter operator[]( LONG in_index );
00087 
00091     LONG GetCount( void ) const;
00092 
00097     Parameter Add( void );
00098 
00104     CStatus Remove( LONG in_lIndex );
00105 
00111     CStatus Remove( const Parameter &in_parameter );
00112 
00121     CStatus Move( LONG in_lIndex, LONG in_lUpDown );
00122 
00131     CStatus Move( const Parameter &in_parameter, LONG in_lUpDown );
00132 
00139     Parameter Add( const CValue& );
00140 
00141 private:
00142     ArrayParameter* operator&() const;
00143     ArrayParameter* operator&();
00144 
00145 };
00146 
00147 };
00148 
00149 #endif // __XSI_ARRAYPARAMETER_H__