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

#include <IccTagXml.h>

+ Inheritance diagram for CIccTagXmlZipXml:
+ Collaboration diagram for CIccTagXmlZipXml:

Public Member Functions

 CIccTagXmlZipXml ()
 
 CIccTagXmlZipXml (const CIccTagXmlZipXml &ITT)
 
virtual const char * GetClassName () const
 
virtual IIccExtensionTagGetExtension ()
 
virtual CIccTagNewCopy () const
 Function: NewCopy(sDescription) Each derived tag will implement it's own NewCopy() function.
 
virtual bool ParseXml (xmlNode *pNode, std::string &parseStr)
 
virtual bool ToXml (std::string &xml, std::string blanks="")
 
virtual ~CIccTagXmlZipXml ()
 
- Public Member Functions inherited from CIccTagZipXml
 CIccTagZipXml ()
 
 CIccTagZipXml (const CIccTagZipXml &ITT)
 
virtual icTagTypeSignature GetType () const
 Function: GetType()
 
CIccTagZipXmloperator= (const CIccTagZipXml &TextTag)
 
virtual ~CIccTagZipXml ()
 
- Public Member Functions inherited from CIccTagZipUtf8Text
icUCharAllocBuffer (icUInt32Number nSize)
 Name: CIccTagZipUtf8Text::AllocBuffer.
 
icUInt32Number BufferSize () const
 
 CIccTagZipUtf8Text ()
 Name: CIccTagZipUtf8Text::CIccTagZipUtf8Text.
 
 CIccTagZipUtf8Text (const CIccTagZipUtf8Text &ITT)
 Name: CIccTagZipUtf8Text::CIccTagZipUtf8Text.
 
virtual void Describe (std::string &sDescription, int nVerboseness)
 Name: CIccTagZipUtf8Text::Describe.
 
icUCharGetBuffer () const
 
virtual bool GetText (std::string &str) const
 Name: CIccTagZipUtf8Text::GetText.
 
CIccTagZipUtf8Textoperator= (const CIccTagZipUtf8Text &TextTag)
 Name: CIccTagZipUtf8Text::operator=.
 
virtual bool Read (icUInt32Number size, CIccIO *pIO)
 Name: CIccTagZipUtf8Text::Read.
 
bool SetText (const icChar *szText)
 
virtual bool SetText (const icUChar *szText)
 Name: CIccTagZipUtf8Text::SetText.
 
bool SetText (const icUChar16 *szText)
 Name: CIccTagZipUtf8Text::SetText.
 
virtual icValidateStatus Validate (std::string sigPath, std::string &sReport, const CIccProfile *pProfile=NULL) const
 Name: CIccTagZipUtf8Text::Validate.
 
virtual bool Write (CIccIO *pIO)
 Name: CIccTagZipUtf8Text::Write.
 
virtual ~CIccTagZipUtf8Text ()
 Name: CIccTagZipUtf8Text::~CIccTagZipUtf8Text.
 
- Public Member Functions inherited from CIccTag
 CIccTag ()
 Name: CIccTag::CIccTag.
 
virtual void DetachIO ()
 Function: ReadAll() - Read All sub data for tag from file.
 
virtual icArraySignature GetTagArrayType () const
 
virtual icStructSignature GetTagStructType () const
 
virtual bool IsArrayType ()
 
virtual bool IsMBBType ()
 
virtual bool IsNumArrayType () const
 
virtual bool IsSupported ()
 Function: IsSupported(size, pIO) - Check if tag fully supported for apply purposes.
 
virtual bool Read (icUInt32Number size, CIccIO *pIO, CIccProfile *pProfile)
 Function: Read(size, pIO) - Read tag from file.
 
virtual bool ReadAll ()
 Function: ReadAll() - Read All sub data for tag from file.
 
virtual ~CIccTag ()
 Name: CIccTag::CIccTag.
 
- Public Member Functions inherited from CIccTagXml
virtual const char * GetExtClassName () const
 
virtual const char * GetExtDerivedClassName () const
 
virtual ~CIccTagXml (void)
 

Additional Inherited Members

- Static Public Member Functions inherited from CIccTag
static CIccTagCreate (icTagTypeSignature sig)
 Name: CIccTag::Create.
 
- Public Attributes inherited from CIccTag
icUInt32Number m_nReserved
 
- Protected Attributes inherited from CIccTagZipUtf8Text
icUInt32Number m_nBufSize
 
icUCharm_pZipBuf
 

Detailed Description

Definition at line 151 of file IccTagXml.h.

Constructor & Destructor Documentation

◆ CIccTagXmlZipXml() [1/2]

CIccTagXmlZipXml::CIccTagXmlZipXml ( )
inline

Definition at line 154 of file IccTagXml.h.

154: CIccTagZipXml() {}

Referenced by NewCopy().

+ Here is the caller graph for this function:

◆ CIccTagXmlZipXml() [2/2]

CIccTagXmlZipXml::CIccTagXmlZipXml ( const CIccTagXmlZipXml & ITT)
inline

Definition at line 155 of file IccTagXml.h.

155: CIccTagZipXml(ITT) {}

◆ ~CIccTagXmlZipXml()

virtual CIccTagXmlZipXml::~CIccTagXmlZipXml ( )
inlinevirtual

Definition at line 156 of file IccTagXml.h.

156{}

Member Function Documentation

◆ GetClassName()

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

Reimplemented from CIccTagZipXml.

Definition at line 160 of file IccTagXml.h.

160{return "CIccTagXmlZipXml"; }

◆ GetExtension()

virtual IIccExtensionTag * CIccTagXmlZipXml::GetExtension ( )
inlinevirtual

Reimplemented from CIccTag.

Definition at line 162 of file IccTagXml.h.

162{return this; }

◆ NewCopy()

virtual CIccTag * CIccTagXmlZipXml::NewCopy ( ) const
inlinevirtual

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 CIccTagZipXml.

Definition at line 158 of file IccTagXml.h.

158{return new CIccTagXmlZipXml(*this);}

References CIccTagXmlZipXml().

+ Here is the call graph for this function:

◆ ParseXml()

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

Implements CIccTagXml.

Definition at line 300 of file IccTagXml.cpp.

301{
302 while (pNode) {
303 if (pNode->type==XML_ELEMENT_NODE) {
304 if (!icXmlStrCmp(pNode->name, "HexCompressedData") && pNode->children && pNode->children->content) {
305 CIccUInt8Array buf;
306 if (!buf.SetSize(icXmlGetHexDataSize((const icChar*)pNode->children->content) ||
307 icXmlGetHexData(buf.GetBuf(), (const icChar*)pNode->children->content, buf.GetSize())!=buf.GetSize()))
308 return false;
309
310 AllocBuffer(buf.GetSize());
311 if (m_nBufSize && m_pZipBuf) {
312 memcpy(m_pZipBuf, buf.GetBuf(), m_nBufSize);
313 }
314 return true;
315 }
316 }
317 pNode = pNode->next;
318 }
319
320 std::string str = icXmlParseTextString(pNode, parseStr, false);
321
322 return SetText(str.c_str());
323}
char icChar
Definition IccDefs.h:109
static std::string icXmlParseTextString(xmlNode *pNode, std::string &parseStr, bool bConvert=true)
icUInt32Number icXmlGetHexDataSize(const char *szText)
icUInt32Number icXmlGetHexData(void *pBuf, const char *szText, icUInt32Number nBufSize)
#define icXmlStrCmp(x, y)
Definition IccUtilXml.h:134
bool SetText(const icUChar16 *szText)
Name: CIccTagZipUtf8Text::SetText.
icUChar * AllocBuffer(icUInt32Number nSize)
Name: CIccTagZipUtf8Text::AllocBuffer.
icUInt32Number m_nBufSize
bool SetSize(icUInt32Number nSize)
icUInt32Number GetSize()
Definition IccUtilXml.h:166

References CIccXmlArrayType< T, Tsig >::GetBuf(), CIccXmlArrayType< T, Tsig >::GetSize(), icXmlGetHexData(), icXmlGetHexDataSize(), icXmlParseTextString(), icXmlStrCmp, and CIccXmlArrayType< T, Tsig >::SetSize().

+ Here is the call graph for this function:

◆ ToXml()

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

Implements CIccTagXml.

Definition at line 165 of file IccTagXml.cpp.

166{
167 xml += blanks + "<HexCompressedData>\n";
168 icXmlDumpHexData(xml, blanks+" ", m_pZipBuf, m_nBufSize);
169 xml += blanks + "</HexCompressedData>\n";
170
171 return true;
172}
icUInt32Number icXmlDumpHexData(std::string &xml, std::string blanks, void *pBuf, icUInt32Number nBufSize)

References icXmlDumpHexData().

+ Here is the call graph for this function:

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