1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Exiv2: Exiv2::Photoshop Struct 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.4.6 -->
<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 id="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>
</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="structExiv2_1_1Photoshop.html">Photoshop</a></div>
<h1>Exiv2::Photoshop Struct Reference</h1><!-- doxytag: class="Exiv2::Photoshop" -->Helper class, has methods to deal with Photoshop "Information Resource Blocks" (IRBs).
<a href="#_details">More...</a>
<p>
<code>#include <jpgimage.hpp></code>
<p>
<a href="structExiv2_1_1Photoshop-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="structExiv2_1_1Photoshop.html#cae5ddd34c41bf50fb3aac4275fc219e">locateIrb</a> (const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *pPsData, long sizePsData, uint16_t psTag, const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> **record, uint16_t *const sizeHdr, uint16_t *const sizeData)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Locates the data for a Photoshop tag in a Photoshop formated memory buffer. Operates on raw data to simplify reuse. <a href="#cae5ddd34c41bf50fb3aac4275fc219e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="10f3117d823b4047d9c83036efc1bf14"></a><!-- doxytag: member="Exiv2::Photoshop::locateIptcIrb" ref="10f3117d823b4047d9c83036efc1bf14" args="(const byte *pPsData, long sizePsData, const byte **record, uint16_t *const sizeHdr, uint16_t *const sizeData)" -->
static int </td><td class="memItemRight" valign="bottom"><a class="el" href="structExiv2_1_1Photoshop.html#10f3117d823b4047d9c83036efc1bf14">locateIptcIrb</a> (const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *pPsData, long sizePsData, const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> **record, uint16_t *const sizeHdr, uint16_t *const sizeData)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Forwards to <a class="el" href="structExiv2_1_1Photoshop.html#cae5ddd34c41bf50fb3aac4275fc219e">locateIrb()</a> with <em>psTag</em> = <em>iptc_</em>. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="classExiv2_1_1DataBuf.html">DataBuf</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structExiv2_1_1Photoshop.html#21b12dcbcd05f3c32b49c2121b77068e">setIptcIrb</a> (const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> *pPsData, long sizePsData, const <a class="el" href="classExiv2_1_1IptcData.html">IptcData</a> &iptcData)</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Set the new IPTC IRB, keeps existing IRBs but removes the IPTC block if there is no new IPTC data to write. <a href="#21b12dcbcd05f3c32b49c2121b77068e"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e593bf6546da454526229645e3114cbc"></a><!-- doxytag: member="Exiv2::Photoshop::ps3Id_" ref="e593bf6546da454526229645e3114cbc" args="[]" -->
static const char </td><td class="memItemRight" valign="bottom"><a class="el" href="structExiv2_1_1Photoshop.html#e593bf6546da454526229645e3114cbc">ps3Id_</a> [] = "Photoshop 3.0\0"</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Photoshop marker <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="78d00352aa18ac7bf6144e830856ea6b"></a><!-- doxytag: member="Exiv2::Photoshop::bimId_" ref="78d00352aa18ac7bf6144e830856ea6b" args="[]" -->
static const char </td><td class="memItemRight" valign="bottom"><a class="el" href="structExiv2_1_1Photoshop.html#78d00352aa18ac7bf6144e830856ea6b">bimId_</a> [] = "8BIM"</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Photoshop marker <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1f901d93824440438f7a015cb2738bd5"></a><!-- doxytag: member="Exiv2::Photoshop::iptc_" ref="1f901d93824440438f7a015cb2738bd5" args="" -->
static const uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structExiv2_1_1Photoshop.html#1f901d93824440438f7a015cb2738bd5">iptc_</a> = 0x0404</td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">Photoshop IPTC marker <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Helper class, has methods to deal with Photoshop "Information Resource Blocks" (IRBs).
<p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="cae5ddd34c41bf50fb3aac4275fc219e"></a><!-- doxytag: member="Exiv2::Photoshop::locateIrb" ref="cae5ddd34c41bf50fb3aac4275fc219e" args="(const byte *pPsData, long sizePsData, uint16_t psTag, const byte **record, uint16_t *const sizeHdr, uint16_t *const sizeData)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top">int Exiv2::Photoshop::locateIrb </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> * </td>
<td class="mdname" nowrap> <em>pPsData</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>long </td>
<td class="mdname" nowrap> <em>sizePsData</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>uint16_t </td>
<td class="mdname" nowrap> <em>psTag</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> ** </td>
<td class="mdname" nowrap> <em>record</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>uint16_t *const </td>
<td class="mdname" nowrap> <em>sizeHdr</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>uint16_t *const </td>
<td class="mdname" nowrap> <em>sizeData</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">) </td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Locates the data for a Photoshop tag in a Photoshop formated memory buffer. Operates on raw data to simplify reuse.
<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>pPsData</em> </td><td>Pointer to buffer containing entire payload of Photoshop formated data, e.g., from APP13 Jpeg segment. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>sizePsData</em> </td><td>Size in bytes of pPsData. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>psTag</em> </td><td>Tag number of the block to look for. </td></tr>
<tr><td valign="top"></td><td valign="top"><em>record</em> </td><td>Output value that is set to the start of the data block within pPsData (may not be null). </td></tr>
<tr><td valign="top"></td><td valign="top"><em>sizeHdr</em> </td><td>Output value that is set to the size of the header within the data block pointed to by record (may not be null). </td></tr>
<tr><td valign="top"></td><td valign="top"><em>sizeData</em> </td><td>Output value that is set to the size of the actual data within the data block pointed to by record (may not be null). </td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>0 if successful;<br>
3 if no data for psTag was found in pPsData;<br>
-2 if the pPsData buffer does not contain valid data. </dd></dl>
</td>
</tr>
</table>
<a class="anchor" name="21b12dcbcd05f3c32b49c2121b77068e"></a><!-- doxytag: member="Exiv2::Photoshop::setIptcIrb" ref="21b12dcbcd05f3c32b49c2121b77068e" args="(const byte *pPsData, long sizePsData, const IptcData &iptcData)" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
<tr>
<td class="mdRow">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="md" nowrap valign="top"><a class="el" href="classExiv2_1_1DataBuf.html">DataBuf</a> Exiv2::Photoshop::setIptcIrb </td>
<td class="md" valign="top">( </td>
<td class="md" nowrap valign="top">const <a class="el" href="namespaceExiv2.html#16f60a5bd4207fe155f6cf93a15efa72">byte</a> * </td>
<td class="mdname" nowrap> <em>pPsData</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>long </td>
<td class="mdname" nowrap> <em>sizePsData</em>, </td>
</tr>
<tr>
<td class="md" nowrap align="right"></td>
<td class="md"></td>
<td class="md" nowrap>const <a class="el" href="classExiv2_1_1IptcData.html">IptcData</a> & </td>
<td class="mdname" nowrap> <em>iptcData</em></td>
</tr>
<tr>
<td class="md"></td>
<td class="md">) </td>
<td class="md" colspan="2"><code> [static]</code></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
<tr>
<td>
</td>
<td>
<p>
Set the new IPTC IRB, keeps existing IRBs but removes the IPTC block if there is no new IPTC data to write.
<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>pPsData</em> </td><td>Existing IRB buffer </td></tr>
<tr><td valign="top"></td><td valign="top"><em>sizePsData</em> </td><td>Size of the IRB buffer, may be 0 </td></tr>
<tr><td valign="top"></td><td valign="top"><em>iptcData</em> </td><td>Iptc data to embed, may be empty </td></tr>
</table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>A data buffer containing the new IRB buffer, may have 0 size </dd></dl>
</td>
</tr>
</table>
<hr>The documentation for this struct was generated from the following files:<ul>
<li><a class="el" href="jpgimage_8hpp.html">jpgimage.hpp</a><li>jpgimage.cpp</ul>
<hr size="1"><address style="align: right;"><small>Generated on Fri Jun 2 23:55:00 2006 for Exiv2 by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address>
</body>
</html>
|