SFML - Simple and Fast Multimedia Library

SFML

Color.hpp
1 //
3 // SFML - Simple and Fast Multimedia Library
4 // Copyright (C) 2007-2017 Laurent Gomila ([email protected])
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/Graphics/Export.hpp>
32 
33 
34 namespace sf
35 {
40 class SFML_GRAPHICS_API Color
41 {
42 public:
43 
51  Color();
52 
62  Color(Uint8 red, Uint8 green, Uint8 blue, Uint8 alpha = 255);
63 
70  explicit Color(Uint32 color);
71 
78  Uint32 toInteger() const;
79 
81  // Static member data
83  static const Color Black;
84  static const Color White;
85  static const Color Red;
86  static const Color Green;
87  static const Color Blue;
88  static const Color Yellow;
89  static const Color Magenta;
90  static const Color Cyan;
91  static const Color Transparent;
92 
94  // Member data
96  Uint8 r;
97  Uint8 g;
98  Uint8 b;
99  Uint8 a;
100 };
101 
114 SFML_GRAPHICS_API bool operator ==(const Color& left, const Color& right);
115 
128 SFML_GRAPHICS_API bool operator !=(const Color& left, const Color& right);
129 
143 SFML_GRAPHICS_API Color operator +(const Color& left, const Color& right);
144 
158 SFML_GRAPHICS_API Color operator -(const Color& left, const Color& right);
159 
175 SFML_GRAPHICS_API Color operator *(const Color& left, const Color& right);
176 
191 SFML_GRAPHICS_API Color& operator +=(Color& left, const Color& right);
192 
207 SFML_GRAPHICS_API Color& operator -=(Color& left, const Color& right);
208 
225 SFML_GRAPHICS_API Color& operator *=(Color& left, const Color& right);
226 
227 } // namespace sf
228 
229 
230 #endif // SFML_COLOR_HPP
231 
232 
static const Color Red
Red predefined color.
Definition: Color.hpp:85
static const Color Green
Green predefined color.
Definition: Color.hpp:86
Uint8 b
Blue component.
Definition: Color.hpp:98
Utility class for manipulating RGBA colors.
Definition: Color.hpp:40
static const Color Magenta
Magenta predefined color.
Definition: Color.hpp:89
Uint8 g
Green component.
Definition: Color.hpp:97
static const Color Cyan
Cyan predefined color.
Definition: Color.hpp:90
static const Color White
White predefined color.
Definition: Color.hpp:84
static const Color Blue
Blue predefined color.
Definition: Color.hpp:87
static const Color Yellow
Yellow predefined color.
Definition: Color.hpp:88
static const Color Black
Black predefined color.
Definition: Color.hpp:83
Uint8 a
Alpha (opacity) component.
Definition: Color.hpp:99
static const Color Transparent
Transparent (black) predefined color.
Definition: Color.hpp:91
Uint8 r
Red component.
Definition: Color.hpp:96