Gosu::Color Class Reference

Represents an ARGB color value with 8 bits for each channel. More...

List of all members.

Public Types

typedef boost::uint8_t Channel

Public Member Functions

 Color ()
 The default constructor does not initialize the color to any value.
 Color (boost::uint32_t argb)
 Conversion constructor for literals of the form 0xaarrggbb.
 Color (Channel red, Channel green, Channel blue)
 Color (Channel alpha, Channel red, Channel green, Channel blue)
Channel red () const
Channel green () const
Channel blue () const
Channel alpha () const
void setRed (Channel value)
void setGreen (Channel value)
void setBlue (Channel value)
void setAlpha (Channel value)
double hue () const
 Returns the hue of the color, in the usual range of 0..360.
void setHue (double h)
 Changes the current color so hue() will return h.
double saturation () const
 Returns the saturation of the color, in the range of 0..1.
void setSaturation (double s)
 Changes the current color so saturation() will return s.
double value () const
 Returns the value (brightness) of the color, in the range of 0..1.
void setValue (double v)
 Changes the current color so value() will return v.
boost::uint32_t argb () const
 Returns the color in 0xaarrggbb representation.
boost::uint32_t bgr () const
 Returns the color in 0x00bbggrr representation.
boost::uint32_t abgr () const
 Returns the color in 0xaabbggrr representation.

Static Public Member Functions

static Color fromHSV (double h, double s, double v)
 Constructs a color from the given hue/saturation/value triple.
static Color fromAHSV (Channel alpha, double h, double s, double v)

Static Public Attributes

static const unsigned GL_FORMAT = 0x1908
static const Color NONE
static const Color BLACK
static const Color GRAY
static const Color WHITE
static const Color AQUA
static const Color RED
static const Color GREEN
static const Color BLUE
static const Color YELLOW
static const Color FUCHSIA
static const Color CYAN


Detailed Description

Represents an ARGB color value with 8 bits for each channel.

Can be implicitly constructed from literals of the form 0xaarrggbb. Has fast value semantics. The four-byte layout in memory is RGBA. On Big-Endian machines the unsigned int interpretation is 0xrrggbbaa, on Little-Endian machines it is 0xaabbggrr.

Definition at line 18 of file Color.hpp.


Member Typedef Documentation

typedef boost::uint8_t Gosu::Color::Channel

Definition at line 28 of file Color.hpp.


Constructor & Destructor Documentation

Gosu::Color::Color (  ) 

The default constructor does not initialize the color to any value.

Definition at line 32 of file Color.hpp.

Referenced by Color().

Gosu::Color::Color ( boost::uint32_t  argb  ) 

Conversion constructor for literals of the form 0xaarrggbb.

Definition at line 37 of file Color.hpp.

References Color().

Gosu::Color::Color ( Channel  red,
Channel  green,
Channel  blue 
)

Definition at line 43 of file Color.hpp.

References Color().

Gosu::Color::Color ( Channel  alpha,
Channel  red,
Channel  green,
Channel  blue 
)

Definition at line 48 of file Color.hpp.


Member Function Documentation

boost::uint32_t Gosu::Color::abgr (  )  const

Returns the color in 0xaabbggrr representation.

Definition at line 136 of file Color.hpp.

References alpha(), blue(), green(), and red().

Channel Gosu::Color::alpha (  )  const

Definition at line 76 of file Color.hpp.

Referenced by abgr(), and argb().

boost::uint32_t Gosu::Color::argb (  )  const

Returns the color in 0xaarrggbb representation.

Definition at line 124 of file Color.hpp.

References alpha(), blue(), green(), and red().

Referenced by Gosu::operator!=(), Gosu::operator<(), and Gosu::operator==().

boost::uint32_t Gosu::Color::bgr (  )  const

Returns the color in 0x00bbggrr representation.

Definition at line 130 of file Color.hpp.

References blue(), green(), and red().

Channel Gosu::Color::blue (  )  const

Definition at line 71 of file Color.hpp.

Referenced by abgr(), argb(), and bgr().

static Color Gosu::Color::fromAHSV ( Channel  alpha,
double  h,
double  s,
double  v 
) [static]

static Color Gosu::Color::fromHSV ( double  h,
double  s,
double  v 
) [static]

Constructs a color from the given hue/saturation/value triple.

Ranges of these values are given as 0..360, 0..1 and 0..1, respectively. The alpha value is set to 1 from this method.

Channel Gosu::Color::green (  )  const

Definition at line 66 of file Color.hpp.

Referenced by abgr(), argb(), and bgr().

double Gosu::Color::hue (  )  const

Returns the hue of the color, in the usual range of 0..360.

Channel Gosu::Color::red (  )  const

Definition at line 61 of file Color.hpp.

Referenced by abgr(), argb(), and bgr().

double Gosu::Color::saturation (  )  const

Returns the saturation of the color, in the range of 0..1.

void Gosu::Color::setAlpha ( Channel  value  ) 

Definition at line 99 of file Color.hpp.

void Gosu::Color::setBlue ( Channel  value  ) 

Definition at line 93 of file Color.hpp.

void Gosu::Color::setGreen ( Channel  value  ) 

Definition at line 87 of file Color.hpp.

void Gosu::Color::setHue ( double  h  ) 

Changes the current color so hue() will return h.

void Gosu::Color::setRed ( Channel  value  ) 

Definition at line 81 of file Color.hpp.

void Gosu::Color::setSaturation ( double  s  ) 

Changes the current color so saturation() will return s.

void Gosu::Color::setValue ( double  v  ) 

Changes the current color so value() will return v.

double Gosu::Color::value (  )  const

Returns the value (brightness) of the color, in the range of 0..1.


Member Data Documentation

const Color Gosu::Color::AQUA [static]

Definition at line 146 of file Color.hpp.

const Color Gosu::Color::BLACK [static]

Definition at line 142 of file Color.hpp.

const Color Gosu::Color::BLUE [static]

Definition at line 149 of file Color.hpp.

const Color Gosu::Color::CYAN [static]

Definition at line 152 of file Color.hpp.

const Color Gosu::Color::FUCHSIA [static]

Definition at line 151 of file Color.hpp.

const unsigned Gosu::Color::GL_FORMAT = 0x1908 [static]

Definition at line 29 of file Color.hpp.

const Color Gosu::Color::GRAY [static]

Definition at line 143 of file Color.hpp.

const Color Gosu::Color::GREEN [static]

Definition at line 148 of file Color.hpp.

const Color Gosu::Color::NONE [static]

Definition at line 141 of file Color.hpp.

const Color Gosu::Color::RED [static]

Definition at line 147 of file Color.hpp.

const Color Gosu::Color::WHITE [static]

Definition at line 144 of file Color.hpp.

const Color Gosu::Color::YELLOW [static]

Definition at line 150 of file Color.hpp.


The documentation for this class was generated from the following file: