xsi_floatarray.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 __XSIFLOATARRAY_H__
00018 #define __XSIFLOATARRAY_H__
00019 
00020 #include "sicppsdk.h"
00021 
00022 namespace XSI {
00023 
00024 class CStatus;
00025 
00026 //*************************************************************************
00038 //*************************************************************************
00039 class SICPPSDKDECL CFloatArray
00040 {
00041 public:
00045     CFloatArray( LONG in_size=0);
00046 
00050     CFloatArray(const CFloatArray& in_array);
00051 
00053     ~CFloatArray();
00054 
00059     CFloatArray& operator=( const CFloatArray& in_array );
00060 
00067     CFloatArray& operator+=( const CFloatArray& in_array );
00068 
00075     CFloatArray& operator-=( const CFloatArray& in_array );
00076 
00080     LONG GetCount() const;
00081 
00097     CStatus Attach( float* in_pArray, LONG in_nSize );
00098 
00106     CStatus Add( const float& in_item );
00107 
00111     CStatus Clear();
00112 
00126     CStatus Resize( LONG in_size);
00127 
00141     CStatus Resize( LONG in_size, bool in_bReset );
00142 
00149     const float& operator[]( LONG in_index ) const;
00150 
00156     float& operator[]( LONG in_index );
00157 
00163     bool operator==(const CFloatArray& in_array) const;
00164 
00170     bool operator!=(const CFloatArray& in_array) const;
00171 
00176     CString GetAsText() const;
00177 
00183     const float* GetArray() const;
00184 
00191     CStatus Append( const CFloatArray& in_array );
00192 
00193 private:
00194 
00195     void* m_ptr;
00196 };
00197 
00198 };
00199 
00200 #endif // __XSIFLOATARRAY_H__