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_VERTEXCOLOR_H__
00018 #define __XSI_VERTEXCOLOR_H__
00019
00020 #include "sicppsdk.h"
00021 #include "xsi_status.h"
00022
00023 namespace XSI {
00024
00025
00033
00034 struct CVertexColor
00035 {
00036 unsigned char r;
00037 unsigned char g;
00038 unsigned char b;
00039 unsigned char a;
00042 CVertexColor() : r(0),g(0),b(0),a(0) {}
00043
00047 CVertexColor(const CVertexColor& in_color) : r(in_color.r),
00048 g(in_color.g), b(in_color.b),a(in_color.a) {}
00049
00056 CVertexColor(unsigned char in_rc, unsigned char in_gc,
00057 unsigned char in_bc, unsigned char in_ac) : r(in_rc),g(in_gc),
00058 b(in_bc),a(in_ac) {}
00059
00064 bool operator==(const CVertexColor& in_vertexcolor)const
00065 {
00066 return (r == in_vertexcolor.r) && (g == in_vertexcolor.g) &&
00067 (b == in_vertexcolor.b) && (a == in_vertexcolor.a);
00068 }
00069
00074 bool operator!=(const CVertexColor& in_vertexcolor)const
00075 {
00076 return ! operator==(in_vertexcolor);
00077 }
00078 };
00079
00080
00081
00091
00092 class SICPPSDKDECL CVertexColorArray
00093 {
00094 public:
00098 CVertexColorArray( LONG in_size=0);
00099
00103 CVertexColorArray(const CVertexColorArray& in_array );
00104
00106 ~CVertexColorArray();
00107
00112 CVertexColorArray& operator=( const CVertexColorArray& in_array );
00113
00117 LONG GetCount() const;
00118
00123 CStatus Add( const CVertexColor& in_item );
00124
00128 CStatus Clear();
00129
00135 CStatus Resize( LONG in_size);
00136
00143 const CVertexColor& operator[]( LONG in_index ) const;
00144
00150 CVertexColor& operator[](LONG in_index );
00151
00157 bool operator==(const CVertexColorArray& in_array) const;
00158
00164 bool operator!=(const CVertexColorArray& in_array) const;
00165
00166 private:
00167 void* m_ptr;
00168 };
00169
00170
00171 };
00172
00173 #endif //__XSI_COLOR_H__