00001 #pragma once 00002 00003 #include "vec3.h" 00004 00006 00016 class TFContainer : public vec3 00017 { 00018 public: 00022 TFContainer() : vec3() 00023 { 00024 m_vColor[0] = 0.0f; 00025 m_vColor[1] = 0.0f; 00026 m_vColor[2] = 0.0f; 00027 }; 00028 00037 TFContainer(const float fX, const float fY, const float fR, const float fG, const float fB) 00038 { 00039 v[0] = fX; 00040 v[1] = fY; 00041 m_vColor[0] = fR; 00042 m_vColor[1] = fG; 00043 m_vColor[2]= fB; 00044 }; 00045 00051 TFContainer::TFContainer(const float vfValues[], const float cfValues[]) : vec3(vfValues) 00052 { 00053 m_vColor[0] = cfValues[0]; 00054 m_vColor[1] = cfValues[1]; 00055 m_vColor[2] = cfValues[2]; 00056 }; 00057 00061 ~TFContainer() 00062 { 00063 }; 00064 00069 const float GetR() const 00070 { 00071 return m_vColor[0]; 00072 }; 00073 00078 const float GetG() const 00079 { 00080 return m_vColor[1]; 00081 }; 00082 00087 const float GetB() const 00088 { 00089 return m_vColor[2]; 00090 }; 00091 00096 void SetR(const float fR) 00097 { 00098 m_vColor[0] = fR; 00099 }; 00100 00105 void SetG(const float fG) 00106 { 00107 m_vColor[1] = fG; 00108 }; 00109 00114 void SetB(const float fB) 00115 { 00116 m_vColor[2] = fB; 00117 }; 00118 00123 const bool operator<(vec3 i) const 00124 { 00125 return v[0] < i.v[0]; 00126 }; 00127 00128 private: 00129 float m_vColor[3]; 00130 };