Claw
1.7.3
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
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@gamned.org
24
*/
30
#ifndef __CLAW_PIXEL_HPP_
31
#define __CLAW_PIXEL_HPP_
32
33
#include <string>
34
35
namespace
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
{
53
component_type
red
;
54
56
component_type
green
;
57
59
component_type
blue
;
60
61
}
components
;
62
63
public
:
64
rgb_pixel
();
65
rgb_pixel
(
component_type
r,
component_type
g,
component_type
b );
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
79
struct
rgba_pixel
80
{
82
typedef
unsigned
char
component_type
;
83
84
union
85
{
87
unsigned
int
pixel
;
88
90
struct
91
{
93
component_type
red
;
94
96
component_type
green
;
97
99
component_type
blue
;
100
102
component_type
alpha
;
103
104
}
components
;
105
};
106
107
public
:
108
rgba_pixel
();
109
rgba_pixel
(
const
rgb_pixel& that );
110
rgba_pixel
(
component_type
r,
component_type
g,
component_type
b,
111
component_type
a );
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
118
component_type
luminosity
()
const
;
119
120
};
// struct rgba_pixel
121
123
typedef
rgb_pixel
rgb_pixel_8
;
124
126
typedef
rgba_pixel
rgba_pixel_8
;
127
133
extern
rgba_pixel
transparent_pixel
;
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
151
extern
rgba_pixel
yellow_pixel
;
152
154
extern
rgba_pixel
magenta_pixel
;
155
157
extern
rgba_pixel
cyan_pixel
;
158
161
}
// namespace graphic
162
}
// namespace claw
163
164
#endif // __CLAW_PIXEL_HPP__
Generated on Thu Mar 14 2013 22:09:24 for Claw by
1.8.1.2