00001
00024 #ifndef CCOLORABLE_H_
00025 #define CCOLORABLE_H_
00026
00027 #include "main.h"
00028 #include "structures.h"
00029
00030 class CColorable {
00031 public:
00032
00033 CColorable();
00034 virtual ~CColorable();
00035
00040 void setColor(Color4f color) {
00041 m_color = color;
00042 }
00043
00051 void setColor(float red, float green, float blue, float alpha);
00052
00058 void setRed(float red) {
00059 m_color.r = red / 255.0f;
00060 }
00061
00066 void setGreen(float green) {
00067 m_color.g = green / 255.0f;
00068 }
00069
00074 void setBlue(float blue) {
00075 m_color.b = blue / 255.0f;
00076 }
00077
00082 void setAlpha(float alpha) {
00083 m_color.alpha = alpha / 255.0;
00084 }
00085
00090 Color4f getColor(void) const {
00091 return m_color;
00092 }
00093
00098 float getRed(void) const {
00099 return m_color.r;
00100 }
00101
00106 float getGreen(void) const {
00107 return m_color.g;
00108 }
00109
00114 float getBlue(void) const {
00115 return m_color.b;
00116 }
00117
00122 float getAlpha(void) const {
00123 return m_color.alpha;
00124 }
00125
00126 protected:
00127 Color4f m_color;
00128
00129 };
00130
00131 #endif