OSDLPixel.h File Reference

#include "OSDLVideoTypes.h"
#include "Ceylan.h"
#include <string>
Include dependency graph for OSDLPixel.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  OSDL
 

Definition of the main OSDL common non-specialized types.


namespace  OSDL::Video
namespace  OSDL::Video::Pixels
 

Allows to handle the various pixel colors and formats.


Typedefs

typedef Ceylan::Uint32 OSDL::Video::Pixels::PixelColor
 Corresponds to an actual pixel color, i.e.
typedef Ceylan::Uint32 OSDL::Video::Pixels::ColorMask
 Corresponds to a bit mask which allows to define how to get color coordinates from a PixelColor, for example depending on the endianness of the system.
typedef Ceylan::Uint8 OSDL::Video::Pixels::ColorElement
 Describes a coordinate used in color space, including alpha.
typedef Ceylan::Float32 OSDL::Video::Pixels::FloatColorElement
 Describes a floating-point coordinate used in color space, including alpha.
typedef ::SDL_Color OSDL::Video::Pixels::ColorDefinition
 Format-independent color description.
typedef ::SDL_PixelFormat OSDL::Video::Pixels::PixelFormat
 Describes a pixel format.
typedef Ceylan::Float32 OSDL::Video::Pixels::GammaFactor
 Gamma controls the brightness/contrast of colors displayed on the screen.
typedef Ceylan::Uint16 OSDL::Video::Pixels::GammaRampElement
 A color element of a gamma ramp.

Functions

bool OSDL::Video::Pixels::setGamma (GammaFactor red, GammaFactor green, GammaFactor blue)
 Sets the "gamma function" for the display of each color component.
OSDL_DLL bool OSDL::Video::Pixels::setGammaRamp (GammaRampElement *redRamp, GammaRampElement *greenRamp, GammaRampElement *blueRamp)
 Sets the gamma lookup tables for the display for each color component.
OSDL_DLL bool OSDL::Video::Pixels::getGammaRamp (GammaRampElement *redRamp, GammaRampElement *greenRamp, GammaRampElement *blueRamp)
 Gets the color gamma lookup tables for the display.
OSDL_DLL void OSDL::Video::Pixels::getRecommendedColorMasks (ColorMask &redMask, ColorMask &greenMask, ColorMask &blueMask, ColorMask &alphaMask)
 Returns the RBGA masks which are recommended on this platform: the endianness is taken into account, regardless of any specific pixel format.
OSDL_DLL void OSDL::Video::Pixels::getRecommendedColorMasks (ColorMask &redMask, ColorMask &greenMask, ColorMask &blueMask)
 Returns the RBG masks which are recommended on this platform: the endianness is taken into account, regardless of any specific pixel format.
OSDL_DLL void OSDL::Video::Pixels::getCurrentColorMasks (const PixelFormat &format, ColorMask &redMask, ColorMask &greenMask, ColorMask &blueMask, ColorMask &alphaMask)
 Reads from specified pixel format the RBGA masks, and returns them by updating specified color mask references.
OSDL_DLL ColorDefinition OSDL::Video::Pixels::convertRGBAToColorDefinition (ColorElement red, ColorElement green, ColorElement blue, ColorElement alpha=AlphaOpaque)
 Converts a set of four coordinates in RGBA color space to the equivalent ColorDefinition.
OSDL_DLL void OSDL::Video::Pixels::convertColorDefinitionToRGBA (ColorDefinition color, ColorElement &red, ColorElement &green, ColorElement &blue, ColorElement &alpha)
 Updates provided RGBA quadruplet from the specified color definition.
OSDL_DLL PixelColor OSDL::Video::Pixels::convertRGBAToPixelColor (const PixelFormat &format, ColorElement red, ColorElement green, ColorElement blue, ColorElement alpha=AlphaOpaque)
 Converts a set of four coordinates in RGBA color space to a PixelColor, using specified format.
OSDL_DLL ColorDefinition OSDL::Video::Pixels::convertPixelColorToColorDefinition (const PixelFormat &format, PixelColor pixel)
 Returns RGBA quadruplet corresponding to specified pixel, encoded according to specified pixel format.
OSDL_DLL PixelColor OSDL::Video::Pixels::convertColorDefinitionToPixelColor (const PixelFormat &format, ColorDefinition colorDef)
 Converts a set of four coordinates in RGBA color space, expressed as a color definition, to a PixelColor, using specified surface format.
OSDL_DLL PixelColor OSDL::Video::Pixels::convertColorDefinitionToRawPixelColor (ColorDefinition colorDef)
 Converts a color definition to a raw PixelColor, regardless of any pixel format.
OSDL_DLL PixelColor OSDL::Video::Pixels::convertRGBAToRawPixelColor (ColorElement red, ColorElement green, ColorElement blue, ColorElement alpha=AlphaOpaque)
 Converts a RGBA raw color into a raw PixelColor, with no pixel format mapping.
OSDL_DLL bool OSDL::Video::Pixels::areEqual (ColorDefinition first, ColorDefinition second, bool useAlpha=true)
 Returns whether the two color definitions describe the exact same color.
OSDL_DLL bool OSDL::Video::Pixels::isLess (ColorDefinition value, ColorDefinition comparison)
 Returns whether value is strictly less than comparison, by defining an arbitrary order in color coordinates.
OSDL_DLL bool OSDL::Video::Pixels::areEqual (PixelColor first, PixelColor second)
 Returns whether the two pixel colors describe the exact same color, supposing that the two pixel colors are defined according to the same pixel format.
OSDL_DLL ColorDefinition OSDL::Video::Pixels::selectColorDifferentFrom (ColorDefinition first, ColorDefinition second)
 Returns a color definition which is chosen different from the specified ones.
OSDL_DLL ColorDefinition OSDL::Video::Pixels::selectColorDifferentFrom (ColorDefinition first, ColorDefinition second, ColorDefinition third)
 Returns a color definition which is different from the specified ones.
OSDL_DLL PixelColor OSDL::Video::Pixels::getPixelColor (const Surface &fromSurface, Coordinate x, Coordinate y)
 Returns the pixel color at [x;y].
OSDL_DLL ColorDefinition OSDL::Video::Pixels::getColorDefinition (const Surface &fromSurface, Coordinate x, Coordinate y)
 Returns the color definition of pixel at [x;y].
OSDL_DLL void OSDL::Video::Pixels::putRGBAPixel (Surface &targetSurface, Coordinate x, Coordinate y, ColorElement red, ColorElement green, ColorElement blue, ColorElement alpha=AlphaOpaque, bool blending=true, bool clipping=true, bool locking=false)
 Puts specified pixel at [x;y] with the given color, specified as separate RGBA coordinates.
OSDL_DLL void OSDL::Video::Pixels::putColorDefinition (Surface &targetSurface, Coordinate x, Coordinate y, ColorDefinition colorDef, bool blending=true, bool clipping=true, bool locking=false)
 Puts the specified pixel at [x;y] with the given color, specified as a RGBA color definition, not as a pixel color already encoded according to the pixel format of target surface.
OSDL_DLL void OSDL::Video::Pixels::putPixelColor (Surface &targetSurface, Coordinate x, Coordinate y, PixelColor convertedColor, ColorElement alpha, bool blending=true, bool clipping=true, bool locking=false)
 Puts the pixel at [x;y] with the given color, specified as a 32-bit RGBA pixel color, already encoded according to Surface's pixel format.
OSDL_DLL void OSDL::Video::Pixels::alternativePutPixelColor (Surface &targetSurface, Coordinate x, Coordinate y, PixelColor color, bool mapToSurfaceFormat=false)
 Alternative method to set the pixel at [x;y] to the given pixel color.
OSDL_DLL std::string OSDL::Video::Pixels::toString (const PixelFormat &format)
 Returns a textual representation of the specified pixel format.
OSDL_DLL std::string OSDL::Video::Pixels::toString (PixelColor pixel, const PixelFormat &format)
 Returns a textual representation of the specified color, according to the specified pixel format.
OSDL_DLL std::string OSDL::Video::Pixels::toString (ColorDefinition color)
 Returns a textual representation of the specified color definition.

Variables

const ColorElement OSDL::Video::Pixels::AlphaTransparent = 0
 The alpha coordinate which corresponds to transparent pixels.
const ColorElement OSDL::Video::Pixels::AlphaOpaque = 255
 The alpha coordinate which corresponds to opaque (solid) pixels.
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Transparent
 Main color definitions: 115 different colors described by name.
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Black
 Shades of Grey:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Grey
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DimGrey
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightGrey
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SlateGrey
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Silver
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::AliceBlue
 Shades of Blue:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::BlueViolet
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::CadetBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkSlateBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkTurquoise
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DeepSkyBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DodgerBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightCyan
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MediumBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::NavyBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::RoyalBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SkyBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SlateBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SteelBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Aquamarine
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Azure
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Blue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Cyan
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Turquoise
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MidnightBlue
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Brown
 Shades of Brown:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::RosyBrown
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SaddleBrown
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Beige
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Burlywood
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Chocolate
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Peru
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Tan
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Copper
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkGreen
 Shades of Green:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkOliveGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::ForestGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::GreenYellow
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LawnGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LimeGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MintCream
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::OliveDrab
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::PaleGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SeaGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::SpringGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::YellowGreen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Chartreuse
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Green
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Khaki
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkOrange
 Shades of Orange:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkSalmon
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightCoral
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightSalmon
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::PeachPuff
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Bisque
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Coral
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Honeydew
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Orange
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Salmon
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Sienna
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DeepPink
 Shades of Red:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::HotPink
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::IndianRed
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightPink
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MediumVioletRed
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MistyRose
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::OrangeRed
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::VioletRed
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Firebrick
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Pink
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Red
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Tomato
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkOrchid
 Shades of Violet:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkViolet
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LavenderBlush
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MediumOrchid
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::MediumPurple
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Lavender
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Magenta
 Pure magenta is the OSDL default color key.
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Maroon
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Orchid
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Plum
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Purple
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Thistle
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Violet
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::AntiqueWhite
 Shades of White:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::FloralWhite
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::GhostWhite
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::NavajoWhite
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::OldLace
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::WhiteSmoke
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Gainsboro
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Ivory
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Linen
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Seashell
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Snow
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Wheat
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::White
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::BlanchedAlmond
 Shades of Yellow:
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DarkGoldenrod
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LemonChiffon
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightGoldenrod
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::LightYellow
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::PaleGoldenrod
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::PapayaWhip
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Cornsilk
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Gold
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Goldenrod
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Moccasin
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::Yellow
OSDL_DLL const ColorDefinition OSDL::Video::Pixels::DefaultColorkey = Magenta
 Pure magenta is the OSDL default color key.
Generated on Mon Nov 29 14:04:47 2010 for OSDL by  doxygen 1.6.3