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

#include <IccMpeXml.h>

+ Inheritance diagram for CIccMpeXmlXYZToJab:
+ Collaboration diagram for CIccMpeXmlXYZToJab:

Public Member Functions

virtual const char * GetClassName () const
 
virtual IIccExtensionMpeGetExtension ()
 
virtual bool ParseXml (xmlNode *pNode, std::string &parseStr)
 
virtual bool ToXml (std::string &xml, std::string blanks="")
 
virtual ~CIccMpeXmlXYZToJab ()
 
- Public Member Functions inherited from CIccMpeXYZToJab
virtual void Apply (CIccApplyMpe *pApply, icFloatNumber *dstPixel, const icFloatNumber *srcPixel) const
 
 CIccMpeXYZToJab ()
 
 CIccMpeXYZToJab (const CIccMpeXYZToJab &cam)
 
virtual icElemTypeSignature GetType () const
 
virtual const icCharGetXformName () const
 
virtual CIccMultiProcessElementNewCopy () const
 
CIccMpeXYZToJaboperator= (const CIccMpeXYZToJab &cam)
 
virtual ~CIccMpeXYZToJab ()
 
- Public Member Functions inherited from CIccMpeCAM
virtual bool Begin (icElemInterp nInterp, CIccTagMultiProcessElement *pMPE)
 
virtual void Describe (std::string &sDescription, int nVerboseness)
 
CIccCamConverterGetCAM ()
 
virtual bool Read (icUInt32Number size, CIccIO *pIO)
 
void SetCAM (CIccCamConverter *pCAM)
 
virtual icValidateStatus Validate (std::string sigPath, std::string &sReport, const CIccTagMultiProcessElement *pMPE=NULL, const CIccProfile *pProfile=NULL) const
 Name: CIccProcessElement::Validate.
 
virtual bool Write (CIccIO *pIO)
 
virtual ~CIccMpeCAM ()
 
- Public Member Functions inherited from CIccMultiProcessElement
 CIccMultiProcessElement ()
 
virtual icAcsSignature GetBAcsSig ()
 
virtual icAcsSignature GetEAcsSig ()
 
virtual CIccApplyMpeGetNewApply (CIccApplyTagMpe *pApplyTag)
 Name: CIccMultiProcessElement::GetNewApply()
 
virtual bool IsAcs ()
 
virtual bool IsLateBinding () const
 
virtual bool IsLateBindingReflectance () const
 
virtual bool IsSupported ()
 
virtual icUInt16Number NumInputChannels () const
 
virtual icUInt16Number NumOutputChannels () const
 
virtual ~CIccMultiProcessElement ()
 
- Public Member Functions inherited from CIccMpeXml
virtual const char * GetExtClassName ()
 
virtual ~CIccMpeXml (void)
 

Additional Inherited Members

- Static Public Member Functions inherited from CIccMultiProcessElement
static CIccMultiProcessElementCreate (icElemTypeSignature sig)
 Name: CIccMultiProcessElement::Create.
 
- Public Attributes inherited from CIccMultiProcessElement
icUInt32Number m_nReserved
 
- Protected Member Functions inherited from CIccMpeCAM
 CIccMpeCAM ()
 
- Protected Attributes inherited from CIccMpeCAM
CIccCamConverterm_pCAM
 
- Protected Attributes inherited from CIccMultiProcessElement
icUInt16Number m_nInputChannels
 
icUInt16Number m_nOutputChannels
 

Detailed Description

Definition at line 244 of file IccMpeXml.h.

Constructor & Destructor Documentation

◆ ~CIccMpeXmlXYZToJab()

virtual CIccMpeXmlXYZToJab::~CIccMpeXmlXYZToJab ( )
inlinevirtual

Definition at line 247 of file IccMpeXml.h.

247{}

Member Function Documentation

◆ GetClassName()

virtual const char * CIccMpeXmlXYZToJab::GetClassName ( ) const
inlinevirtual

Reimplemented from CIccMpeXYZToJab.

Definition at line 249 of file IccMpeXml.h.

249{ return "CIccMpeXmlXYZToJab"; }

◆ GetExtension()

virtual IIccExtensionMpe * CIccMpeXmlXYZToJab::GetExtension ( )
inlinevirtual

Reimplemented from CIccMultiProcessElement.

Definition at line 251 of file IccMpeXml.h.

251{ return this; }

◆ ParseXml()

bool CIccMpeXmlXYZToJab::ParseXml ( xmlNode * pNode,
std::string & parseStr )
virtual

Implements CIccMpeXml.

Definition at line 2230 of file IccMpeXml.cpp.

2231{
2232 m_nInputChannels = atoi(icXmlAttrValue(pNode, "InputChannels"));
2233 m_nOutputChannels = atoi(icXmlAttrValue(pNode, "OutputChannels"));
2234
2235 if (m_nInputChannels!=3 || m_nOutputChannels!=3) {
2236 parseStr += "Invalid InputChannels or OutputChannels In XYZToJabElement\n";
2237 return false;
2238 }
2239 xmlNode *pChild = icXmlFindNode(pNode->children, "ColorAppearanceParams");
2240
2241 if (pChild) {
2242 CIccCamConverter *pCAM = new CIccCamConverter();
2243
2244 if (!icXmlParseColorAppearanceParams(pChild->children, parseStr, pCAM)) {
2245 delete pCAM;
2246 return false;
2247 }
2248
2249 SetCAM(pCAM);
2250 }
2251 else {
2252 parseStr += "Unable to find ColorAppearanceParams\n";
2253 return false;
2254 }
2255
2256 return true;
2257}
static bool icXmlParseColorAppearanceParams(xmlNode *pNode, std::string &parseStr, CIccCamConverter *pCam)
xmlNode * icXmlFindNode(xmlNode *pNode, const char *szNodeName)
const char * icXmlAttrValue(xmlAttr *attr, const char *szDefault)
void SetCAM(CIccCamConverter *pCAM)
icUInt16Number m_nOutputChannels
Definition IccTagMPE.h:192
icUInt16Number m_nInputChannels
Definition IccTagMPE.h:191

References icXmlAttrValue(), icXmlFindNode(), and icXmlParseColorAppearanceParams().

+ Here is the call graph for this function:

◆ ToXml()

bool CIccMpeXmlXYZToJab::ToXml ( std::string & xml,
std::string blanks = "" )
virtual

Implements CIccMpeXml.

Definition at line 2208 of file IccMpeXml.cpp.

2209{
2210 char line[256];
2211
2212 sprintf(line, "<XYZToJabElement InputChannels=\"%d\" OutputChannels=\"%d\"" , NumInputChannels(), NumOutputChannels());
2213 xml += blanks + line;
2214
2215 if (m_nReserved) {
2216 sprintf(line, " Reserved=\"%u\"", m_nReserved);
2217 xml += line;
2218 }
2219 xml += ">\n";
2220
2221 if (m_pCAM) {
2222 icXmlDumpColorAppearanceParams(xml, blanks+" ", m_pCAM);
2223 xml += blanks + "</XYZToJabElement>\n";
2224 }
2225
2226 return true;
2227}
static bool icXmlDumpColorAppearanceParams(std::string &xml, std::string blanks, CIccCamConverter *pCam)
CIccCamConverter * m_pCAM
virtual icUInt16Number NumInputChannels() const
Definition IccTagMPE.h:159
virtual icUInt16Number NumOutputChannels() const
Definition IccTagMPE.h:160
icUInt32Number m_nReserved
Definition IccTagMPE.h:188

References icXmlDumpColorAppearanceParams().

+ Here is the call graph for this function:

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