30
40
Inheritance diagram for Exiv2::Metadatum:<p><center><img src="classExiv2_1_1Metadatum__inherit__graph.png" border="0" usemap="#Exiv2_1_1Metadatum__inherit__map" alt="Inheritance graph"></center>
31
41
<map name="Exiv2_1_1Metadatum__inherit__map">
32
<area href="classExiv2_1_1Exifdatum.html" shape="rect" coords="5,81,128,105" alt="">
33
<area href="classExiv2_1_1Iptcdatum.html" shape="rect" coords="152,81,272,105" alt="">
42
<area href="classExiv2_1_1Exifdatum.html" shape="rect" coords="6,81,142,105" alt="">
43
<area href="classExiv2_1_1Iptcdatum.html" shape="rect" coords="166,81,302,105" alt="">
35
45
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classExiv2_1_1Metadatum-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
37
47
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
38
<tr><td colspan="2"><div class="groupHeader">Creators</div></td></tr>
39
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1d7ef6f699dc1448ddf37c5e8938808a"></a><!-- doxytag: member="Exiv2::Metadatum::Metadatum" ref="1d7ef6f699dc1448ddf37c5e8938808a" args="()" -->
40
</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#1d7ef6f699dc1448ddf37c5e8938808a">Metadatum</a> ()</td></tr>
42
<tr><td class="mdescLeft"> </td><td class="mdescRight">Default Constructor. <br></td></tr>
43
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a4b96033393a69d1382570f638d7243b"></a><!-- doxytag: member="Exiv2::Metadatum::Metadatum" ref="a4b96033393a69d1382570f638d7243b" args="(const Metadatum &rhs)" -->
44
</td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#a4b96033393a69d1382570f638d7243b">Metadatum</a> (const <a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> &rhs)</td></tr>
46
<tr><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <br></td></tr>
47
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="707ffcc6121daf24e5b191eb55181b35"></a><!-- doxytag: member="Exiv2::Metadatum::~Metadatum" ref="707ffcc6121daf24e5b191eb55181b35" args="()" -->
48
virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#707ffcc6121daf24e5b191eb55181b35">~Metadatum</a> ()</td></tr>
50
<tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <br></td></tr>
51
48
<tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr>
52
49
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f4dd21ad1c59ae0bbe521651951615f3"></a><!-- doxytag: member="Exiv2::Metadatum::setValue" ref="f4dd21ad1c59ae0bbe521651951615f3" args="(const Value *pValue)=0" -->
53
50
virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#f4dd21ad1c59ae0bbe521651951615f3">setValue</a> (const <a class="el" href="classExiv2_1_1Value.html">Value</a> *pValue)=0</td></tr>
59
56
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the value to the string buf. Uses <a class="el" href="classExiv2_1_1Value.html#2864378d7572310aa5f4cf4127365862">Value::read(const std::string& buf)</a>. If the metadatum does not have a value yet, then an <a class="el" href="classExiv2_1_1AsciiValue.html">AsciiValue</a> is created. <br></td></tr>
60
57
<tr><td colspan="2"><div class="groupHeader">Accessors</div></td></tr>
61
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#24bda0168b0655ccbbc8b870b583f1da">copy</a> (<a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, <a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder) const =0</td></tr>
58
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#6125da71609efe105e021b01221840e4">copy</a> (<a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *buf, <a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> byteOrder) const=0</td></tr>
63
<tr><td class="mdescLeft"> </td><td class="mdescRight">Write value to a data buffer and return the number of bytes written. <a href="#24bda0168b0655ccbbc8b870b583f1da"></a><br></td></tr>
64
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f9d30791ac19ecd4a80cd9214f3d1495"></a><!-- doxytag: member="Exiv2::Metadatum::key" ref="f9d30791ac19ecd4a80cd9214f3d1495" args="() const =0" -->
65
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#f9d30791ac19ecd4a80cd9214f3d1495">key</a> () const =0</td></tr>
60
<tr><td class="mdescLeft"> </td><td class="mdescRight">Write value to a data buffer and return the number of bytes written. <a href="#6125da71609efe105e021b01221840e4"></a><br></td></tr>
61
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fe27ff30606a968b52a5e838dd4e730e"></a><!-- doxytag: member="Exiv2::Metadatum::key" ref="fe27ff30606a968b52a5e838dd4e730e" args="() const=0" -->
62
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#fe27ff30606a968b52a5e838dd4e730e">key</a> () const=0</td></tr>
67
64
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the key of the metadatum. The key is of the form 'familyName.ifdItem.tagName'. Note however that the key is not necessarily unique, i.e., an <a class="el" href="classExiv2_1_1ExifData.html">ExifData</a> may contain multiple metadata with the same key. <br></td></tr>
68
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="828306096c0575ffc5d02c73c3b6ff53"></a><!-- doxytag: member="Exiv2::Metadatum::tagName" ref="828306096c0575ffc5d02c73c3b6ff53" args="() const =0" -->
69
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#828306096c0575ffc5d02c73c3b6ff53">tagName</a> () const =0</td></tr>
65
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="eec9446d1ba217497f4afb3cfc47c9e0"></a><!-- doxytag: member="Exiv2::Metadatum::tagName" ref="eec9446d1ba217497f4afb3cfc47c9e0" args="() const=0" -->
66
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#eec9446d1ba217497f4afb3cfc47c9e0">tagName</a> () const=0</td></tr>
71
68
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the name of the tag (which is also the third part of the key). <br></td></tr>
72
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="58cd8a22d1debd0e3f8cd2407587ed31"></a><!-- doxytag: member="Exiv2::Metadatum::tagLabel" ref="58cd8a22d1debd0e3f8cd2407587ed31" args="() const =0" -->
73
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#58cd8a22d1debd0e3f8cd2407587ed31">tagLabel</a> () const =0</td></tr>
69
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ecaf70483a6b9c4fc5f00b16ff218514"></a><!-- doxytag: member="Exiv2::Metadatum::tagLabel" ref="ecaf70483a6b9c4fc5f00b16ff218514" args="() const=0" -->
70
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#ecaf70483a6b9c4fc5f00b16ff218514">tagLabel</a> () const=0</td></tr>
75
72
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a label for the tag. <br></td></tr>
76
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39ee5937edab29d199f3d318bb55eace"></a><!-- doxytag: member="Exiv2::Metadatum::tag" ref="39ee5937edab29d199f3d318bb55eace" args="() const =0" -->
77
virtual uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#39ee5937edab29d199f3d318bb55eace">tag</a> () const =0</td></tr>
73
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="24c7dd12a6de359ff9ba94db4fd1eb54"></a><!-- doxytag: member="Exiv2::Metadatum::tag" ref="24c7dd12a6de359ff9ba94db4fd1eb54" args="() const=0" -->
74
virtual uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#24c7dd12a6de359ff9ba94db4fd1eb54">tag</a> () const=0</td></tr>
79
76
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the tag. <br></td></tr>
80
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0f4c5f021786e0e7abc3ae25b984f4e8"></a><!-- doxytag: member="Exiv2::Metadatum::typeId" ref="0f4c5f021786e0e7abc3ae25b984f4e8" args="() const =0" -->
81
virtual <a class="el" href="namespaceExiv2.html#5153319711f35fe81cbc13f4b852450c">TypeId</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#0f4c5f021786e0e7abc3ae25b984f4e8">typeId</a> () const =0</td></tr>
77
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9baebe5451fe0d814311c8cce1d48aab"></a><!-- doxytag: member="Exiv2::Metadatum::typeId" ref="9baebe5451fe0d814311c8cce1d48aab" args="() const=0" -->
78
virtual <a class="el" href="namespaceExiv2.html#5153319711f35fe81cbc13f4b852450c">TypeId</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#9baebe5451fe0d814311c8cce1d48aab">typeId</a> () const=0</td></tr>
83
80
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the type id of the value. <br></td></tr>
84
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c3fc08927500d7fe227bc34583815dfe"></a><!-- doxytag: member="Exiv2::Metadatum::typeName" ref="c3fc08927500d7fe227bc34583815dfe" args="() const =0" -->
85
virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#c3fc08927500d7fe227bc34583815dfe">typeName</a> () const =0</td></tr>
81
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fd76edf525c6e458884943728f7cbc31"></a><!-- doxytag: member="Exiv2::Metadatum::typeName" ref="fd76edf525c6e458884943728f7cbc31" args="() const=0" -->
82
virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#fd76edf525c6e458884943728f7cbc31">typeName</a> () const=0</td></tr>
87
84
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the name of the type. <br></td></tr>
88
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1a77c33ee0ba24127dff478e26ba8fa7"></a><!-- doxytag: member="Exiv2::Metadatum::typeSize" ref="1a77c33ee0ba24127dff478e26ba8fa7" args="() const =0" -->
89
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#1a77c33ee0ba24127dff478e26ba8fa7">typeSize</a> () const =0</td></tr>
85
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="31497472eaa90c86523f5695d86593a5"></a><!-- doxytag: member="Exiv2::Metadatum::typeSize" ref="31497472eaa90c86523f5695d86593a5" args="() const=0" -->
86
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#31497472eaa90c86523f5695d86593a5">typeSize</a> () const=0</td></tr>
91
88
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the size in bytes of one component of this type. <br></td></tr>
92
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75740ff36685a69d617e0b9548fcf2b4"></a><!-- doxytag: member="Exiv2::Metadatum::count" ref="75740ff36685a69d617e0b9548fcf2b4" args="() const =0" -->
93
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#75740ff36685a69d617e0b9548fcf2b4">count</a> () const =0</td></tr>
89
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7635c487f74059a269ed340e9c7c610e"></a><!-- doxytag: member="Exiv2::Metadatum::count" ref="7635c487f74059a269ed340e9c7c610e" args="() const=0" -->
90
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#7635c487f74059a269ed340e9c7c610e">count</a> () const=0</td></tr>
95
92
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of components in the value. <br></td></tr>
96
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="05e186d6189b44ac428b7d21a8dbc762"></a><!-- doxytag: member="Exiv2::Metadatum::size" ref="05e186d6189b44ac428b7d21a8dbc762" args="() const =0" -->
97
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#05e186d6189b44ac428b7d21a8dbc762">size</a> () const =0</td></tr>
93
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b78dfce849b03908c157a934a4b4e95"></a><!-- doxytag: member="Exiv2::Metadatum::size" ref="3b78dfce849b03908c157a934a4b4e95" args="() const=0" -->
94
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#3b78dfce849b03908c157a934a4b4e95">size</a> () const=0</td></tr>
99
96
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the size of the value in bytes. <br></td></tr>
100
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8617d2efd0c1a241e96e853b7f00f077"></a><!-- doxytag: member="Exiv2::Metadatum::toString" ref="8617d2efd0c1a241e96e853b7f00f077" args="() const =0" -->
101
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#8617d2efd0c1a241e96e853b7f00f077">toString</a> () const =0</td></tr>
97
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7ecf43b358d061ce2b3bd7041e2c4b69"></a><!-- doxytag: member="Exiv2::Metadatum::toString" ref="7ecf43b358d061ce2b3bd7041e2c4b69" args="() const=0" -->
98
virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#7ecf43b358d061ce2b3bd7041e2c4b69">toString</a> () const=0</td></tr>
103
100
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the value as a string. <br></td></tr>
104
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="66148c73f1b565885b4ee51358ae4308"></a><!-- doxytag: member="Exiv2::Metadatum::toLong" ref="66148c73f1b565885b4ee51358ae4308" args="(long n=0) const =0" -->
105
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#66148c73f1b565885b4ee51358ae4308">toLong</a> (long n=0) const =0</td></tr>
101
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="aa5d6394adb26444d7b80daa57726be1"></a><!-- doxytag: member="Exiv2::Metadatum::toLong" ref="aa5d6394adb26444d7b80daa57726be1" args="(long n=0) const=0" -->
102
virtual long </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#aa5d6394adb26444d7b80daa57726be1">toLong</a> (long n=0) const=0</td></tr>
107
104
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the n-th component of the value converted to long. The return value is -1 if the value of the <a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> is not set and the behaviour of the method is undefined if there is no n-th component. <br></td></tr>
108
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a70af228d888327badd2333020256ac2"></a><!-- doxytag: member="Exiv2::Metadatum::toFloat" ref="a70af228d888327badd2333020256ac2" args="(long n=0) const =0" -->
109
virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#a70af228d888327badd2333020256ac2">toFloat</a> (long n=0) const =0</td></tr>
105
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="036aa0e46345f02e8734cb44ab047c9f"></a><!-- doxytag: member="Exiv2::Metadatum::toFloat" ref="036aa0e46345f02e8734cb44ab047c9f" args="(long n=0) const=0" -->
106
virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#036aa0e46345f02e8734cb44ab047c9f">toFloat</a> (long n=0) const=0</td></tr>
111
108
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the n-th component of the value converted to float. The return value is -1 if the value of the <a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> is not set and the behaviour of the method is undefined if there is no n-th component. <br></td></tr>
112
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ea1935014f316b7a2eabc12be92ca7c9"></a><!-- doxytag: member="Exiv2::Metadatum::toRational" ref="ea1935014f316b7a2eabc12be92ca7c9" args="(long n=0) const =0" -->
113
virtual <a class="el" href="namespaceExiv2.html#95756f3f7fa19103f83addf5fa088a30">Rational</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#ea1935014f316b7a2eabc12be92ca7c9">toRational</a> (long n=0) const =0</td></tr>
109
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f2a2caa2be0163b67d8009c159093fb7"></a><!-- doxytag: member="Exiv2::Metadatum::toRational" ref="f2a2caa2be0163b67d8009c159093fb7" args="(long n=0) const=0" -->
110
virtual <a class="el" href="namespaceExiv2.html#95756f3f7fa19103f83addf5fa088a30">Rational</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#f2a2caa2be0163b67d8009c159093fb7">toRational</a> (long n=0) const=0</td></tr>
115
112
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return the n-th component of the value converted to Rational. The return value is -1/1 if the value of the <a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> is not set and the behaviour of the method is undefined if there is no n-th component. <br></td></tr>
116
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classExiv2_1_1Value.html#0f62e585b82c97738858b743e60dff21">Value::AutoPtr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#1f3f53ab9df8c213ade42012a7e89ab3">getValue</a> () const =0</td></tr>
118
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return an auto-pointer to a copy (clone) of the value. The caller owns this copy and the auto-poiner ensures that it will be deleted. <a href="#1f3f53ab9df8c213ade42012a7e89ab3"></a><br></td></tr>
119
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classExiv2_1_1Value.html">Value</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#67ab8d2752f951b70a8188341df9c7e6">value</a> () const =0</td></tr>
121
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a constant reference to the value. <a href="#67ab8d2752f951b70a8188341df9c7e6"></a><br></td></tr>
113
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classExiv2_1_1Value.html#0f62e585b82c97738858b743e60dff21">Value::AutoPtr</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#c5aa9902cee65a20f928186ac678cb2a">getValue</a> () const=0</td></tr>
115
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return an auto-pointer to a copy (clone) of the value. The caller owns this copy and the auto-poiner ensures that it will be deleted. <a href="#c5aa9902cee65a20f928186ac678cb2a"></a><br></td></tr>
116
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classExiv2_1_1Value.html">Value</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#013f3097434496019e2ad227d99a1f07">value</a> () const=0</td></tr>
118
<tr><td class="mdescLeft"> </td><td class="mdescRight">Return a constant reference to the value. <a href="#013f3097434496019e2ad227d99a1f07"></a><br></td></tr>
122
119
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
123
120
<tr><td colspan="2"><div class="groupHeader">Manipulators</div></td></tr>
124
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cb23718131525db38ad4d94f43c73792"></a><!-- doxytag: member="Exiv2::Metadatum::operator=" ref="cb23718131525db38ad4d94f43c73792" args="(const Metadatum &rhs)" -->
125
<a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#cb23718131525db38ad4d94f43c73792">operator=</a> (const <a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> &rhs)</td></tr>
121
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="46d5e69333e5ab0045477bcf1c61a73e"></a><!-- doxytag: member="Exiv2::Metadatum::operator=" ref="46d5e69333e5ab0045477bcf1c61a73e" args="(const Metadatum &rhs)" -->
122
<a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classExiv2_1_1Metadatum.html#46d5e69333e5ab0045477bcf1c61a73e">operator=</a> (const <a class="el" href="classExiv2_1_1Metadatum.html">Metadatum</a> &rhs)</td></tr>
127
124
<tr><td class="mdescLeft"> </td><td class="mdescRight">Assignment operator. Protected so that it can only be used by subclasses but not directly. <br></td></tr>
130
127
Abstract base class defining the interface to access information related to one metadata tag.
132
129
<hr><h2>Member Function Documentation</h2>
133
<a class="anchor" name="24bda0168b0655ccbbc8b870b583f1da"></a><!-- doxytag: member="Exiv2::Metadatum::copy" ref="24bda0168b0655ccbbc8b870b583f1da" args="(byte *buf, ByteOrder byteOrder) const =0" --><p>
134
<table class="mdTable" cellpadding="2" cellspacing="0">
137
<table cellpadding="0" cellspacing="0" border="0">
139
<td class="md" nowrap valign="top">virtual long Exiv2::Metadatum::copy </td>
140
<td class="md" valign="top">( </td>
141
<td class="md" nowrap valign="top"><a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> * </td>
142
<td class="mdname" nowrap> <em>buf</em>, </td>
145
<td class="md" nowrap align="right"></td>
147
<td class="md" nowrap><a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> </td>
148
<td class="mdname" nowrap> <em>byteOrder</em></td>
152
<td class="md">) </td>
153
<td class="md" colspan="2"> const<code> [pure virtual]</code></td>
130
<a class="anchor" name="6125da71609efe105e021b01221840e4"></a><!-- doxytag: member="Exiv2::Metadatum::copy" ref="6125da71609efe105e021b01221840e4" args="(byte *buf, ByteOrder byteOrder) const=0" -->
131
<div class="memitem">
132
<div class="memproto">
133
<table class="memname">
135
<td class="memname">virtual long Exiv2::Metadatum::copy </td>
137
<td class="paramtype"><a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> * </td>
138
<td class="paramname"> <em>buf</em>, </td>
141
<td class="paramkey"></td>
143
<td class="paramtype"><a class="el" href="namespaceExiv2.html#94c225faf6d6c611a3828fae1c28efa6">ByteOrder</a> </td>
144
<td class="paramname"> <em>byteOrder</em></td><td> </td>
149
<td></td><td></td><td width="100%"> const<code> [pure virtual]</code></td>
159
<table cellspacing="5" cellpadding="0" border="0">
167
156
Write value to a data buffer and return the number of bytes written.
173
162
<tr><td valign="top"></td><td valign="top"><em>byteOrder</em> </td><td>Applicable byte order (little or big endian). </td></tr>
176
<dl compact><dt><b>Returns:</b></dt><dd>Number of characters written. </dd></dl>
165
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Number of characters written. </dd></dl>
179
Implemented in <a class="el" href="classExiv2_1_1Exifdatum.html#28391f10f14d66cabeb8042853e311cd">Exiv2::Exifdatum</a>, and <a class="el" href="classExiv2_1_1Iptcdatum.html#fef33191871750f8b1c760d46f553c51">Exiv2::Iptcdatum</a>. </td>
182
<a class="anchor" name="1f3f53ab9df8c213ade42012a7e89ab3"></a><!-- doxytag: member="Exiv2::Metadatum::getValue" ref="1f3f53ab9df8c213ade42012a7e89ab3" args="() const =0" --><p>
183
<table class="mdTable" cellpadding="2" cellspacing="0">
186
<table cellpadding="0" cellspacing="0" border="0">
168
Implemented in <a class="el" href="classExiv2_1_1Exifdatum.html#15a3e38da38466dac68bc18f7c122b89">Exiv2::Exifdatum</a>, and <a class="el" href="classExiv2_1_1Iptcdatum.html#c8d5f05ffc240669aac7b9aa6c3aa02d">Exiv2::Iptcdatum</a>.
171
<a class="anchor" name="c5aa9902cee65a20f928186ac678cb2a"></a><!-- doxytag: member="Exiv2::Metadatum::getValue" ref="c5aa9902cee65a20f928186ac678cb2a" args="() const=0" -->
172
<div class="memitem">
173
<div class="memproto">
174
<table class="memname">
188
<td class="md" nowrap valign="top">virtual <a class="el" href="classExiv2_1_1Value.html#0f62e585b82c97738858b743e60dff21">Value::AutoPtr</a> Exiv2::Metadatum::getValue </td>
189
<td class="md" valign="top">( </td>
190
<td class="mdname1" valign="top" nowrap> </td>
191
<td class="md" valign="top"> ) </td>
192
<td class="md" nowrap> const<code> [pure virtual]</code></td>
176
<td class="memname">virtual <a class="el" href="classExiv2_1_1Value.html#0f62e585b82c97738858b743e60dff21">Value::AutoPtr</a> Exiv2::Metadatum::getValue </td>
178
<td class="paramname"> </td>
179
<td> ) </td>
180
<td width="100%"> const<code> [pure virtual]</code></td>
198
<table cellspacing="5" cellpadding="0" border="0">
206
187
Return an auto-pointer to a copy (clone) of the value. The caller owns this copy and the auto-poiner ensures that it will be deleted.
208
189
This method is provided for users who need full control over the value. A caller may, e.g., downcast the pointer to the appropriate subclass of <a class="el" href="classExiv2_1_1Value.html">Value</a> to make use of the interface of the subclass to set or modify its contents.<p>
209
<dl compact><dt><b>Returns:</b></dt><dd>An auto-pointer containing a pointer to a copy (clone) of the value, 0 if the value is not set. </dd></dl>
190
<dl class="return" compact><dt><b>Returns:</b></dt><dd>An auto-pointer containing a pointer to a copy (clone) of the value, 0 if the value is not set. </dd></dl>
212
Implemented in <a class="el" href="classExiv2_1_1Exifdatum.html#69fee053db7f4e55295f7ff1c4d34566">Exiv2::Exifdatum</a>, and <a class="el" href="classExiv2_1_1Iptcdatum.html#dde9e41e4fda8d1cd9e5947e44cbf40a">Exiv2::Iptcdatum</a>. </td>
215
<a class="anchor" name="67ab8d2752f951b70a8188341df9c7e6"></a><!-- doxytag: member="Exiv2::Metadatum::value" ref="67ab8d2752f951b70a8188341df9c7e6" args="() const =0" --><p>
216
<table class="mdTable" cellpadding="2" cellspacing="0">
219
<table cellpadding="0" cellspacing="0" border="0">
193
Implemented in <a class="el" href="classExiv2_1_1Exifdatum.html#0d4b3d96c06538958f8669f67fcc16ae">Exiv2::Exifdatum</a>, and <a class="el" href="classExiv2_1_1Iptcdatum.html#4fcda1fb1c8a8e229c50f8ac778701e4">Exiv2::Iptcdatum</a>.
196
<a class="anchor" name="013f3097434496019e2ad227d99a1f07"></a><!-- doxytag: member="Exiv2::Metadatum::value" ref="013f3097434496019e2ad227d99a1f07" args="() const=0" -->
197
<div class="memitem">
198
<div class="memproto">
199
<table class="memname">
221
<td class="md" nowrap valign="top">virtual const <a class="el" href="classExiv2_1_1Value.html">Value</a>& Exiv2::Metadatum::value </td>
222
<td class="md" valign="top">( </td>
223
<td class="mdname1" valign="top" nowrap> </td>
224
<td class="md" valign="top"> ) </td>
225
<td class="md" nowrap> const<code> [pure virtual]</code></td>
201
<td class="memname">virtual const <a class="el" href="classExiv2_1_1Value.html">Value</a>& Exiv2::Metadatum::value </td>
203
<td class="paramname"> </td>
204
<td> ) </td>
205
<td width="100%"> const<code> [pure virtual]</code></td>
231
<table cellspacing="5" cellpadding="0" border="0">
239
212
Return a constant reference to the value.
241
214
This method is provided mostly for convenient and versatile output of the value which can (to some extent) be formatted through standard stream manipulators. Do not attempt to write to the value through this reference.<p>
242
215
<b>Example:</b> <br>
243
<div class="fragment"><pre class="fragment"> <a class="code" href="classExiv2_1_1ExifData.html#2b8ac7a474d6527c0f3f6a0a9cebef77">ExifData::const_iterator</a> i = exifData.findKey(<a class="code" href="classExiv2_1_1Metadatum.html#f9d30791ac19ecd4a80cd9214f3d1495">key</a>);
216
<div class="fragment"><pre class="fragment"> <a class="code" href="classExiv2_1_1ExifData.html#2b8ac7a474d6527c0f3f6a0a9cebef77">ExifData::const_iterator</a> i = exifData.findKey(<a class="code" href="classExiv2_1_1Metadatum.html#fe27ff30606a968b52a5e838dd4e730e">key</a>);
244
217
<span class="keywordflow">if</span> (i != exifData.end()) {
245
218
std::cout << i->key() << <span class="stringliteral">" "</span> << std::hex << i->value() << <span class="stringliteral">"\n"</span>;
248
<dl compact><dt><b>Returns:</b></dt><dd>A constant reference to the value. </dd></dl>
221
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A constant reference to the value. </dd></dl>
249
222
<dl compact><dt><b>Exceptions:</b></dt><dd>
250
223
<table border="0" cellspacing="2" cellpadding="0">
251
224
<tr><td valign="top"></td><td valign="top"><em><a class="el" href="classExiv2_1_1Error.html">Error</a></em> </td><td>if the value is not set. </td></tr>