<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Exiv2: Exiv2::IptcData Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.4 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> <li> <form action="search.php" method="get"> <table cellspacing="0" cellpadding="0" border="0"> <tr> <td><label> <u>S</u>earch for </label></td> <td><input type="text" name="query" value="" size="20" accesskey="s"/></td> </tr> </table> </form> </li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="nav"> <a class="el" href="namespaceExiv2.html">Exiv2</a>::<a class="el" href="classExiv2_1_1IptcData.html">IptcData</a></div> <h1>Exiv2::IptcData Class Reference</h1><!-- doxytag: class="Exiv2::IptcData" -->A container for IPTC data. This is a top-level class of the Exiv2 library. <a href="#_details">More...</a> <p> <code>#include <iptc.hpp></code> <p> <div class="dynheader"> Collaboration diagram for Exiv2::IptcData:</div> <div class="dynsection"> <p><center><img src="classExiv2_1_1IptcData__coll__graph.png" border="0" usemap="#Exiv2_1_1IptcData__coll__map" alt="Collaboration graph"></center> <map name="Exiv2_1_1IptcData__coll__map"> <area shape="rect" title="STL class." alt="" coords="5,6,187,30"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="classExiv2_1_1IptcData-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0d53776cd2f36e63fff78c8f142a7caf"></a><!-- doxytag: member="Exiv2::IptcData::iterator" ref="0d53776cd2f36e63fff78c8f142a7caf" args="" --> typedef IptcMetadata::iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">IptcMetadata iterator type. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="683257be46a446865ca5f4e81b8e88d9"></a><!-- doxytag: member="Exiv2::IptcData::const_iterator" ref="683257be46a446865ca5f4e81b8e88d9" args="" --> typedef <br> IptcMetadata::const_iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#683257be46a446865ca5f4e81b8e88d9">const_iterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">IptcMetadata const iterator type. <br></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#83d32821e26360560f48f7a1197de8c2">load</a> (const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, long len)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Load the IPTC data from a byte buffer. The format must follow the IPTC IIM4 standard. <a href="#83d32821e26360560f48f7a1197de8c2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classExiv2_1_1Iptcdatum.html">Iptcdatum</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#998640a7957c12bed57d90ac8c08e7aa">operator[]</a> (const std::string &key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a reference to the Iptcdatum that is associated with a particular <em>key</em>. If IptcData does not already contain such an Iptcdatum, operator[] adds object <em>Iptcdatum(key)</em>. <a href="#998640a7957c12bed57d90ac8c08e7aa"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#6c209bd981fc5073ae5effaa56d07310">add</a> (const <a class="el" href="classExiv2_1_1IptcKey.html">IptcKey</a> &key, <a class="el" href="classExiv2_1_1Value.html">Value</a> *value)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add an Iptcdatum from the supplied key and value pair. This method copies (clones) the value. A check for non-repeatable datasets is performed. <a href="#6c209bd981fc5073ae5effaa56d07310"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#2d843afb1f9c0978b8845c741148ed27">add</a> (const <a class="el" href="classExiv2_1_1Iptcdatum.html">Iptcdatum</a> &iptcdatum)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a copy of the <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> to the IPTC metadata. A check for non-repeatable datasets is performed. <a href="#2d843afb1f9c0978b8845c741148ed27"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c39f135b5ef62df8cbb651af94ce25ed"></a><!-- doxytag: member="Exiv2::IptcData::erase" ref="c39f135b5ef62df8cbb651af94ce25ed" args="(iterator pos)" --> <a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#c39f135b5ef62df8cbb651af94ce25ed">erase</a> (<a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a> pos)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Delete the <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> at iterator position pos, return the position of the next <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a>. Note that iterators into the metadata, including pos, are potentially invalidated by this call. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ee7392b0585be4916c56f08e3c9e7be5"></a><!-- doxytag: member="Exiv2::IptcData::clear" ref="ee7392b0585be4916c56f08e3c9e7be5" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#ee7392b0585be4916c56f08e3c9e7be5">clear</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Delete all <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> instances resulting in an empty container. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3db828436ee87c6d4d1d4a450b0c3c10"></a><!-- doxytag: member="Exiv2::IptcData::sortByKey" ref="3db828436ee87c6d4d1d4a450b0c3c10" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#3db828436ee87c6d4d1d4a450b0c3c10">sortByKey</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sort metadata by key. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="622ff967f192b898e05920dfbc63aabe"></a><!-- doxytag: member="Exiv2::IptcData::sortByTag" ref="622ff967f192b898e05920dfbc63aabe" args="()" --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#622ff967f192b898e05920dfbc63aabe">sortByTag</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Sort metadata by tag (aka dataset). <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="03385c128b29d262ade837093fddc0d2"></a><!-- doxytag: member="Exiv2::IptcData::begin" ref="03385c128b29d262ade837093fddc0d2" args="()" --> <a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#03385c128b29d262ade837093fddc0d2">begin</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Begin of the metadata. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6753e8a713ab2b42a3bdc7b3d9eab401"></a><!-- doxytag: member="Exiv2::IptcData::end" ref="6753e8a713ab2b42a3bdc7b3d9eab401" args="()" --> <a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#6753e8a713ab2b42a3bdc7b3d9eab401">end</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">End of the metadata. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7df715a94bab00373cd461d7d1f3d51c"></a><!-- doxytag: member="Exiv2::IptcData::findKey" ref="7df715a94bab00373cd461d7d1f3d51c" args="(const IptcKey &key)" --> <a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#7df715a94bab00373cd461d7d1f3d51c">findKey</a> (const <a class="el" href="classExiv2_1_1IptcKey.html">IptcKey</a> &key)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Find the first <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> with the given key, return an iterator to it. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6d592167eb84f50f5053b789d0a82531"></a><!-- doxytag: member="Exiv2::IptcData::findId" ref="6d592167eb84f50f5053b789d0a82531" args="(uint16_t dataset, uint16_t record=IptcDataSets::application2)" --> <a class="el" href="classExiv2_1_1IptcData.html#0d53776cd2f36e63fff78c8f142a7caf">iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#6d592167eb84f50f5053b789d0a82531">findId</a> (uint16_t dataset, uint16_t record=IptcDataSets::application2)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Find the first <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> with the given record and dataset it, return a const iterator to it. <br></td></tr> <tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eee89e2ea157cb1e3739ccbbf239cce5"></a><!-- doxytag: member="Exiv2::IptcData::begin" ref="eee89e2ea157cb1e3739ccbbf239cce5" args="() const " --> <a class="el" href="classExiv2_1_1IptcData.html#683257be46a446865ca5f4e81b8e88d9">const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#eee89e2ea157cb1e3739ccbbf239cce5">begin</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Begin of the metadata. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c209f133796a4811776e3fe85b432506"></a><!-- doxytag: member="Exiv2::IptcData::end" ref="c209f133796a4811776e3fe85b432506" args="() const " --> <a class="el" href="classExiv2_1_1IptcData.html#683257be46a446865ca5f4e81b8e88d9">const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#c209f133796a4811776e3fe85b432506">end</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">End of the metadata. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classExiv2_1_1DataBuf.html">DataBuf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#35b77f4bca06079f7940f97bb0f060be">copy</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the IPTC data to a data buffer and return the data buffer. Caller owns this buffer. The copied data follows the IPTC IIM4 standard. <a href="#35b77f4bca06079f7940f97bb0f060be"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f20e0f2178832bfaa0fbde754a5fe103"></a><!-- doxytag: member="Exiv2::IptcData::findKey" ref="f20e0f2178832bfaa0fbde754a5fe103" args="(const IptcKey &key) const " --> <a class="el" href="classExiv2_1_1IptcData.html#683257be46a446865ca5f4e81b8e88d9">const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#f20e0f2178832bfaa0fbde754a5fe103">findKey</a> (const <a class="el" href="classExiv2_1_1IptcKey.html">IptcKey</a> &key) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Find the first <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> with the given key, return a const iterator to it. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bba13f9e7dcdb6be67aee061ec0d3c1f"></a><!-- doxytag: member="Exiv2::IptcData::findId" ref="bba13f9e7dcdb6be67aee061ec0d3c1f" args="(uint16_t dataset, uint16_t record=IptcDataSets::application2) const " --> <a class="el" href="classExiv2_1_1IptcData.html#683257be46a446865ca5f4e81b8e88d9">const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#bba13f9e7dcdb6be67aee061ec0d3c1f">findId</a> (uint16_t dataset, uint16_t record=IptcDataSets::application2) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Find the first <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> with the given record and dataset number, return a const iterator to it. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fda626e27ebecd599005c68022db9c1c"></a><!-- doxytag: member="Exiv2::IptcData::empty" ref="fda626e27ebecd599005c68022db9c1c" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#fda626e27ebecd599005c68022db9c1c">empty</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if there is no IPTC metadata. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0b73759b3483b94deec4dac32e1a591"></a><!-- doxytag: member="Exiv2::IptcData::count" ref="b0b73759b3483b94deec4dac32e1a591" args="() const " --> long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#b0b73759b3483b94deec4dac32e1a591">count</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of metadata entries. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="96def22b723dfabe9ec5decfdae8574e"></a><!-- doxytag: member="Exiv2::IptcData::size" ref="96def22b723dfabe9ec5decfdae8574e" args="() const " --> long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1IptcData.html#96def22b723dfabe9ec5decfdae8574e">size</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the exact size of all contained IPTC metadata. <br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A container for IPTC data. This is a top-level class of the Exiv2 library. <p> Provide high-level access to the IPTC data of an image:<ul> <li>read IPTC information from JPEG files</li><li>access metadata through keys and standard C++ iterators</li><li>add, modify and delete metadata</li><li>write IPTC data to JPEG files</li><li>extract IPTC metadata to files, insert from these files </li></ul> <dl compact><dt><b>Examples: </b></dt><dd> <p> <a class="el" href="iptceasy_8cpp-example.html#_a0">iptceasy.cpp</a>, and <a class="el" href="iptcprint_8cpp-example.html#_a1">iptcprint.cpp</a>.</dl><hr><h2>Member Function Documentation</h2> <a class="anchor" name="83d32821e26360560f48f7a1197de8c2"></a><!-- doxytag: member="Exiv2::IptcData::load" ref="83d32821e26360560f48f7a1197de8c2" args="(const byte *buf, long len)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int Exiv2::IptcData::load </td> <td>(</td> <td class="paramtype">const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">long </td> <td class="paramname"> <em>len</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Load the IPTC data from a byte buffer. The format must follow the IPTC IIM4 standard. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buf</em> </td><td>Pointer to the data buffer to read from </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>Number of bytes in the data buffer </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>0 if successful;<br> 5 if IPTC data is invalid or corrupt;<br> </dd></dl> </div> </div><p> <a class="anchor" name="998640a7957c12bed57d90ac8c08e7aa"></a><!-- doxytag: member="Exiv2::IptcData::operator[]" ref="998640a7957c12bed57d90ac8c08e7aa" args="(const std::string &key)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classExiv2_1_1Iptcdatum.html">Iptcdatum</a>& Exiv2::IptcData::operator[] </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"> <em>key</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Returns a reference to the Iptcdatum that is associated with a particular <em>key</em>. If IptcData does not already contain such an Iptcdatum, operator[] adds object <em>Iptcdatum(key)</em>. <p> <dl class="note" compact><dt><b>Note:</b></dt><dd>Since operator[] might insert a new element, it can't be a const member function. </dd></dl> </div> </div><p> <a class="anchor" name="6c209bd981fc5073ae5effaa56d07310"></a><!-- doxytag: member="Exiv2::IptcData::add" ref="6c209bd981fc5073ae5effaa56d07310" args="(const IptcKey &key, Value *value)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int Exiv2::IptcData::add </td> <td>(</td> <td class="paramtype">const <a class="el" href="classExiv2_1_1IptcKey.html">IptcKey</a> & </td> <td class="paramname"> <em>key</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classExiv2_1_1Value.html">Value</a> * </td> <td class="paramname"> <em>value</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Add an Iptcdatum from the supplied key and value pair. This method copies (clones) the value. A check for non-repeatable datasets is performed. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>0 if successful;<br> 6 if the dataset already exists and is not repeatable </dd></dl> </div> </div><p> <a class="anchor" name="2d843afb1f9c0978b8845c741148ed27"></a><!-- doxytag: member="Exiv2::IptcData::add" ref="2d843afb1f9c0978b8845c741148ed27" args="(const Iptcdatum &iptcdatum)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int Exiv2::IptcData::add </td> <td>(</td> <td class="paramtype">const <a class="el" href="classExiv2_1_1Iptcdatum.html">Iptcdatum</a> & </td> <td class="paramname"> <em>iptcdatum</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Add a copy of the <a class="el" href="classExiv2_1_1Iptcdatum.html" title="Information related to one IPTC dataset. An IPTC metadatum consists of an IptcKey...">Iptcdatum</a> to the IPTC metadata. A check for non-repeatable datasets is performed. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>0 if successful;<br> 6 if the dataset already exists and is not repeatable;<br> </dd></dl> </div> </div><p> <a class="anchor" name="35b77f4bca06079f7940f97bb0f060be"></a><!-- doxytag: member="Exiv2::IptcData::copy" ref="35b77f4bca06079f7940f97bb0f060be" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classExiv2_1_1DataBuf.html">DataBuf</a> Exiv2::IptcData::copy </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Write the IPTC data to a data buffer and return the data buffer. Caller owns this buffer. The copied data follows the IPTC IIM4 standard. <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Data buffer containing the IPTC data. </dd></dl> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="iptc_8hpp.html">iptc.hpp</a></ul> <hr size="1"><address style="text-align: right;"><small>Generated on Tue Feb 5 11:51:04 2008 for Exiv2 by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.4 </small></address> </body> </html>