Classes | Typedefs | Functions
core/vgui/vgui_pixel.h File Reference

contains struct vgui_pixel_rgb<r,g,b> and other similar ones More...

#include <vgui/vgui_gl.h>
#include <vxl_config.h>

Go to the source code of this file.

Classes

struct  vgui_pixel_rgb< 8, 8, 8 >
struct  vgui_pixel_rgb< 16, 16, 16 >
struct  vgui_pixel_rgb< 5, 6, 5 >
struct  vgui_pixel_bgr< 5, 6, 5 >
struct  vgui_pixel_bgr< 8, 8, 8 >
struct  vgui_pixel_rgba< 5, 5, 5, 1 >
struct  vgui_pixel_rgba< 8, 8, 8, 8 >
struct  vgui_pixel_abgr< 8, 8, 8, 8 >
struct  vgui_pixel_bgra< 8, 8, 8, 8 >
struct  vgui_pixel_rgbfloat

Typedefs

typedef vgui_pixel_rgb< 8, 8, 8 > vgui_pixel_rgb888
typedef vgui_pixel_rgb< 16, 16, 16 > vgui_pixel_rgb161616
typedef vgui_pixel_rgb< 5, 6, 5 > vgui_pixel_rgb565
typedef vgui_pixel_bgr< 5, 6, 5 > vgui_pixel_bgr565
typedef vgui_pixel_bgr< 8, 8, 8 > vgui_pixel_bgr888
typedef vgui_pixel_rgba< 5, 5, 5, 1 > vgui_pixel_bgra5551
typedef vgui_pixel_rgba< 8, 8, 8, 8 > vgui_pixel_rgba8888
typedef vgui_pixel_abgr< 8, 8, 8, 8 > vgui_pixel_abgr8888
typedef vgui_pixel_bgra< 8, 8, 8, 8 > vgui_pixel_bgra8888

Functions

template<class T >
vxl_byte vgui_pixel_clamp (T in)
 Clamps the given type into [0,255].
vxl_byte vgui_pixel_clamp (bool in)
 Clamps the given type into [0,255].
vxl_byte vgui_pixel_clamp (vxl_byte in)
 Clamps the given type into [0,255].
vxl_byte vgui_pixel_clamp (vxl_sbyte in)
 Clamps the given type into [0,255].
vxl_byte vgui_pixel_clamp (vxl_uint_16 in)
 Clamps the given type into [0,255].
vxl_byte vgui_pixel_clamp (vxl_uint_32 in)
 Clamps the given type into [0,255].
template<class InT , class OutT >
void vgui_pixel_convert (InT const &in, OutT &out)
 Convert the given grey scale value to the appropriate OpenGL pixel type.
template<class InT , class OutT >
void vgui_pixel_convert (InT const &R, InT const &G, InT const &B, OutT &out)
 Convert the given RGB value to the appropriate OpenGL pixel type.
template<class InT , class OutT >
void vgui_pixel_convert (InT const &R, InT const &G, InT const &B, InT const &A, OutT &out)
 Convert the given RGBA value to the appropriate OpenGL pixel type.
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_rgb888 *, unsigned size)
 Convert a span of pixels from one format to another.
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_bgr888 *, unsigned size)
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_rgb565 *, unsigned size)
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_bgra5551 *, unsigned size)
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_rgba8888 *, unsigned size)
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_abgr8888 *, unsigned size)
void vgui_pixel_convert_span (GLubyte const *, vgui_pixel_bgra8888 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_rgb888 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_bgr888 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_rgb565 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_bgra5551 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_rgba8888 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_abgr8888 *, unsigned size)
void vgui_pixel_convert_span (GLfloat const *, vgui_pixel_bgra8888 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_rgb888 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_bgr888 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_rgb565 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_bgra5551 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_rgba8888 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_abgr8888 *, unsigned size)
void vgui_pixel_convert_span (GLdouble const *, vgui_pixel_bgra8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_rgb888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_bgr888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_rgb565 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_bgra5551 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_rgba8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_abgr8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgb888 const *, vgui_pixel_bgra8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_rgb888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_bgr888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_rgb565 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_bgra5551 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_rgba8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_abgr8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgba8888 const *, vgui_pixel_bgra8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_rgb888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_bgr888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_rgb565 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_bgra5551 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_rgba8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_abgr8888 *, unsigned size)
void vgui_pixel_convert_span (vgui_pixel_rgbfloat const *, vgui_pixel_bgra8888 *, unsigned size)

Detailed Description

contains struct vgui_pixel_rgb<r,g,b> and other similar ones

Author:
fsm
    Modifications
     Jan 2003, Amitha Perera: added functionality used in displaying vil images.
               The vil1 and vil functionality could probably be coalesced for a cleaner design.
   

Definition in file vgui_pixel.h.


Typedef Documentation

typedef vgui_pixel_abgr<8,8,8,8> vgui_pixel_abgr8888

Definition at line 154 of file vgui_pixel.h.

typedef vgui_pixel_bgr<5,6,5> vgui_pixel_bgr565

Definition at line 103 of file vgui_pixel.h.

typedef vgui_pixel_bgr<8,8,8> vgui_pixel_bgr888

Definition at line 115 of file vgui_pixel.h.

typedef vgui_pixel_rgba<5,5,5,1> vgui_pixel_bgra5551

Definition at line 128 of file vgui_pixel.h.

typedef vgui_pixel_bgra<8,8,8,8> vgui_pixel_bgra8888

Definition at line 167 of file vgui_pixel.h.

typedef vgui_pixel_rgb<16,16,16> vgui_pixel_rgb161616

Definition at line 52 of file vgui_pixel.h.

typedef vgui_pixel_rgb<5,6,5> vgui_pixel_rgb565

Definition at line 80 of file vgui_pixel.h.

typedef vgui_pixel_rgb<8,8,8> vgui_pixel_rgb888

Definition at line 40 of file vgui_pixel.h.

typedef vgui_pixel_rgba<8,8,8,8> vgui_pixel_rgba8888

Definition at line 141 of file vgui_pixel.h.


Function Documentation

template<class T >
vxl_byte vgui_pixel_clamp ( in) [inline]

Clamps the given type into [0,255].

Definition at line 184 of file vgui_pixel.h.

vxl_byte vgui_pixel_clamp ( bool  in) [inline]

Clamps the given type into [0,255].

This overload stretches (0,1) bool images to (0,255) byte images.

Definition at line 198 of file vgui_pixel.h.

vxl_byte vgui_pixel_clamp ( vxl_byte  in) [inline]

Clamps the given type into [0,255].

This overload is the null operation, and is provided for efficiency.

Definition at line 207 of file vgui_pixel.h.

vxl_byte vgui_pixel_clamp ( vxl_sbyte  in) [inline]

Clamps the given type into [0,255].

This overload only checks the lower bound.

Definition at line 216 of file vgui_pixel.h.

vxl_byte vgui_pixel_clamp ( vxl_uint_16  in) [inline]

Clamps the given type into [0,255].

This overload only checks the upper bound, since the type is unsigned.

Definition at line 227 of file vgui_pixel.h.

vxl_byte vgui_pixel_clamp ( vxl_uint_32  in) [inline]

Clamps the given type into [0,255].

This overload only checks the upper bound, since the type is unsigned.

Definition at line 238 of file vgui_pixel.h.

template<class InT , class OutT >
void vgui_pixel_convert ( InT const &  in,
OutT &  out 
) [inline]

Convert the given grey scale value to the appropriate OpenGL pixel type.

Definition at line 248 of file vgui_pixel.h.

template<class InT , class OutT >
void vgui_pixel_convert ( InT const &  R,
InT const &  G,
InT const &  B,
OutT &  out 
) [inline]

Convert the given RGB value to the appropriate OpenGL pixel type.

Definition at line 257 of file vgui_pixel.h.

template<class InT , class OutT >
void vgui_pixel_convert ( InT const &  R,
InT const &  G,
InT const &  B,
InT const &  A,
OutT &  out 
) [inline]

Convert the given RGBA value to the appropriate OpenGL pixel type.

Definition at line 267 of file vgui_pixel.h.

void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_rgb888 ,
unsigned  size 
)

Convert a span of pixels from one format to another.

In general, the input range is assumed to be 0..255, so bitfields narrower than 8 bits need to be shifted. Floats are clamped to 0..255

void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_bgr888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_rgb565 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_bgra5551 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_rgba8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_abgr8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLubyte const *  ,
vgui_pixel_bgra8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_rgb888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_bgr888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_rgb565 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_bgra5551 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_rgba8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_abgr8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLfloat const *  ,
vgui_pixel_bgra8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_rgb888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_bgr888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_rgb565 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_bgra5551 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_rgba8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_abgr8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( GLdouble const *  ,
vgui_pixel_bgra8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_rgb888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_bgr888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_rgb565 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_bgra5551 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_rgba8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_abgr8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgb888 const *  ,
vgui_pixel_bgra8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_rgb888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_bgr888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_rgb565 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_bgra5551 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_rgba8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_abgr8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgba8888 const *  ,
vgui_pixel_bgra8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_rgb888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_bgr888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_rgb565 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_bgra5551 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_rgba8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_abgr8888 ,
unsigned  size 
)
void vgui_pixel_convert_span ( vgui_pixel_rgbfloat const *  ,
vgui_pixel_bgra8888 ,
unsigned  size 
)