CrystalSpace

Public API Reference

csRGBpixel Struct Reference
[Graphics]

An RGB pixel. More...

#include <csgfx/rgbpixel.h>

List of all members.

Public Member Functions

 csRGBpixel (int r, int g, int b, int a=255)
 Initialize the pixel with some R/G/B/A value.
 csRGBpixel (const csRGBcolor &c)
 Construct from a csRGBcolor object; sets alpha to 255.
 csRGBpixel (const csRGBpixel &p)
 Copy constructor.
 csRGBpixel ()
 Constructor (initialize to zero, alpha to 255).
bool eq (const csRGBpixel &p) const
 Compare with another csRGBpixel, but don't take alpha into account.
int Intensity () const
 Get the pixel intensity.
unsigned char Luminance () const
 Get the pixel luminance.
 operator csRGBcolor () const
 Construct an csRGBcolor from this csRGBpixel.
bool operator!= (const csRGBpixel &p) const
 Check if this csRGBpixel is not equal to another csRGBpixel (including alpha).
bool operator!= (const csRGBcolor &c) const
 Check if the csRGBpixel is not equal to an csRGBcolor.
void operator+= (const csRGBcolor &c)
 Add a csRGBcolor.
bool operator== (const csRGBpixel &p) const
 Compare with an csRGBpixel (including alpha value).
bool operator== (const csRGBcolor &c) const
 Compare with an csRGBcolor.
void SafeAdd (const csRGBpixel &c)
 Use this in the general case.
void Set (const csRGBpixel &p)
 Assign another csRGBpixel.
void Set (const int r, const int g, const int b, const int a=255)
 Assign given red/green/blue/alpha values to this pixel.
void UnsafeAdd (const csRGBpixel &c)
 Use this only if you know there is no overflow.

Public Attributes

unsigned char alpha
unsigned char blue
unsigned char green
unsigned char red
 The red, green, blue and alpha components.


Detailed Description

An RGB pixel.

In addition to R,G,B color components this structure also contains the Alpha channel component, which is used in images (that potentially have an alpha channel).

Definition at line 131 of file rgbpixel.h.


Constructor & Destructor Documentation

csRGBpixel::csRGBpixel  )  [inline]
 

Constructor (initialize to zero, alpha to 255).

Definition at line 136 of file rgbpixel.h.

csRGBpixel::csRGBpixel const csRGBpixel p  )  [inline]
 

Copy constructor.

Definition at line 138 of file rgbpixel.h.

csRGBpixel::csRGBpixel const csRGBcolor c  )  [inline]
 

Construct from a csRGBcolor object; sets alpha to 255.

Definition at line 141 of file rgbpixel.h.

csRGBpixel::csRGBpixel int  r,
int  g,
int  b,
int  a = 255
[inline]
 

Initialize the pixel with some R/G/B/A value.

Definition at line 144 of file rgbpixel.h.


Member Function Documentation

bool csRGBpixel::eq const csRGBpixel p  )  const [inline]
 

Compare with another csRGBpixel, but don't take alpha into account.

Definition at line 168 of file rgbpixel.h.

References operator==().

int csRGBpixel::Intensity  )  const [inline]
 

Get the pixel intensity.

Definition at line 171 of file rgbpixel.h.

References blue, green, and red.

unsigned char csRGBpixel::Luminance  )  const [inline]
 

Get the pixel luminance.

Definition at line 174 of file rgbpixel.h.

References blue, green, and red.

csRGBpixel::operator csRGBcolor  )  const [inline]
 

Construct an csRGBcolor from this csRGBpixel.

Definition at line 165 of file rgbpixel.h.

References blue, green, and red.

bool csRGBpixel::operator!= const csRGBpixel p  )  const [inline]
 

Check if this csRGBpixel is not equal to another csRGBpixel (including alpha).

Definition at line 162 of file rgbpixel.h.

References operator==().

bool csRGBpixel::operator!= const csRGBcolor c  )  const [inline]
 

Check if the csRGBpixel is not equal to an csRGBcolor.

Definition at line 156 of file rgbpixel.h.

References operator==().

void csRGBpixel::operator+= const csRGBcolor c  )  [inline]
 

Add a csRGBcolor.

Definition at line 190 of file rgbpixel.h.

References csRGBcolor::blue, blue, csRGBcolor::green, green, csRGBcolor::red, and red.

bool csRGBpixel::operator== const csRGBpixel p  )  const [inline]
 

Compare with an csRGBpixel (including alpha value).

Definition at line 153 of file rgbpixel.h.

References blue, green, and red.

bool csRGBpixel::operator== const csRGBcolor c  )  const [inline]
 

Compare with an csRGBcolor.

Definition at line 150 of file rgbpixel.h.

References blue, csRGBcolor::blue, green, csRGBcolor::green, red, and csRGBcolor::red.

Referenced by eq(), and operator!=().

void csRGBpixel::SafeAdd const csRGBpixel c  )  [inline]
 

Use this in the general case.

This version test for overflow. Note that alpha is ignored by this routine.

Definition at line 210 of file rgbpixel.h.

References blue, green, and red.

void csRGBpixel::Set const csRGBpixel p  )  [inline]
 

Assign another csRGBpixel.

Definition at line 187 of file rgbpixel.h.

References alpha, blue, green, and red.

void csRGBpixel::Set const int  r,
const int  g,
const int  b,
const int  a = 255
[inline]
 

Assign given red/green/blue/alpha values to this pixel.

Definition at line 179 of file rgbpixel.h.

References alpha, blue, green, and red.

void csRGBpixel::UnsafeAdd const csRGBpixel c  )  [inline]
 

Use this only if you know there is no overflow.

Also take care to set alpha to 0 in 'c'!

Definition at line 200 of file rgbpixel.h.

References blue, green, and red.


Member Data Documentation

unsigned char csRGBpixel::red
 

The red, green, blue and alpha components.

Definition at line 134 of file rgbpixel.h.

Referenced by csShaderVariable::GetValue(), Intensity(), Luminance(), operator csRGBcolor(), operator+=(), operator==(), csPackRGB::PackRGBpixelToRGB(), csPackRGBA::PackRGBpixelToRGBA(), SafeAdd(), Set(), csShaderVariable::SetValue(), csPackRGBA::UnpackRGBAtoRGBpixel(), csPackRGB::UnpackRGBtoRGBpixelBuffer(), and UnsafeAdd().


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.4.6