Exiv2::XmpParser Class Reference
Stateless parser class for XMP packets. Images use this class to parse and serialize XMP packets. The parser uses the XMP toolkit to do the job. More...
#include <xmp.hpp>
Public Types | |
| enum | XmpFormatFlags { omitPacketWrapper = 0x0010UL, readOnlyPacket = 0x0020UL, useCompactFormat = 0x0040UL, includeThumbnailPad = 0x0100UL, exactPacketLength = 0x0200UL, writeAliasComments = 0x0400UL, omitAllFormatting = 0x0800UL } |
| Options to control the format of the serialized XMP packet. More... | |
Static Public Member Functions | |
| static int | decode (XmpData &xmpData, const std::string &xmpPacket) |
| Decode XMP metadata from an XMP packet xmpPacket into xmpData. The format of the XMP packet must follow the XMP specification. This method clears any previous contents of xmpData. | |
| static int | encode (std::string &xmpPacket, const XmpData &xmpData, uint16_t formatFlags=useCompactFormat, uint32_t padding=0) |
| Encode (serialize) XMP metadata from xmpData into a string xmpPacket. The XMP packet returned in the string follows the XMP specification. This method only modifies xmpPacket if the operations succeeds (return code 0). | |
| static bool | initialize () |
| Initialize the XMP Toolkit. | |
| static void | terminate () |
| Terminate the XMP Toolkit and unregister custom namespaces. | |
Friends | |
| void | XmpProperties::registerNs (const std::string &, const std::string &) |
| void | XmpProperties::unregisterNs (const std::string &) |
Detailed Description
Stateless parser class for XMP packets. Images use this class to parse and serialize XMP packets. The parser uses the XMP toolkit to do the job.Member Enumeration Documentation
Options to control the format of the serialized XMP packet.
- Enumerator:
Member Function Documentation
| int Exiv2::XmpParser::decode | ( | XmpData & | xmpData, | |
| const std::string & | xmpPacket | |||
| ) | [static] |
Decode XMP metadata from an XMP packet xmpPacket into xmpData. The format of the XMP packet must follow the XMP specification. This method clears any previous contents of xmpData.
- Parameters:
-
xmpData Container for the decoded XMP properties xmpPacket The raw XMP packet to decode
- Returns:
- 0 if successful;
1 if XMP support has not been compiled-in;
2 if the XMP toolkit failed to initialize;
3 if the XMP toolkit failed and raised an XMP_Error
| int Exiv2::XmpParser::encode | ( | std::string & | xmpPacket, | |
| const XmpData & | xmpData, | |||
| uint16_t | formatFlags = useCompactFormat, |
|||
| uint32_t | padding = 0 | |||
| ) | [static] |
Encode (serialize) XMP metadata from xmpData into a string xmpPacket. The XMP packet returned in the string follows the XMP specification. This method only modifies xmpPacket if the operations succeeds (return code 0).
- Parameters:
-
xmpPacket Reference to a string to hold the encoded XMP packet. xmpData XMP properties to encode. formatFlags Flags that control the format of the XMP packet, see enum XmpFormatFlags. padding Padding length.
- Returns:
- 0 if successful;
1 if XMP support has not been compiled-in;
2 if the XMP toolkit failed to initialize;
3 if the XMP toolkit failed and raised an XMP_Error
- Examples:
- xmpsample.cpp.
| bool Exiv2::XmpParser::initialize | ( | ) | [static] |
| void Exiv2::XmpParser::terminate | ( | ) | [static] |
Terminate the XMP Toolkit and unregister custom namespaces.
Call this method when the XmpParser is no longer needed to allow the XMP Toolkit to cleanly shutdown.
- Examples:
- xmpsample.cpp.
The documentation for this class was generated from the following files:
- xmp.hpp
- xmp.cpp