73#ifndef _ICCTAGCOMPOSITE_H
74#define _ICCTAGCOMPOSITE_H
82#ifdef USEREFICCMAXNAMESPACE
102 virtual void Describe(std::string &sDescription,
int nVerboseness)
const;
116 TagEntryList *getTagEntries()
const;
135 virtual void Describe(std::string &sDescription,
int nVerboseness)
const { }
174 virtual void Describe(std::string &sDescription,
int nVerboseness);
177 virtual bool Write(
CIccIO *pIO);
179 virtual icValidateStatus Validate(std::string sigPath, std::string &sReport,
const CIccProfile* pProfile=NULL)
const;
191 bool AreElemsUnique()
const;
202 IccTagEntry* GetElem(
CIccTag *pTag)
const;
204 bool LoadElem(IccTagEntry *pTagEntry,
CIccIO *pIO);
205 bool DetachElem(
CIccTag *pTag);
246 virtual void Describe(std::string &sDescription,
int nVerboseness);
249 virtual bool Write(
CIccIO *pIO);
251 virtual icValidateStatus Validate(std::string sigPath, std::string &sReport,
const CIccProfile* pProfile=NULL)
const;
282#ifdef USEREFICCMAXNAMESPACE
float icFloatNumber
All floating point operations/variables in IccProfLib use the icFloatNumber data type.
IIccArray * icGetTagArrayHandlerOfType(CIccTag *pTag, icArraySignature sig)
IIccArray * icGetTagArrayHandler(CIccTag *pTag)
IIccStruct * icGetTagStructHandlerOfType(CIccTag *pTag, icStructSignature sig)
IIccStruct * icGetTagStructHandler(CIccTag *pTag)
unsigned int icUInt32Number
icArraySignature m_sigArrayType
virtual CIccTag * NewCopy() const
Function: NewCopy(sDescription) Each derived tag will implement it's own NewCopy() function.
CIccTag * operator[](icUInt32Number index) const
static CIccTagArray * ParseMem(icUInt8Number *pMem, icUInt32Number size)
virtual const icChar * GetClassName() const
icUInt32Number GetSize() const
Returns the size of the data array.
virtual icTagTypeSignature GetType() const
Function: GetType()
virtual icArraySignature GetTagArrayType() const
TagEntryList * m_ElemEntries
static std::string GetElemName(icTagSignature sig, icStructSignature sigThis)
TagEntryList * GetElemList()
icStructSignature m_sigStructType
virtual icStructSignature GetTagStructType() const
virtual const icChar * GetClassName() const
icUInt32Number m_tagStart
virtual icTagTypeSignature GetType() const
Function: GetType()
virtual CIccTag * NewCopy() const
Function: NewCopy(sDescription) Each derived tag will implement it's own NewCopy() function.
CIccTagArray * GetTagArray()
virtual IIccArray * NewCopy(CIccTagArray *pNewTagArray) const =0
CIccTagArray * m_pTagArray
virtual icValidateStatus Validate(std::string sigPath, std::string &sReport, const CIccProfile *pProfile=NULL) const =0
virtual void Describe(std::string &sDescription, int nVerboseness) const
virtual const icChar * GetClassName() const =0
virtual const icChar * GetClassName() const =0
virtual IIccStruct * NewCopy(CIccTagStruct *pNewTagStruct) const =0
virtual std::string GetElemName(icSignature sigElem) const =0
CIccTagStruct * m_pTagStruct
virtual icValidateStatus Validate(std::string sigPath, std::string &sReport, const CIccProfile *pProfile=NULL) const =0
CIccTagStruct * GetTagStruct()
virtual icSignature GetElemSig(const icChar *szElemName) const =0
virtual const icChar * GetDisplayName() const =0