gamma.h File Reference
 
 
 
gamma.h File Reference

This reference page is linked to from the following overview topics: Gamma Preferences.


#include "maxheap.h"
#include <WTypes.h>
#include "maxtypes.h"
#include "coreexp.h"
#include "color.h"

Classes

class   GammaMgr
class   GamConvert16
class   GamConvert8

Defines

#define  WRDMAX   65535
#define  FWRDMAX   65535.0f
#define  RCBITS   13
#define  RCOLN   (1<<RCBITS)
#define  RCMAX   (RCOLN-1)
#define  FRCMAX   ((float)RCMAX)
#define  RCHALF   (RCOLN>>1)
#define  RCSH   (RCBITS-8)
#define  RCSH16   (16-RCBITS)
#define  RCFRACMASK   ((ulong)((1<<RCSH)-1))
#define  RC_SCL   (1<<RCSH)
#define  RC_SCLHALF   (1<<(RCSH-1))
#define  FRC_SCL   ((float)RC_SCL)
#define  RCSHMASK   (0xffffffffL<<RCSH)
#define  RCSHMAX   (0xffL<<RCSH)
#define  GAMMA_NTSC   2.2f
#define  GAMMA_PAL   2.8f
#define  GAMMA16to8(b)   gammaMgr.disp_gamtabw[b>>RCSH16]

Functions

COLORREF  gammaCorrect (DWORD c)
UBYTE  gammaCorrect (UBYTE b)
CoreExport void  BuildGammaTab8 (UBYTE gamtab[256], float gamma, int onoff=TRUE)
CoreExport void  BuildGammaTab8 (UWORD gamtab[256], float gamma, int onoff=TRUE)
CoreExport void  BuildGammaTab (UBYTE gamtab[RCOLN], float gamma, int onoff=TRUE)
CoreExport void  BuildGammaTab (UWORD gamtab[RCOLN], float gamma, int onoff=TRUE)
CoreExport float  gammaCorrect (float v, float gamma)
CoreExport float  deGammaCorrect (float v, float gamma)
CoreExport UBYTE  gammaCorrect (UBYTE v, float gamma)
CoreExport UBYTE  deGammaCorrect (UBYTE v, float gamma)
CoreExport UWORD  gammaCorrect (UWORD c, float gamma)
CoreExport UWORD  deGammaCorrect (UWORD c, float gamma)

Variables

CoreExport GammaMgr  gammaMgr

Define Documentation

#define WRDMAX   65535
#define FWRDMAX   65535.0f
#define RCBITS   13
#define RCOLN   (1<<RCBITS)
#define RCMAX   (RCOLN-1)
#define FRCMAX   ((float)RCMAX)
#define RCHALF   (RCOLN>>1)
#define RCSH   (RCBITS-8)
#define RCSH16   (16-RCBITS)
#define RCFRACMASK   ((ulong)((1<<RCSH)-1))
#define RC_SCL   (1<<RCSH)
#define RC_SCLHALF   (1<<(RCSH-1))
#define FRC_SCL   ((float)RC_SCL)
#define RCSHMASK   (0xffffffffL<<RCSH)
#define RCSHMAX   (0xffL<<RCSH)
#define GAMMA_NTSC   2.2f
#define GAMMA_PAL   2.8f
#define GAMMA16to8 (   b )    gammaMgr.disp_gamtabw[b>>RCSH16]

Function Documentation

COLORREF gammaCorrect ( DWORD  c ) [inline]
Remarks:
Returns a gamma corrected version of the specified color using the display gamma setting.
Parameters:
DWORD c

The color to gamma correct.
{ return gammaMgr.DisplayGammaCorrect(c); }
UBYTE gammaCorrect ( UBYTE  b ) [inline]
Remarks:
Returns a gamma corrected version of the specified color using the display gamma setting.
Parameters:
UBYTE b

The color to gamma correct.
{ return gammaMgr.disp_gamtab[b]; }
CoreExport void BuildGammaTab8 ( UBYTE  gamtab[256],
float  gamma,
int  onoff = TRUE 
)
Remarks:
Builds the gamma table that maps 8->8.
Parameters:
UBYTE gamtab[256]

The table to build.

float gamma

The gamma setting.

int onoff=TRUE

TRUE to enable; FALSE to disable.
CoreExport void BuildGammaTab8 ( UWORD  gamtab[256],
float  gamma,
int  onoff = TRUE 
)
Remarks:
Builds a gamma table that maps 8->16.
Parameters:
UBYTE gamtab[256]

The table to build.

float gamma

The gamma setting.

int onoff=TRUE

TRUE to enable; FALSE to disable.
CoreExport void BuildGammaTab ( UBYTE  gamtab[RCOLN],
float  gamma,
int  onoff = TRUE 
)
Remarks:
Build a gamma table that maps RCBITS->8.
Parameters:
UBYTE gamtab[RCOLN]

The table to build.

float gamma

The gamma setting.

int onoff=TRUE

TRUE to enable; FALSE to disable.
CoreExport void BuildGammaTab ( UWORD  gamtab[RCOLN],
float  gamma,
int  onoff = TRUE 
)
Remarks:
Build a gamma table that maps RCBITS->16.
Parameters:
UWORD gamtab[RCOLN]

The table to build.

float gamma

The gamma setting.

int onoff=TRUE

TRUE to enable; FALSE to disable.
CoreExport float gammaCorrect ( float  v,
float  gamma 
)
Remarks:
Gamma corrects the value passed using the specified gamma setting.
Parameters:
float v

The value to gamma correct.

float gamma

The gamma setting.
Returns:
The gamma corrected value.
CoreExport float deGammaCorrect ( float  v,
float  gamma 
)
Remarks:
De-gamma corrects the value passed using the specified gamma setting.
Parameters:
float v

The value to de-gamma correct.

float gamma

The gamma setting.
CoreExport UBYTE gammaCorrect ( UBYTE  v,
float  gamma 
)
Remarks:
Gamma corrects the value passed using the specified gamma setting.
Parameters:
UBYTE v

The value to gamma correct.

float gamma

The gamma setting.
Returns:
The gamma corrected value.
CoreExport UBYTE deGammaCorrect ( UBYTE  v,
float  gamma 
)
Remarks:
De-gamma corrects the value passed using the specified gamma setting.
Parameters:
UBYTE v

The value to de-gamma correct.

float gamma

The gamma setting.
CoreExport UWORD gammaCorrect ( UWORD  c,
float  gamma 
)
Remarks:
Gamma corrects the value passed using the specified gamma setting.
Parameters:
UWORD c

The value to gamma correct.

float gamma

The gamma setting.
Returns:
The gamma corrected value.
CoreExport UWORD deGammaCorrect ( UWORD  c,
float  gamma 
)
Remarks:
De-gamma corrects the value passed using the specified gamma setting.
Parameters:
UWORD c

The value to de-gamma correct.

float gamma

The gamma setting.

Variable Documentation