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

CIccMBB Class Reference

#include <IccTagLut.h>

Inheritance diagram for CIccMBB:

CIccTag CIccTagLut16 CIccTagLut8 CIccTagLutAtoB CIccTagLutBtoA List of all members.

Public Member Functions

 CIccMBB ()
 CIccMBB (const CIccMBB &IMBB)
CIccMBBoperator= (const CIccMBB &IMBB)
virtual CIccTagNewCopy () const
virtual ~CIccMBB ()
virtual bool IsMBBType ()
virtual icUInt8Number GetPrecision ()
virtual bool IsInputMatrix ()
virtual bool UseLegacyPCS ()
bool IsInputB ()
void Cleanup ()
void Init (icUInt8Number nInputChannels, icUInt8Number nOutputChannels)
icUInt8Number InputChannels () const
icUInt8Number OutputChannels () const
virtual void Describe (std::string &sDescription)
virtual void SetColorSpaces (icColorSpaceSignature csInput, icColorSpaceSignature csOutput)
virtual icValidateStatus Validate (icTagSignature sig, std::string &sReport, const CIccProfile *pProfile=NULL)
LPIccCurveNewCurvesA ()
CIccCLUTNewCLUT (icUInt8Number nGridPoints, icUInt8Number nPrecision=2)
CIccCLUTNewCLUT (icUInt8Number *pGridPoints, icUInt8Number nPrecision=2)
CIccMatrixNewMatrix ()
LPIccCurveNewCurvesM ()
LPIccCurveNewCurvesB ()
CIccMatrixGetMatrix () const
CIccCLUTGetCLUT () const
LPIccCurveGetCurvesA () const
LPIccCurveGetCurvesB () const
LPIccCurveGetCurvesM () const

Protected Attributes

bool m_bInputMatrix
icUInt8Number m_nInput
icUInt8Number m_nOutput
icColorSpaceSignature m_csInput
icColorSpaceSignature m_csOutput



Detailed Description

Class: CIccMBB

Purpose: The Multi-dimensional Black Box (MBB) base class for lut8, lut16, lutA2B and lutB2A tag types

Constructor & Destructor Documentation

CIccMBB::CIccMBB  ) 

Name: CIccMBB::CIccMBB

Purpose: Constructor

CIccMBB::CIccMBB const CIccMBB IMBB  ) 

Name: CIccMBB::CIccMBB

Purpose: Copy Constructor

Args: IMBB = The CIccMBB object to be copied

CIccMBB::~CIccMBB  )  [virtual]

Name: CIccMBB::~CIccMBB

Purpose: Destructor

Member Function Documentation

void CIccMBB::Cleanup  ) 

Name: CIccMBB::Cleanup

Purpose: Frees the memory allocated to the object

void CIccMBB::Describe std::string &  sDescription  )  [virtual]

Name: CIccMBB::Describe

Purpose: Dump data associated with the tag to a string

Args: sDescription - string to concatenate tag dump to

Reimplemented from CIccTag.

CIccCLUT* CIccMBB::GetCLUT  )  const [inline]

LPIccCurve* CIccMBB::GetCurvesA  )  const [inline]

LPIccCurve* CIccMBB::GetCurvesB  )  const [inline]

LPIccCurve* CIccMBB::GetCurvesM  )  const [inline]

CIccMatrix* CIccMBB::GetMatrix  )  const [inline]

virtual icUInt8Number CIccMBB::GetPrecision  )  [inline, virtual]

void CIccMBB::Init icUInt8Number  nInputChannels,
icUInt8Number  nOutputChannels

Name: CIccMBB::Init

Purpose: Cleans up any prior memory and Initializes the object.

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

icUInt8Number CIccMBB::InputChannels  )  const [inline]

bool CIccMBB::IsInputB  )  [inline]

virtual bool CIccMBB::IsInputMatrix  )  [inline, virtual]

virtual bool CIccMBB::IsMBBType  )  [inline, virtual]

Reimplemented from CIccTag.

CIccCLUT * CIccMBB::NewCLUT icUInt8Number pGridPoints,
icUInt8Number  nPrecision = 2

Name: CIccMBB::NewCLUT

Purpose: Allocates memory for a new CLUT and initializes it

Args: pGridPoints = number of grid points in the CLUT

Return: Pointer to the CIccCLUT object

CIccCLUT * CIccMBB::NewCLUT icUInt8Number  nGridPoints,
icUInt8Number  nPrecision = 2

Name: CIccMBB::NewCLUT

Purpose: Allocates memory for a new CLUT and initializes it

Args: nGridPoints = number of grid points in the CLUT

Return: Pointer to the CIccCLUT object

virtual CIccTag* CIccMBB::NewCopy  )  const [inline, virtual]

Function: NewCopy(sDescription) Each derived tag will implement it's own NewCopy() function.

Parameter(s): none

Returns a new CIccTag object that is a copy of this object.

Reimplemented from CIccTag.

Reimplemented in CIccTagLut8, and CIccTagLut16.

LPIccCurve * CIccMBB::NewCurvesA  ) 

Name: CIccMBB::NewCurvesA

Purpose: Allocates memory for a new set of A-curves

Return: Pointer to the LPIccCurve object

LPIccCurve * CIccMBB::NewCurvesB  ) 

Name: CIccMBB::NewCurvesB

Purpose: Allocates memory for a new set of B-curves

Return: Pointer to the LPIccCurve object

LPIccCurve * CIccMBB::NewCurvesM  ) 

Name: CIccMBB::NewCurvesM

Purpose: Allocates memory for a new set of M-curves

Return: Pointer to the LPIccCurve object

CIccMatrix * CIccMBB::NewMatrix  ) 

Name: CIccMBB::NewMatrix

Purpose: Allocates memory for a new matrix

Return: Pointer to the CIccMatrix object

CIccMBB & CIccMBB::operator= const CIccMBB IMBB  ) 

Name: CIccMBB::operator=

Purpose: Copy Operator

Args: IMBB = The CIccMBB object to be copied

icUInt8Number CIccMBB::OutputChannels  )  const [inline]

void CIccMBB::SetColorSpaces icColorSpaceSignature  csInput,
icColorSpaceSignature  csOutput

Name: CIccMBB::SetColorSpaces

Purpose: Sets the input and output color spaces

Args: csInput = input color space signature, csOutput = output color space signature

Reimplemented in CIccTagLut8, and CIccTagLut16.

virtual bool CIccMBB::UseLegacyPCS  )  [inline, virtual]

Reimplemented in CIccTagLut16.

icValidateStatus CIccMBB::Validate icTagSignature  sig,
std::string &  sReport,
const CIccProfile pProfile = NULL

Name: CIccMBB::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.

Reimplemented in CIccTagLutAtoB, CIccTagLutBtoA, CIccTagLut8, and CIccTagLut16.

Friends And Related Function Documentation

friend class ICCPROFLIB_API CIccXform3DLut [friend]

friend class ICCPROFLIB_API CIccXform4DLut [friend]

friend class ICCPROFLIB_API CIccXformNDLut [friend]

Member Data Documentation

bool CIccMBB::m_bInputMatrix [protected]

CIccCLUT* CIccMBB::m_CLUT [protected]

icColorSpaceSignature CIccMBB::m_csInput [protected]

icColorSpaceSignature CIccMBB::m_csOutput [protected]

LPIccCurve* CIccMBB::m_CurvesA [protected]

LPIccCurve* CIccMBB::m_CurvesB [protected]

LPIccCurve* CIccMBB::m_CurvesM [protected]

CIccMatrix* CIccMBB::m_Matrix [protected]

icUInt8Number CIccMBB::m_nInput [protected]

icUInt8Number CIccMBB::m_nOutput [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