Main Page   Modules   Compound List   File List   Compound Members   File Members  

pixel.h File Reference

#include <gandalf/common/misc_defs.h>
#include <gandalf/common/bit_array.h>
#include <gandalf/linalg/2vector.h>
#include <gandalf/linalg/2vectorf.h>
#include <gandalf/linalg/3vector.h>
#include <gandalf/linalg/3vectorf.h>

Go to the source code of this file.

Compounds

struct  Gan_GLAPixel_d
 Structure defining grey-level double precision floating point pixel with alpha channel. More...

struct  Gan_GLAPixel_f
 Structure defining grey-level single precision floating point pixel with alpha channel. More...

struct  Gan_GLAPixel_i
 Structure defining grey-level signed integer pixel with alpha channel. More...

struct  Gan_GLAPixel_s
 Structure defining grey-level short integer pixel with alpha channel. More...

struct  Gan_GLAPixel_uc
 Structure defining grey-level unsigned character pixel with alpha channel. More...

struct  Gan_GLAPixel_ui
 Structure defining grey-level unsigned integer pixel with alpha channel. More...

struct  Gan_GLAPixel_us
 Structure defining grey-level unsigned short pixel with alpha channel. More...

struct  Gan_Pixel
 Structure definition for image pixel of any format or type. More...

struct  Gan_RGBAPixel_d
 Structure defining RGB double precision floating point pixel with alpha channel. More...

struct  Gan_RGBAPixel_f
 Structure defining RGB single precision floating point pixel with alpha channel. More...

struct  Gan_RGBAPixel_i
 Structure defining RGB signed integer pixel with alpha channel. More...

struct  Gan_RGBAPixel_s
 Structure defining RGB signed short integer pixel with alpha channel. More...

struct  Gan_RGBAPixel_uc
 Structure defining RGB unsigned character pixel with alpha channel. More...

struct  Gan_RGBAPixel_ui
 Structure defining RGB unsigned integer pixel with alpha channel. More...

struct  Gan_RGBAPixel_us
 Structure defining RGB unsigned short integer pixel with alpha channel. More...

struct  Gan_RGBPixel_d
 Structure defining RGB colour double precision floating point pixel. More...

struct  Gan_RGBPixel_f
 Structure defining RGB colour singe precision floating point pixel. More...

struct  Gan_RGBPixel_i
 Structure defining RGB colour signed integer pixel. More...

struct  Gan_RGBPixel_s
 Structure defining RGB colour signed short integer pixel. More...

struct  Gan_RGBPixel_uc
 Structure defining RGB colour unsigned character pixel. More...

struct  Gan_RGBPixel_ui
 Structure defining RGB colour unsigned integer pixel. More...

struct  Gan_RGBPixel_us
 Structure defining RGB colour unsigned short integer pixel. More...


Typedefs

typedef Gan_GLAPixel_uc Gan_GLAPixel_uc
 Structure defining grey-level unsigned character pixel with alpha channel.

typedef Gan_GLAPixel_s Gan_GLAPixel_s
 Structure defining grey-level short integer pixel with alpha channel.

typedef Gan_GLAPixel_us Gan_GLAPixel_us
 Structure defining grey-level unsigned short pixel with alpha channel.

typedef Gan_GLAPixel_i Gan_GLAPixel_i
 Structure defining grey-level signed integer pixel with alpha channel.

typedef Gan_GLAPixel_ui Gan_GLAPixel_ui
 Structure defining grey-level unsigned integer pixel with alpha channel.

typedef Gan_GLAPixel_f Gan_GLAPixel_f
 Structure defining grey-level single precision floating point pixel with alpha channel.

typedef Gan_GLAPixel_d Gan_GLAPixel_d
 Structure defining grey-level double precision floating point pixel with alpha channel.

typedef Gan_RGBPixel_uc Gan_RGBPixel_uc
 Structure defining RGB colour unsigned character pixel.

typedef Gan_RGBPixel_s Gan_RGBPixel_s
 Structure defining RGB colour signed short integer pixel.

typedef Gan_RGBPixel_us Gan_RGBPixel_us
 Structure defining RGB colour unsigned short integer pixel.

typedef Gan_RGBPixel_i Gan_RGBPixel_i
 Structure defining RGB colour signed integer pixel.

typedef Gan_RGBPixel_ui Gan_RGBPixel_ui
 Structure defining RGB colour unsigned integer pixel.

typedef Gan_RGBPixel_f Gan_RGBPixel_f
 Structure defining RGB colour singe precision floating point pixel.

typedef Gan_RGBPixel_d Gan_RGBPixel_d
 Structure defining RGB colour double precision floating point pixel.

typedef Gan_RGBAPixel_uc Gan_RGBAPixel_uc
 Structure defining RGB unsigned character pixel with alpha channel.

typedef Gan_RGBAPixel_s Gan_RGBAPixel_s
 Structure defining RGB signed short integer pixel with alpha channel.

typedef Gan_RGBAPixel_us Gan_RGBAPixel_us
 Structure defining RGB unsigned short integer pixel with alpha channel.

typedef Gan_RGBAPixel_i Gan_RGBAPixel_i
 Structure defining RGB signed integer pixel with alpha channel.

typedef Gan_RGBAPixel_ui Gan_RGBAPixel_ui
 Structure defining RGB unsigned integer pixel with alpha channel.

typedef Gan_RGBAPixel_f Gan_RGBAPixel_f
 Structure defining RGB single precision floating point pixel with alpha channel.

typedef Gan_RGBAPixel_d Gan_RGBAPixel_d
 Structure defining RGB double precision floating point pixel with alpha channel.

typedef Gan_Pixel Gan_Pixel
 Structure definition for image pixel of any format or type.


Enumerations

enum  Gan_ImageFormat {
  GAN_GREY_LEVEL_IMAGE, GAN_GREY_LEVEL_ALPHA_IMAGE, GAN_RGB_COLOUR_IMAGE, GAN_RGB_COLOUR_ALPHA_IMAGE,
  GAN_VECTOR_FIELD_2D, GAN_VECTOR_FIELD_3D
}
 Different formats of image pixel. More...


Functions

unsigned char gan_pixel_rgbuc_to_yuc (Gan_RGBPixel_uc *rgb)
 Convert RGB unsigned char pixel to grey-level unsigned char pixel.

unsigned short gan_pixel_rgbuc_to_yus (Gan_RGBPixel_uc *rgb)
 Convert RGB unsigned char pixel to grey-level unsigned short pixel.

unsigned int gan_pixel_rgbuc_to_yui (Gan_RGBPixel_uc *rgb)
 Convert RGB unsigned char pixel to grey-level unsigned int pixel.

unsigned char gan_pixel_rgbus_to_yuc (Gan_RGBPixel_us *rgb)
 Convert RGB unsigned short pixel to grey-level unsigned char pixel.

unsigned short gan_pixel_rgbus_to_yus (Gan_RGBPixel_us *rgb)
 Convert RGB unsigned short pixel to grey-level unsigned short pixel.

float gan_pixel_rgbui_to_yf (Gan_RGBPixel_ui *rgb)
 Convert RGB float pixel to grey-level float pixel.

float gan_pixel_rgbf_to_yf (Gan_RGBPixel_f *rgb)
 Convert RGB float pixel to grey-level float pixel.

double gan_pixel_rgbd_to_yd (Gan_RGBPixel_d *rgb)
 Convert RGB double pixel to grey-level double pixel.

unsigned char gan_pixel_rgbauc_to_yuc (Gan_RGBAPixel_uc *rgba)
 Convert RGBA unsigned char pixel to grey-level unsigned char pixel.

unsigned short gan_pixel_rgbauc_to_yus (Gan_RGBAPixel_uc *rgba)
 Convert RGBA unsigned char pixel to grey-level unsigned short pixel.

unsigned int gan_pixel_rgbauc_to_yui (Gan_RGBAPixel_uc *rgba)
 Convert RGBA unsigned char pixel to grey-level unsigned int pixel.

unsigned char gan_pixel_rgbaus_to_yuc (Gan_RGBAPixel_us *rgba)
 Convert RGBA unsigned short pixel to grey-level unsigned char pixel.

unsigned short gan_pixel_rgbaus_to_yus (Gan_RGBAPixel_us *rgba)
 Convert RGBA unsigned short pixel to grey-level unsigned short pixel.

float gan_pixel_rgbaui_to_yf (Gan_RGBAPixel_ui *rgba)
 Convert RGBA float pixel to grey-level float pixel.

float gan_pixel_rgbaf_to_yf (Gan_RGBAPixel_f *rgba)
 Convert RGBA float pixel to grey-level float pixel.

double gan_pixel_rgbad_to_yd (Gan_RGBAPixel_d *rgba)
 Convert RGBA double pixel to grey-level double pixel.

Gan_Bool gan_image_convert_pixel (Gan_Pixel *inpix, Gan_ImageFormat format, Gan_Type type, Gan_Pixel *outpix, int *error_code)
 Convert a pixel to the given format and type.

double gan_image_convert_scale (Gan_Type gtFromType, Gan_Type gtToType)
 Return the scaling involved in converting a pixel from one type to another.

Gan_Bool gan_image_offset_pixel_q (Gan_Pixel *pixel, double offset, Gan_Pixel *offset_pixel)
 Offset pixel values.

Gan_Bool gan_image_scale_pixel_q (Gan_Pixel *pixel, double scale, Gan_Pixel *scaled_pixel)
 Scale pixel values.

Gan_Bool gan_image_divide_pixel_q (Gan_Pixel *pixel, double scale, Gan_Pixel *scaled_pixel)
 Divide pixel values by scalar.

Gan_Bool gan_image_fill_zero_pixel (Gan_Pixel *pixel)
 Fill a pixel with zero value(s).

unsigned char gan_pixel_us_to_uc (unsigned short x)
 Macro: Convert a pixel field from unsigned short to unsigned char type.

unsigned char gan_pixel_ui_to_uc (unsigned x)
 Macro: Convert a pixel field from unsigned int to unsigned char type.

unsigned char gan_pixel_f_to_uc (float x)
 Macro: Convert a pixel field from float to unsigned char type.

unsigned char gan_pixel_d_to_uc (double x)
 Macro: Convert a pixel field from double to unsigned char type.

unsigned short gan_pixel_uc_to_us (unsigned char x)
 Macro: Convert a pixel field from unsigned char to unsigned short type.

unsigned short gan_pixel_ui_to_us (unsigned x)
 Macro: Convert a pixel field from unsigned int to unsigned short type.

short gan_pixel_i_to_s (int x)
 Macro: Convert a pixel field from int to short type.

unsigned short gan_pixel_f_to_us (float x)
 Macro: Convert a pixel field from float to unsigned short type.

unsigned short gan_pixel_d_to_us (double x)
 Macro: Convert a pixel field from double to unsigned short type.

unsigned int gan_pixel_uc_to_ui (unsigned char x)
 Macro: Convert a pixel field from unsigned char to unsigned int type.

unsigned int gan_pixel_us_to_ui (unsigned short x)
 Macro: Convert a pixel field from unsigned short to unsigned int type.

int gan_pixel_s_to_i (short x)
 Macro: Convert a pixel field from short to int type.

unsigned int gan_pixel_f_to_ui (float x)
 Macro: Convert a pixel field from float to unsigned int type.

unsigned int gan_pixel_d_to_ui (double x)
 Macro: Convert a pixel field from double to unsigned int type.

float gan_pixel_uc_to_f (unsigned char x)
 Macro: Convert a pixel field from unsigned char to float type.

float gan_pixel_us_to_f (unsigned short x)
 Macro: Convert a pixel field from unsigned short to float type.

float gan_pixel_ui_to_f (unsigned int x)
 Macro: Convert a pixel field from unsigned int to float type.

double gan_pixel_uc_to_d (unsigned char x)
 Macro: Convert a pixel field from unsigned char to double type.

double gan_pixel_us_to_d (unsigned short x)
 Macro: Convert a pixel field from unsigned short to double type.

double gan_pixel_ui_to_d (unsigned int x)
 Macro: Convert a pixel field from unsigned int to double type.

int gan_pixel_f_to_i (float x)
 Macro: Convert a pixel field from float to int type.

int gan_pixel_d_to_i (double x)
 Macro: Convert a pixel field from double to int type.

short gan_pixel_f_to_s (float x)
 Macro: Convert a pixel field from float to short type.

short gan_pixel_d_to_s (double x)
 Macro: Convert a pixel field from double to short type.

float gan_pixel_s_to_f (short x)
 Macro: Convert a pixel field from short to float type.

double gan_pixel_s_to_d (short x)
 Macro: Convert a pixel field from short to double type.

float gan_pixel_i_to_f (int x)
 Macro: Convert a pixel field from int to float type.

double gan_pixel_i_to_d (int x)
 Macro: Convert a pixel field from int to double type.

Gan_Bool gan_image_convert_pixel_q (Gan_Pixel *inpix, Gan_ImageFormat format, Gan_Type type, Gan_Pixel *outpix)
 Macro: Convert pixel.

Gan_Bool gan_image_convert_pixel_i (Gan_Pixel *pix, Gan_ImageFormat format, Gan_Type type)
 Macro: Convert pixel in-place.

Gan_Bool gan_image_offset_pixel_i (Gan_Pixel *pixel, double offset)
 Macro: Offset pixel in-place.

Gan_Bool gan_image_scale_pixel_i (Gan_Pixel *pixel, double scale)
 Macro: Scale pixel in-place.

Gan_Bool gan_image_divide_pixel_i (Gan_Pixel *pixel, double scale)
 Macro: Divide pixel by scalar pixel in-place.


Detailed Description

Module: Image pixel definitions and functions

Part of: Gandalf Library

Revision: Last edited: Author:

Copyright: (c) 2000 Imagineer Software Limited


Function Documentation

Gan_Bool gan_image_convert_pixel Gan_Pixel   inpix,
Gan_ImageFormat    format,
Gan_Type    type,
Gan_Pixel   outpix,
int *    error_code
 

Convert a pixel to the given format and type.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
Convert pixel inpix to the given format and type, writing the result into pixel outpix. If error_code is not NULL, an error condition is returned in the error_code pointer; otherwise error_code is NULL and the Gandalf error handler gan_err_register() is invoked. In either case GAN_FALSE is returned.

double gan_image_convert_scale Gan_Type    gtFromType,
Gan_Type    gtToType
 

Return the scaling involved in converting a pixel from one type to another.

Gan_Bool gan_image_divide_pixel_q Gan_Pixel   pixel,
double    scale,
Gan_Pixel   scaled_pixel
 

Divide pixel values by scalar.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
Divide each channel of pixel by the given scale factor, writing the result into scaled_pixel.

Gan_Bool gan_image_fill_zero_pixel Gan_Pixel   pixel
 

Fill a pixel with zero value(s).

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
You should set the format and type of the pixel before calling this function.

Gan_Bool gan_image_offset_pixel_q Gan_Pixel   pixel,
double    offset,
Gan_Pixel   offset_pixel
 

Offset pixel values.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
Add each channel of pixel to the given offset factor, writing the result into offset_pixel.

Gan_Bool gan_image_scale_pixel_q Gan_Pixel   pixel,
double    scale,
Gan_Pixel   scaled_pixel
 

Scale pixel values.

Returns:
GAN_TRUE on success, GAN_FALSE on failure.
Multiply each channel of pixel by the given scale factor, writing the result into scaled_pixel.

double gan_pixel_rgbad_to_yd Gan_RGBAPixel_d   rgba
 

Convert RGBA double pixel to grey-level double pixel.

float gan_pixel_rgbaf_to_yf Gan_RGBAPixel_f   rgba
 

Convert RGBA float pixel to grey-level float pixel.

unsigned char gan_pixel_rgbauc_to_yuc Gan_RGBAPixel_uc   rgba
 

Convert RGBA unsigned char pixel to grey-level unsigned char pixel.

unsigned int gan_pixel_rgbauc_to_yui Gan_RGBAPixel_uc   rgba
 

Convert RGBA unsigned char pixel to grey-level unsigned int pixel.

unsigned short gan_pixel_rgbauc_to_yus Gan_RGBAPixel_uc   rgba
 

Convert RGBA unsigned char pixel to grey-level unsigned short pixel.

float gan_pixel_rgbaui_to_yf Gan_RGBAPixel_ui   rgba
 

Convert RGBA float pixel to grey-level float pixel.

unsigned char gan_pixel_rgbaus_to_yuc Gan_RGBAPixel_us   rgba
 

Convert RGBA unsigned short pixel to grey-level unsigned char pixel.

unsigned short gan_pixel_rgbaus_to_yus Gan_RGBAPixel_us   rgba
 

Convert RGBA unsigned short pixel to grey-level unsigned short pixel.

double gan_pixel_rgbd_to_yd Gan_RGBPixel_d   rgb
 

Convert RGB double pixel to grey-level double pixel.

float gan_pixel_rgbf_to_yf Gan_RGBPixel_f   rgb
 

Convert RGB float pixel to grey-level float pixel.

unsigned char gan_pixel_rgbuc_to_yuc Gan_RGBPixel_uc   rgb
 

Convert RGB unsigned char pixel to grey-level unsigned char pixel.

unsigned int gan_pixel_rgbuc_to_yui Gan_RGBPixel_uc   rgb
 

Convert RGB unsigned char pixel to grey-level unsigned int pixel.

unsigned short gan_pixel_rgbuc_to_yus Gan_RGBPixel_uc   rgb
 

Convert RGB unsigned char pixel to grey-level unsigned short pixel.

float gan_pixel_rgbui_to_yf Gan_RGBPixel_ui   rgb
 

Convert RGB float pixel to grey-level float pixel.

unsigned char gan_pixel_rgbus_to_yuc Gan_RGBPixel_us   rgb
 

Convert RGB unsigned short pixel to grey-level unsigned char pixel.

unsigned short gan_pixel_rgbus_to_yus Gan_RGBPixel_us   rgb
 

Convert RGB unsigned short pixel to grey-level unsigned short pixel.


Generated on Mon Oct 13 16:14:45 2003 by doxygen1.3-rc1