claw 1.9.0
 
Loading...
Searching...
No Matches
pixel.hpp
Go to the documentation of this file.
1/*
2 CLAW - a C++ Library Absolutely Wonderful
3
4 CLAW is a free library without any particular aim but being useful to
5 anyone.
6
7 Copyright (C) 2005-2011 Julien Jorge
8
9 This library is free software; you can redistribute it and/or
10 modify it under the terms of the GNU Lesser General Public
11 License as published by the Free Software Foundation; either
12 version 2.1 of the License, or (at your option) any later version.
13
14 This library is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 Lesser General Public License for more details.
18
19 You should have received a copy of the GNU Lesser General Public
20 License along with this library; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
22
23 contact: julien.jorge@stuff-o-matic.com
24*/
30#ifndef __CLAW_PIXEL_HPP_
31#define __CLAW_PIXEL_HPP_
32
33#include <string>
34
35namespace claw
36{
37 namespace graphic
38 {
39 struct rgba_pixel;
40
44 struct rgb_pixel
45 {
47 typedef unsigned char component_type;
48
50 struct
51 {
54
57
60
62
63 public:
64 rgb_pixel();
66 rgb_pixel(const rgba_pixel& p);
67 explicit rgb_pixel(const std::string& c);
68
69 bool operator==(const rgb_pixel& that) const;
70 bool operator==(const rgba_pixel& that) const;
71 bool operator!=(const rgb_pixel& that) const;
72 bool operator!=(const rgba_pixel& that) const;
73
74 }; // struct rgb_pixel
75
80 {
82 typedef unsigned char component_type;
83
84 union
85 {
87 unsigned int pixel;
88
90 struct
91 {
94
97
100
103
105 };
106
107 public:
108 rgba_pixel();
109 rgba_pixel(const rgb_pixel& that);
112 explicit rgba_pixel(const std::string& c);
113
114 rgba_pixel& operator=(const rgb_pixel& that);
115 bool operator==(const rgba_pixel& that) const;
116 bool operator!=(const rgba_pixel& that) const;
117
119
120 }; // struct rgba_pixel
121
124
127
131
134
136 extern rgba_pixel black_pixel;
137
139 extern rgba_pixel white_pixel;
140
142 extern rgba_pixel blue_pixel;
143
145 extern rgba_pixel green_pixel;
146
148 extern rgba_pixel red_pixel;
149
152
155
157 extern rgba_pixel cyan_pixel;
158
160
161 }
162}
163
164#endif // __CLAW_PIXEL_HPP__
rgba_pixel cyan_pixel
The cyan color.
rgba_pixel green_pixel
The green color.
rgba_pixel transparent_pixel
A transparent color.
rgba_pixel red_pixel
The red color.
rgba_pixel white_pixel
The white color.
rgba_pixel black_pixel
The black color.
rgba_pixel yellow_pixel
The yellow color.
rgba_pixel magenta_pixel
The magenta color.
rgba_pixel blue_pixel
The blue color.
Everything about image structures and processing.
Definition claw.hpp:58
rgba_pixel rgba_pixel_8
A color with 8 bits per component and an alpha channel.
Definition pixel.hpp:126
rgb_pixel rgb_pixel_8
A color with 8 bits per component.
Definition pixel.hpp:123
This is the main namespace.
struct claw::graphic::rgb_pixel::@217001364276256254254300335037210026331301104326 components
Component by component representation.
component_type red
Red component.
Definition pixel.hpp:53
component_type blue
Blue component.
Definition pixel.hpp:59
bool operator==(const rgb_pixel &that) const
Compare to a pixel.
Definition pixel.cpp:142
unsigned char component_type
The type of the components of the color.
Definition pixel.hpp:47
component_type green
Green component.
Definition pixel.hpp:56
bool operator!=(const rgb_pixel &that) const
Compare to a pixel.
Definition pixel.cpp:162
rgb_pixel()
Default constructor.
Definition pixel.cpp:90
unsigned char component_type
The type of the components of the color.
Definition pixel.hpp:82
rgba_pixel & operator=(const rgb_pixel &that)
Assignement operator.
Definition pixel.cpp:248
component_type red
Red component.
Definition pixel.hpp:93
component_type luminosity() const
Get the luminosity of the pixel.
Definition pixel.cpp:286
struct claw::graphic::rgba_pixel::@243011111317154221214371326113376113353054140240::@062221254366262347154034240363361326201063204322 components
Component by component representation.
bool operator!=(const rgba_pixel &that) const
Tell if two pixels are different.
Definition pixel.cpp:271
bool operator==(const rgba_pixel &that) const
Tell if two pixels are equal.
Definition pixel.cpp:262
component_type alpha
Translucy.
Definition pixel.hpp:102
component_type green
Green component.
Definition pixel.hpp:96
component_type blue
Blue component.
Definition pixel.hpp:99
unsigned int pixel
Compressed representation.
Definition pixel.hpp:87
rgba_pixel()
Default constructor.
Definition pixel.cpp:179