00001 // 00002 // sgColor.h 00003 // iSDGE 00004 // 00005 // Created by Nils Daumann on 18.04.10. 00006 // Copyright (c) 2010 Nils Daumann 00007 00008 // Permission is hereby granted, free of charge, to any person obtaining a copy 00009 // of this software and associated documentation files (the "Software"), to deal 00010 // in the Software without restriction, including without limitation the rights 00011 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 00012 // copies of the Software, and to permit persons to whom the Software is 00013 // furnished to do so, subject to the following conditions: 00014 00015 // The above copyright notice and this permission notice shall be included in 00016 // all copies or substantial portions of the Software. 00017 00018 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00019 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00020 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 00021 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 00022 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 00023 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 00024 // THE SOFTWARE. 00025 00029 class sgColor 00030 { 00031 public: 00039 sgColor(unsigned char r_ = 0, unsigned char g_ = 0, unsigned char b_ = 0); 00040 00045 bool operator== (const sgColor &other); 00046 00051 unsigned char r; 00052 00057 unsigned char g; 00058 00063 unsigned char b; 00064 }; 00065 00069 class sgColorA : public sgColor 00070 { 00071 public: 00080 sgColorA(unsigned char r_ = 0, unsigned char g_ = 0, unsigned char b_ = 0, unsigned char a_ = 255); 00081 00086 bool operator== (const sgColorA &other); 00087 00092 unsigned char a; 00093 }; 00094 00098 class sgFColor 00099 { 00100 public: 00108 sgFColor(float r_ = 0.0f, float g_ = 0.0f, float b_ = 0.0f); 00109 00114 bool operator== (const sgFColor &other); 00115 00120 float r; 00121 00126 float g; 00127 00132 float b; 00133 }; 00134 00138 class sgFColorA : public sgFColor 00139 { 00140 public: 00149 sgFColorA(float r_ = 0.0f, float g_ = 0.0f, float b_ = 0.0f, float a_ = 1.0f); 00150 00155 bool operator== (const sgFColorA &other); 00156 00161 float a; 00162 };