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

CIccCLUT Class Reference

#include <IccTagLut.h>

List of all members.

Public Member Functions

 CIccCLUT (icUInt8Number nInputChannels, icUInt8Number nOutputChannels, icUInt8Number nPrecision=2)
 CIccCLUT (const CIccCLUT &ICLUT)
CIccCLUToperator= (const CIccCLUT &CLUTClass)
virtual ~CIccCLUT ()
void Init (icUInt8Number nGridPoints)
void Init (icUInt8Number *pGridPoints)
bool ReadData (icUInt32Number size, CIccIO *pIO, icUInt8Number nPrecision)
bool WriteData (CIccIO *pIO, icUInt8Number nPrecision)
bool Read (icUInt32Number size, CIccIO *pIO)
bool Write (CIccIO *pIO)
void DumpLut (std::string &sDescription, const icChar *szName, icColorSpaceSignature csInput, icColorSpaceSignature csOutput)
icFloatNumberoperator[] (int index)
icFloatNumberGetData (int index)
icUInt32Number NumPoints () const
icUInt8Number GridPoints () const
icUInt8Number GridPoint (int index) const
icUInt32Number GetDimSize (icUInt8Number nIndex) const
icUInt8Number GetInputDim () const
icUInt8Number GetOutputChannels () const
void Begin ()
void Interp3dTetra (icFloatNumber *destPixel, const icFloatNumber *srcPixel)
void Interp3d (icFloatNumber *destPixel, const icFloatNumber *srcPixel)
void Interp4d (icFloatNumber *destPixel, const icFloatNumber *srcPixel)
void Interp5d (icFloatNumber *destPixel, const icFloatNumber *srcPixel)
void Interp6d (icFloatNumber *destPixel, const icFloatNumber *srcPixel)
void InterpND (icFloatNumber *destPixel, const icFloatNumber *srcPixel)
void Iterate (IIccCLUTExec *pExec)
icValidateStatus Validate (icTagTypeSignature sig, std::string &sReport, const CIccProfile *pProfile=NULL) const
void SetClipFunc (icCLUTCLIPFUNC ClipFunc)
icUInt8Number GetPrecision ()

Protected Member Functions

void Iterate (std::string &sDescription, icUInt8Number nIndex, icUInt32Number nPos)
void SubIterate (IIccCLUTExec *pExec, icUInt8Number nIndex, icUInt32Number nPos)

Protected Attributes

icCLUTCLIPFUNC UnitClip
icUInt8Number m_nReserved2 [3]
icUInt8Number m_nInput
icUInt8Number m_nOutput
icUInt8Number m_nPrecision
icUInt8Number m_GridPoints [16]
icUInt32Number m_nNumPoints
icUInt32Number m_DimSize [16]
icFloatNumberm_pData
icUInt8Number m_GridAdr [16]
icFloatNumber m_fGridAdr [16]
icCharm_pOutText
icCharm_pVal
icColorSpaceSignature m_csInput
icColorSpaceSignature m_csOutput
icUInt8Number m_MaxGridPoint [16]
icUInt32Number n000
icUInt32Number n001
icUInt32Number n010
icUInt32Number n011
icUInt32Number n100
icUInt32Number n101
icUInt32Number n110
icUInt32Number n111
icUInt32Number n1000
icUInt32Number n10000
icUInt32Number n100000
icUInt32Numberm_nOffset
icFloatNumberm_g
icFloatNumberm_s
icFloatNumberm_df
icUInt32Numberm_ig
icUInt32Number m_nNodes
icUInt32Number m_nPower [16]


Detailed Description

Class: CIccCLUT

Purpose: The base multidimensional color look-up table (CLUT) class


Constructor & Destructor Documentation

CIccCLUT::CIccCLUT icUInt8Number  nInputChannels,
icUInt8Number  nOutputChannels,
icUInt8Number  nPrecision = 2
 

Name: CIccCLUT::CIccCLUT

Purpose: Constructor

Args: nInputChannels = number of input channels, nOutputChannels = number of output channels

CIccCLUT::CIccCLUT const CIccCLUT ICLUT  ) 
 

Name: CIccCLUT::CIccCLUT

Purpose: Copy Constructor

Args: ICLUT = The CIccCLUT object to be copied

CIccCLUT::~CIccCLUT  )  [virtual]
 

Name: CIccCLUT::~CIccCLUT

Purpose: Destructor


Member Function Documentation

void CIccCLUT::Begin  ) 
 

Name: CIccCLUT::Begin

Purpose: Initializes the CLUT. Must be called before Apply().

void CIccCLUT::DumpLut std::string &  sDescription,
const icChar szName,
icColorSpaceSignature  csInput,
icColorSpaceSignature  csOutput
 

Name: CIccCLUT::DumpLut

Purpose: Dump data associated with the tag to a string.

Args: sDescription = string to concatenate tag dump to, szName = name of the LUT to be printed, csInput = color space signature of the input data, csOutput = color space signature of the output data

icFloatNumber* CIccCLUT::GetData int  index  )  [inline]
 

icUInt32Number CIccCLUT::GetDimSize icUInt8Number  nIndex  )  const [inline]
 

icUInt8Number CIccCLUT::GetInputDim  )  const [inline]
 

icUInt8Number CIccCLUT::GetOutputChannels  )  const [inline]
 

icUInt8Number CIccCLUT::GetPrecision  )  [inline]
 

icUInt8Number CIccCLUT::GridPoint int  index  )  const [inline]
 

icUInt8Number CIccCLUT::GridPoints  )  const [inline]
 

void CIccCLUT::Init icUInt8Number pGridPoints  ) 
 

Name: CIccCLUT::Init

Purpose: Initializes and sets the size of the CLUT

Args: pGridPoints = number of grid points in the CLUT

void CIccCLUT::Init icUInt8Number  nGridPoints  ) 
 

Name: CIccCLUT::Init

Purpose: Initializes and sets the size of the CLUT

Args: nGridPoints = number of grid points in the CLUT

void CIccCLUT::Interp3d icFloatNumber destPixel,
const icFloatNumber srcPixel
 

Name: CIccCLUT::Interp3d

Purpose: Three dimensional interpolation function

Args: Pixel = Pixel value to be found in the CLUT. Also used to store the result.

void CIccCLUT::Interp3dTetra icFloatNumber destPixel,
const icFloatNumber srcPixel
 

Name: CIccCLUT::Interp3dTetra

Purpose: Tetrahedral interpolation function

Args: Pixel = Pixel value to be found in the CLUT. Also used to store the result.

void CIccCLUT::Interp4d icFloatNumber destPixel,
const icFloatNumber srcPixel
 

Name: CIccCLUT::Interp4d

Purpose: Four dimensional interpolation function

Args: Pixel = Pixel value to be found in the CLUT. Also used to store the result.

void CIccCLUT::Interp5d icFloatNumber destPixel,
const icFloatNumber srcPixel
 

Name: CIccCLUT::Interp5d

Purpose: Five dimensional interpolation function

Args: Pixel = Pixel value to be found in the CLUT. Also used to store the result.

void CIccCLUT::Interp6d icFloatNumber destPixel,
const icFloatNumber srcPixel
 

Name: CIccCLUT::Interp6d

Purpose: Six dimensional interpolation function

Args: Pixel = Pixel value to be found in the CLUT. Also used to store the result.

void CIccCLUT::InterpND icFloatNumber destPixel,
const icFloatNumber srcPixel
 

Name: CIccCLUT::InterpND

Purpose: Generic N-dimensional interpolation function

Args: Pixel = Pixel value to be found in the CLUT. Also used to store the result.

void CIccCLUT::Iterate std::string &  sDescription,
icUInt8Number  nIndex,
icUInt32Number  nPos
[protected]
 

Name: CIccCLUT::Iterate

Purpose: Iterate through the CLUT to dump the data

Args: sDescription = string to concatenate data dump to, nIndex = the channel number, nPos = the current position in the CLUT

void CIccCLUT::Iterate IIccCLUTExec pExec  ) 
 

Name: CIccCLUT::Iterate

Purpose: Iterate through the CLUT to get the data and execute PixelOp

Args: pExec = pointer to the IIccCLUTExec object that implements the IIccCLUTExec::Apply() function

icUInt32Number CIccCLUT::NumPoints  )  const [inline]
 

CIccCLUT & CIccCLUT::operator= const CIccCLUT CLUTTag  ) 
 

Name: CIccCLUT::operator=

Purpose: Copy Operator

Args: CLUTTag = The CIccCLUT object to be copied

icFloatNumber& CIccCLUT::operator[] int  index  )  [inline]
 

bool CIccCLUT::Read icUInt32Number  size,
CIccIO pIO
 

Name: CIccCLUT::Read

Purpose: Read in the tag contents into a data block

Args: size - # of bytes in tag, pIO - IO object to read tag from

Return: true = successful, false = failure

bool CIccCLUT::ReadData icUInt32Number  size,
CIccIO pIO,
icUInt8Number  nPrecision
 

Name: CIccCLUT::ReadData

Purpose: Reads the CLUT data points into the data buffer

Args: size = # of bytes in the tag, pIO = IO object to read data from, nPrecision = data precision (8bit encoded as 1 or 16bit encoded as 2)

Return: true = data read succesfully, false = read data failed

void CIccCLUT::SetClipFunc icCLUTCLIPFUNC  ClipFunc  )  [inline]
 

void CIccCLUT::SubIterate IIccCLUTExec pExec,
icUInt8Number  nIndex,
icUInt32Number  nPos
[protected]
 

Name: CIccCLUT::SubIterate

Purpose: Iterate through the CLUT to get the data

Args: pExec = pointer to the IIccCLUTExec object that implements the IIccCLUTExec::Apply() function, nIndex = the channel number, nPos = the current position in the CLUT

icValidateStatus CIccCLUT::Validate icTagTypeSignature  sig,
std::string &  sReport,
const CIccProfile pProfile = NULL
const
 

Name: CIccCLUT::Validate

Purpose: Check tag data validity.

Args: sig = signature of tag being validated, sReport = String to add report information to

Return: icValidateStatusOK if valid, or other error status.

bool CIccCLUT::Write CIccIO pIO  ) 
 

Name: CIccCLUT::Write

Purpose: Write the tag to a file

Args: pIO - The IO object to write tag to.

Return: true = succesful, false = failure

bool CIccCLUT::WriteData CIccIO pIO,
icUInt8Number  nPrecision
 

Name: CIccCLUT::WriteData

Purpose: Writes the CLUT data points from the data buffer

Args: pIO = IO object to write data to, nPrecision = data precision (8bit encoded as 1 or 16bit encoded as 2)

Return: true = data written succesfully, false = write operation failed


Member Data Documentation

icColorSpaceSignature CIccCLUT::m_csInput [protected]
 

icColorSpaceSignature CIccCLUT::m_csOutput [protected]
 

icFloatNumber * CIccCLUT::m_df [protected]
 

icUInt32Number CIccCLUT::m_DimSize[16] [protected]
 

icFloatNumber CIccCLUT::m_fGridAdr[16] [protected]
 

icFloatNumber* CIccCLUT::m_g [protected]
 

icUInt8Number CIccCLUT::m_GridAdr[16] [protected]
 

icUInt8Number CIccCLUT::m_GridPoints[16] [protected]
 

icUInt32Number* CIccCLUT::m_ig [protected]
 

icUInt8Number CIccCLUT::m_MaxGridPoint[16] [protected]
 

icUInt8Number CIccCLUT::m_nInput [protected]
 

icUInt32Number CIccCLUT::m_nNodes [protected]
 

icUInt32Number CIccCLUT::m_nNumPoints [protected]
 

icUInt32Number* CIccCLUT::m_nOffset [protected]
 

icUInt8Number CIccCLUT::m_nOutput [protected]
 

icUInt32Number CIccCLUT::m_nPower[16] [protected]
 

icUInt8Number CIccCLUT::m_nPrecision [protected]
 

icUInt8Number CIccCLUT::m_nReserved2[3] [protected]
 

icFloatNumber* CIccCLUT::m_pData [protected]
 

icChar* CIccCLUT::m_pOutText [protected]
 

icChar * CIccCLUT::m_pVal [protected]
 

icFloatNumber * CIccCLUT::m_s [protected]
 

icUInt32Number CIccCLUT::n000 [protected]
 

icUInt32Number CIccCLUT::n001 [protected]
 

icUInt32Number CIccCLUT::n010 [protected]
 

icUInt32Number CIccCLUT::n011 [protected]
 

icUInt32Number CIccCLUT::n100 [protected]
 

icUInt32Number CIccCLUT::n1000 [protected]
 

icUInt32Number CIccCLUT::n10000 [protected]
 

icUInt32Number CIccCLUT::n100000 [protected]
 

icUInt32Number CIccCLUT::n101 [protected]
 

icUInt32Number CIccCLUT::n110 [protected]
 

icUInt32Number CIccCLUT::n111 [protected]
 

icCLUTCLIPFUNC CIccCLUT::UnitClip [protected]
 


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