xsi_uv.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_UV_H__
00018 #define __XSI_UV_H__
00019 
00020 #include "sicppsdk.h"
00021 #include "xsi_status.h"
00022 
00023 namespace XSI {
00024 
00025 //*************************************************************************
00033 //*************************************************************************
00034 struct CUV
00035 {
00036     double u; 
00037     double v; 
00040     CUV() : u(0),v(0) {}
00041 
00045     CUV(const CUV& in_uv) : u(in_uv.u),v(in_uv.v) {}
00046 
00051     CUV(double in_u, double in_v) : u(in_u),v(in_v) {}
00052 
00057     bool operator==(const CUV& in_uv)const
00058     {
00059         return (u == in_uv.u) && ( v == in_uv.v);
00060     }
00061 
00066     bool operator!=(const CUV& in_uv)const
00067     {
00068         return ! operator==(in_uv);
00069     }
00070 };
00071 
00072 //*************************************************************************
00082 //*************************************************************************
00083 class SICPPSDKDECL CUVArray
00084 {
00085 public:
00089     CUVArray( LONG in_size=0);
00090 
00094     CUVArray(const CUVArray& in_array );
00095 
00097     ~CUVArray();
00098 
00103     CUVArray& operator=( const CUVArray& in_array );
00104 
00108     LONG GetCount() const;
00109 
00114     CStatus Add( const CUV& in_item );
00115 
00119     CStatus Clear();
00120 
00127     CStatus Resize( LONG in_size);
00128 
00135     const CUV& operator[]( LONG  in_index ) const;
00136 
00142     CUV& operator[]( LONG in_index );
00143 
00149     bool operator==(const CUVArray& in_array) const;
00150 
00156     bool operator!=(const CUVArray& in_array) const;
00157 
00158 private:
00159 
00160     void* m_ptr;
00161 };
00162 
00163 
00164 };
00165 
00166 #endif //__XSI_UV_H__