CrystalSpace

Public API Reference

Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

csRGBpixel Struct Reference
[Graphics]

An RGB pixel. More...

#include <csgfx/rgbpixel.h>

List of all members.

Public Member Functions

 csRGBpixel ()
 Constructor (initialize to zero, alpha to 255).
 csRGBpixel (const csRGBpixel &p)
 Copy constructor.
 csRGBpixel (const csRGBcolor &c)
 Construct from a csRGBcolor object; sets alpha to 255.
 csRGBpixel (int r, int g, int b, int a=255)
 Initialize the pixel with some R/G/B/A value.
bool operator== (const csRGBcolor &c) const
 Compare with an csRGBcolor.
bool operator== (const csRGBpixel &p) const
 Compare with an csRGBpixel (including alpha value).
bool operator!= (const csRGBcolor &c) const
 Check if the csRGBpixel is not equal to an csRGBcolor.
bool operator!= (const csRGBpixel &p) const
 Check if this csRGBpixel is not equal to another csRGBpixel (including alpha).
 operator csRGBcolor () const
 Construct an csRGBcolor from this csRGBpixel.
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.
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 Set (const csRGBpixel &p)
 Assign another csRGBpixel.
void operator+= (const csRGBcolor &c)
 Add a csRGBcolor.
void UnsafeAdd (const csRGBpixel &c)
 Use this only if you know there is no overflow.
void SafeAdd (const csRGBpixel &c)
 Use this in the general case.

Public Attributes

unsigned char red
 The red, green, blue and alpha components.
unsigned char green
 The red, green, blue and alpha components.
unsigned char blue
 The red, green, blue and alpha components.
unsigned char alpha
 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 100 of file rgbpixel.h.


Constructor & Destructor Documentation

csRGBpixel::csRGBpixel  )  [inline]
 

Constructor (initialize to zero, alpha to 255).

Definition at line 105 of file rgbpixel.h.

csRGBpixel::csRGBpixel const csRGBpixel p  )  [inline]
 

Copy constructor.

Definition at line 107 of file rgbpixel.h.

csRGBpixel::csRGBpixel const csRGBcolor c  )  [inline]
 

Construct from a csRGBcolor object; sets alpha to 255.

Definition at line 110 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 113 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 137 of file rgbpixel.h.

int csRGBpixel::Intensity  )  const [inline]
 

Get the pixel intensity.

Definition at line 140 of file rgbpixel.h.

unsigned char csRGBpixel::Luminance  )  const [inline]
 

Get the pixel luminance.

Definition at line 143 of file rgbpixel.h.

csRGBpixel::operator csRGBcolor  )  const [inline]
 

Construct an csRGBcolor from this csRGBpixel.

Definition at line 134 of file rgbpixel.h.

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

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

Definition at line 131 of file rgbpixel.h.

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

Check if the csRGBpixel is not equal to an csRGBcolor.

Definition at line 125 of file rgbpixel.h.

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

Add a csRGBcolor.

Definition at line 159 of file rgbpixel.h.

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

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

Compare with an csRGBpixel (including alpha value).

Definition at line 122 of file rgbpixel.h.

References blue, green, and red.

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

Compare with an csRGBcolor.

Definition at line 119 of file rgbpixel.h.

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

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 179 of file rgbpixel.h.

References blue, green, and red.

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

Assign another csRGBpixel.

Definition at line 156 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 148 of file rgbpixel.h.

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 169 of file rgbpixel.h.

References blue, green, and red.


Member Data Documentation

unsigned char csRGBpixel::alpha
 

The red, green, blue and alpha components.

Definition at line 103 of file rgbpixel.h.

Referenced by csShaderVariable::GetValue(), csPackRGBA::PackRGBpixelToRGBA(), Set(), csShaderVariable::SetValue(), and csPackRGBA::UnpackRGBAtoRGBpixel().

unsigned char csRGBpixel::blue
 

The red, green, blue and alpha components.

Definition at line 103 of file rgbpixel.h.

Referenced by csImageMemory::GetKeyColor(), csShaderVariable::GetValue(), operator==(), csPackRGB::PackRGBpixelToRGB(), csPackRGBA::PackRGBpixelToRGBA(), SafeAdd(), Set(), csShaderVariable::SetValue(), csPackRGBA::UnpackRGBAtoRGBpixel(), csPackRGB::UnpackRGBtoRGBpixelBuffer(), and UnsafeAdd().

unsigned char csRGBpixel::green
 

The red, green, blue and alpha components.

Definition at line 103 of file rgbpixel.h.

Referenced by csImageMemory::GetKeyColor(), csShaderVariable::GetValue(), operator==(), csPackRGB::PackRGBpixelToRGB(), csPackRGBA::PackRGBpixelToRGBA(), SafeAdd(), Set(), csShaderVariable::SetValue(), csPackRGBA::UnpackRGBAtoRGBpixel(), csPackRGB::UnpackRGBtoRGBpixelBuffer(), and UnsafeAdd().

unsigned char csRGBpixel::red
 

The red, green, blue and alpha components.

Definition at line 103 of file rgbpixel.h.

Referenced by csImageMemory::GetKeyColor(), csShaderVariable::GetValue(), 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.3.9.1