Hoyt's FORK of DemoIccMAX 2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
CIccStructUnknown Class Reference

Class: CIccStructUnknown. More...

#include <IccStructBasic.h>

+ Inheritance diagram for CIccStructUnknown:
+ Collaboration diagram for CIccStructUnknown:

Public Member Functions

 CIccStructUnknown (CIccTagStruct *pTagStruct=NULL)
 
virtual void Describe (std::string &sDescription, int nVerboseness) const
 
virtual const icCharGetClassName () const
 
virtual const icCharGetDisplayName () const
 
CIccTagGetElem (icSignature sigElem) const
 
virtual std::string GetElemName (icSignature sigElem) const
 
virtual icSignature GetElemSig (const icChar *szElemName) const
 
virtual IIccStructNewCopy (CIccTagStruct *pNewTagStruct) const
 
virtual icValidateStatus Validate (std::string sigPath, std::string &sReport, const CIccProfile *pProfile=NULL) const
 
virtual ~CIccStructUnknown ()
 
- Public Member Functions inherited from IIccStruct
CIccTagStructGetTagStruct ()
 
virtual ~IIccStruct ()
 

Protected Attributes

SIccElemNameSigm_pElemNameSigTable
 
- Protected Attributes inherited from IIccStruct
CIccTagStructm_pTagStruct
 

Additional Inherited Members

- Protected Member Functions inherited from IIccStruct
TagEntryList * getTagEntries () const
 

Detailed Description

Class: CIccStructUnknown.

Purpose: The Unknown struct handler

Definition at line 95 of file IccStructBasic.h.

Constructor & Destructor Documentation

◆ CIccStructUnknown()

CIccStructUnknown::CIccStructUnknown ( CIccTagStruct * pTagStruct = NULL)

Definition at line 94 of file IccStructBasic.cpp.

95{
96 m_pTagStruct = pTagStruct;
98}
SIccElemNameSig * m_pElemNameSigTable
CIccTagStruct * m_pTagStruct

◆ ~CIccStructUnknown()

CIccStructUnknown::~CIccStructUnknown ( )
virtual

Definition at line 101 of file IccStructBasic.cpp.

102{
103
104}

Member Function Documentation

◆ Describe()

void CIccStructUnknown::Describe ( std::string & sDescription,
int nVerboseness ) const
virtual

Reimplemented from IIccStruct.

Definition at line 115 of file IccStructBasic.cpp.

116{
117 char buf[256];
118 CIccInfo info;
119 int n;
120
121 if (m_pTagStruct) {
122 TagEntryList *entries = m_pTagStruct->GetElemList();
123 TagEntryList::iterator i;
124
125 for (n=0, i=entries->begin(); i!=entries->end(); n++, i++) {
126 if (i->pTag) {
127 if (n)
128 sDescription += "\n";
129 sprintf(buf, "Begin SubTag(%s)\n", GetElemName(i->TagInfo.sig).c_str());
130 sDescription += buf;
131 i->pTag->Describe(sDescription, nVerboseness);
132 sprintf(buf, "End SubTag(%s)\n", GetElemName(i->TagInfo.sig).c_str());
133 sDescription += buf;
134 }
135 }
136 }
137}
Type: Class.
Definition IccUtil.h:303
virtual std::string GetElemName(icSignature sigElem) const
TagEntryList * GetElemList()

Referenced by CIccTagStruct::Describe().

+ Here is the caller graph for this function:

◆ GetClassName()

virtual const icChar * CIccStructUnknown::GetClassName ( ) const
inlinevirtual

◆ GetDisplayName()

virtual const icChar * CIccStructUnknown::GetDisplayName ( ) const
inlinevirtual

◆ GetElem()

CIccTag * CIccStructUnknown::GetElem ( icSignature sigElem) const

Definition at line 172 of file IccStructBasic.cpp.

173{
174 if (!m_pTagStruct)
175 return NULL;
176
177 return m_pTagStruct->FindElem(sigElem);
178}
CIccTag * FindElem(icSignature sig)
Name: CIccTagStruct::FindElem.

Referenced by CIccArrayNamedColor::FindDeviceColor(), CIccArrayNamedColor::FindPcsColor(), and CIccArrayNamedColor::FindSpectralColor().

+ Here is the caller graph for this function:

◆ GetElemName()

std::string CIccStructUnknown::GetElemName ( icSignature sigElem) const
virtual

Implements IIccStruct.

Definition at line 140 of file IccStructBasic.cpp.

141{
143 int i;
144 for (i = 0; m_pElemNameSigTable[i].szName; i++) {
145 if (m_pElemNameSigTable[i].nSig == sigElem)
146 return m_pElemNameSigTable[i].szName;
147 }
148 }
149
150 CIccInfo info;
151 std::string str;
152
153 str = "PrivateSubTag";
154 //str += info.GetSigName(sigElem);
155
156 return str;
157}
const icChar * szName

◆ GetElemSig()

icSignature CIccStructUnknown::GetElemSig ( const icChar * szElemName) const
virtual

Implements IIccStruct.

Definition at line 159 of file IccStructBasic.cpp.

160{
162 int i;
163 for (i = 0; m_pElemNameSigTable[i].szName; i++) {
164 if (!strcmp(m_pElemNameSigTable[i].szName, szElemName))
165 return m_pElemNameSigTable[i].nSig;
166 }
167 }
168
169 return (icSignature)0;
170}
const icChar * szName
icUInt32Number icSignature
icSignature nSig

References szName.

◆ NewCopy()

IIccStruct * CIccStructUnknown::NewCopy ( CIccTagStruct * pNewTagStruct) const
virtual

Implements IIccStruct.

Reimplemented in CIccStructBRDF, CIccStructColorantInfo, CIccStructColorEncodingParams, CIccStructMeasurementInfo, CIccStructNamedColor, CIccStructProfileInfo, and CIccStructTintZero.

Definition at line 107 of file IccStructBasic.cpp.

108{
109 CIccStructUnknown *rv = new CIccStructUnknown(pTagStruct);
110
111 return rv;
112}
Class: CIccStructUnknown.
CIccStructUnknown(CIccTagStruct *pTagStruct=NULL)

◆ Validate()

icValidateStatus CIccStructUnknown::Validate ( std::string sigPath,
std::string & sReport,
const CIccProfile * pProfile = NULL ) const
virtual

Implements IIccStruct.

Reimplemented in CIccStructBRDF, CIccStructColorantInfo, and CIccStructNamedColor.

Definition at line 181 of file IccStructBasic.cpp.

182{
184
185 TagEntryList *pList = getTagEntries();
186 if (pList) {
187 // Per Tag tests
188 TagEntryList::iterator i;
189 for (i = pList->begin(); i != pList->end(); i++) {
190 if (i->pTag)
191 rv = icMaxStatus(rv, i->pTag->Validate(sigPath + icGetSigPath(i->TagInfo.sig), sReport, pProfile));
192 }
193 }
194 else {
195 sReport += "Struct Handler not connected to CIccTagStruct object with valid sub-tags!";
196
198 }
199
200 return rv;
201}
icValidateStatus
Definition IccDefs.h:118
@ icValidateOK
Definition IccDefs.h:119
@ icValidateWarning
Definition IccDefs.h:120
icValidateStatus icMaxStatus(icValidateStatus s1, icValidateStatus s2)
Name: icMaxStatus.
Definition IccUtil.cpp:244
std::string icGetSigPath(icUInt32Number nSig)
Definition IccUtil.cpp:1191
TagEntryList * getTagEntries() const

References icGetSigPath(), icMaxStatus(), icValidateOK, and icValidateWarning.

Referenced by CIccStructBRDF::Validate(), CIccStructColorantInfo::Validate(), and CIccStructNamedColor::Validate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ m_pElemNameSigTable

SIccElemNameSig* CIccStructUnknown::m_pElemNameSigTable
protected

Definition at line 115 of file IccStructBasic.h.


The documentation for this class was generated from the following files: