SampleICC Main srcforge
Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

CIccPCS Class Reference

#include <IccCmm.h>

List of all members.

Public Member Functions

 CIccPCS ()
virtual ~CIccPCS ()
void Reset (icColorSpaceSignature StartSpace, bool bUseLegacyPCS=false)
virtual const icFloatNumberCheck (const icFloatNumber *SrcPixel, CIccXform *pXform)
void CheckLast (icFloatNumber *SrcPixel, icColorSpaceSignature Space)

Static Public Member Functions

void LabToXyz (icFloatNumber *Dst, const icFloatNumber *Src, bool bNoClip=false)
void XyzToLab (icFloatNumber *Dst, const icFloatNumber *Src, bool bNoClip=false)
void Lab2ToXyz (icFloatNumber *Dst, const icFloatNumber *Src, bool bNoClip=false)
void XyzToLab2 (icFloatNumber *Dst, const icFloatNumber *Src, bool bNoClip=false)
icFloatNumber NegClip (icFloatNumber v)
icFloatNumber UnitClip (icFloatNumber v)
void Lab2ToLab4 (icFloatNumber *Dst, const icFloatNumber *Src, bool bNoclip=false)
void Lab4ToLab2 (icFloatNumber *Dst, const icFloatNumber *Src)

Protected Attributes

bool m_bIsV2Lab
icColorSpaceSignature m_Space
icFloatNumber m_Convert [3]


Detailed Description

Type: Class

Purpose: Independant PCS class to do PCS based calculations. This is a class for managing PCS colorspace transformations. There are two important categories V2 <-> V4, and Lab <-> XYZ.


Constructor & Destructor Documentation

CIccPCS::CIccPCS  ) 
 

Class CIccPCS Constructor

Purpose: This is a class constructor.

virtual CIccPCS::~CIccPCS  )  [inline, virtual]
 


Member Function Documentation

const icFloatNumber * CIccPCS::Check const icFloatNumber SrcPixel,
CIccXform pXform
[virtual]
 

Name: CIccPCS::Check

Purpose: This is called before the apply of each profile's xform to adjust the PCS to the xform's needed PCS.

Args: SrcPixel = source pixel data (this may need adjusting), pXform = the xform that who's Apply function will shortly be called

Return: SrcPixel or ptr to adjusted pixel data (we dont want to modify the source data).

void CIccPCS::CheckLast icFloatNumber Pixel,
icColorSpaceSignature  DestSpace
 

Name: CIccPCS::CheckLast

Purpose: Called after all xforms are applied to adjust PCS to final space if needed Note: space will always be V4.

Args: Pixel = Pixel data, DestSpace = destination color space

void CIccPCS::Lab2ToLab4 icFloatNumber Dst,
const icFloatNumber Src,
bool  bNoClip = false
[static]
 

Name: CIccPCS::Lab2ToLab4

Purpose: Convert version 2 Lab to version 4 Lab

void CIccPCS::Lab2ToXyz icFloatNumber Dst,
const icFloatNumber Src,
bool  bNoClip = false
[static]
 

Name: CIccPCS::Lab2ToXyz

Purpose: Convert version 2 Lab to XYZ

void CIccPCS::Lab4ToLab2 icFloatNumber Dst,
const icFloatNumber Src
[static]
 

Name: CIccPCS::Lab4ToLab2

Purpose: Convert version 4 Lab to version 2 Lab

void CIccPCS::LabToXyz icFloatNumber Dst,
const icFloatNumber Src,
bool  bNoClip = false
[static]
 

Name: CIccPCS::LabToXyz

Purpose: Convert Lab to XYZ

icFloatNumber CIccPCS::NegClip icFloatNumber  v  )  [static]
 

Name: CIccPCS::NegClip

Purpose: Convert a double to an icUInt16Number with clipping of negative numbers

void CIccPCS::Reset icColorSpaceSignature  StartSpace,
bool  bUseLegacyPCS = false
 

Name: CIccPCS::Reset

Purpose: This is called with the initial color space and a bool argument which is true if the PCS is version 2.

Args: Startpsace = Starting Colorspace bUseLegacyPCS = legacy PCS flag

icFloatNumber CIccPCS::UnitClip icFloatNumber  v  )  [static]
 

Name: CIccPCS::UnitClip

Purpose: Convert a double to an icUInt16Number with clipping

void CIccPCS::XyzToLab icFloatNumber Dst,
const icFloatNumber Src,
bool  bNoClip = false
[static]
 

Name: CIccPCS::XyzToLab

Purpose: Convert XYZ to Lab

void CIccPCS::XyzToLab2 icFloatNumber Dst,
const icFloatNumber Src,
bool  bNoClip = false
[static]
 

Name: CIccPCS::XyzToLab2

Purpose: Convert XYZ to version 2 Lab


Member Data Documentation

bool CIccPCS::m_bIsV2Lab [protected]
 

icFloatNumber CIccPCS::m_Convert[3] [protected]
 

icColorSpaceSignature CIccPCS::m_Space [protected]
 


The documentation for this class was generated from the following files:
Generated on Tue Jun 26 17:51:45 2007 for IccProfLib by  doxygen 1.3.9.1