Color.hpp
1 //
3 // SFML - Simple and Fast Multimedia Library
4 // Copyright (C) 2007-2009 Laurent Gomila (laurent.gom@gmail.com)
5 //
6 // This software is provided 'as-is', without any express or implied warranty.
7 // In no event will the authors be held liable for any damages arising from the use of this software.
8 //
9 // Permission is granted to anyone to use this software for any purpose,
10 // including commercial applications, and to alter it and redistribute it freely,
11 // subject to the following restrictions:
12 //
13 // 1. The origin of this software must not be misrepresented;
14 // you must not claim that you wrote the original software.
15 // If you use this software in a product, an acknowledgment
16 // in the product documentation would be appreciated but is not required.
17 //
18 // 2. Altered source versions must be plainly marked as such,
19 // and must not be misrepresented as being the original software.
20 //
21 // 3. This notice may not be removed or altered from any source distribution.
22 //
24 
25 #ifndef SFML_COLOR_HPP
26 #define SFML_COLOR_HPP
27 
29 // Headers
31 #include <SFML/Config.hpp>
32 
33 
34 namespace sf
35 {
40 class SFML_API Color
41 {
42 public :
43 
48  Color();
49 
59  Color(Uint8 R, Uint8 G, Uint8 B, Uint8 A = 255);
60 
69  Color& operator +=(const Color& Other);
70 
79  Color& operator *=(const Color& Other);
80 
89  bool operator ==(const Color& Other) const;
90 
99  bool operator !=(const Color& Other) const;
100 
102  // Static member data
104  static const Color Black;
105  static const Color White;
106  static const Color Red;
107  static const Color Green;
108  static const Color Blue;
109  static const Color Yellow;
110  static const Color Magenta;
111  static const Color Cyan;
112 
114  // Member data
116  Uint8 r;
117  Uint8 g;
118  Uint8 b;
119  Uint8 a;
120 };
121 
131 SFML_API Color operator +(const Color& Color1, const Color& Color2);
132 
142 SFML_API Color operator *(const Color& Color1, const Color& Color2);
143 
144 } // namespace sf
145 
146 
147 #endif // SFML_COLOR_HPP
Uint8 a
Alpha (transparency) component.
Definition: Color.hpp:119
static const Color Green
Green predefined color.
Definition: Color.hpp:107
static const Color Yellow
Yellow predefined color.
Definition: Color.hpp:109
Uint8 b
Blue component.
Definition: Color.hpp:118
static const Color Black
Black predefined color.
Definition: Color.hpp:104
Uint8 g
Green component.
Definition: Color.hpp:117
static const Color Magenta
Magenta predefined color.
Definition: Color.hpp:110
static const Color White
White predefined color.
Definition: Color.hpp:105
Color is an utility class for manipulating 32-bits RGBA colors.
Definition: Color.hpp:40
Uint8 r
Red component.
Definition: Color.hpp:116
static const Color Red
Red predefined color.
Definition: Color.hpp:106
static const Color Cyan
Cyan predefined color.
Definition: Color.hpp:111
static const Color Blue
Blue predefined color.
Definition: Color.hpp:108