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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>iipsrv: IIPImage.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="iip.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">iipsrv
 <span id="projectnumber">1.1</span>
</div>
<div id="projectbrief">iipsrv is an advanced high-performance feature-rich image server for web-based streamed viewing and zooming of ultra high-resolution images</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IIPImage_8h_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">IIPImage.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// IIPImage class</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> </div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">/* IIP fcgi server module</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"></span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> Copyright (C) 2000-2019 Ruven Pillay.</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"></span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> This program is free software; you can redistribute it and/or modify</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> it under the terms of the GNU General Public License as published by</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> the Free Software Foundation; either version 3 of the License, or</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> (at your option) any later version.</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"></span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> This program is distributed in the hope that it will be useful,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> GNU General Public License for more details.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"></span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> You should have received a copy of the GNU General Public License</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> along with this program; if not, write to the Free Software Foundation,</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"> Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">*/</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#ifndef _IIPIMAGE_H</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#define _IIPIMAGE_H</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">// Fix missing snprintf in Windows</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#if defined _MSC_VER && _MSC_VER<1900</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#define snprintf _snprintf</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include <list></span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include <vector></span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include <map></span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include <stdexcept></span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "RawTile.h"</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classfile__error.html"> 43</a></span> <span class="keyword">class </span><a class="code" href="classfile__error.html">file_error</a> : <span class="keyword">public</span> std::runtime_error {</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classfile__error.html#a6a00388d4c518752d16670c38f00b607"> 46</a></span>  <a class="code" href="classfile__error.html#a6a00388d4c518752d16670c38f00b607">file_error</a>(std::string s) : <a class="code" href="namespacestd.html">std</a>::runtime_error(s) { }</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> };</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">// Supported image formats</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">enum</span> ImageFormat { TIF, JPEG2000, UNSUPPORTED };</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classIIPImage.html"> 62</a></span> <span class="keyword">class </span><a class="code" href="classIIPImage.html">IIPImage</a> {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  std::string imagePath;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  std::string fileSystemPrefix;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  std::string fileNamePattern;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordtype">bool</span> isFile;</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  std::string suffix;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordtype">void</span> testImageType();</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordtype">void</span> measureHorizontalAngles();</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  <span class="keywordtype">void</span> measureVerticalAngles();</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  std::list <int> horizontalAnglesList;</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>  std::list <int> verticalAnglesList;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keyword">protected</span>:</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classIIPImage.html#a160a9f35f8bf1bbe25d55df3f74a056f"> 100</a></span>  std::vector <int> <a class="code" href="classIIPImage.html#a160a9f35f8bf1bbe25d55df3f74a056f">lut</a>;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div><div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f"> 103</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f">virtual_levels</a>;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579"> 106</a></span>  ImageFormat <a class="code" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">format</a>;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="classIIPImage.html#a44c428ccf5732f5930897db57b75f63b"> 112</a></span>  std::vector <unsigned int> <a class="code" href="classIIPImage.html#a44c428ccf5732f5930897db57b75f63b">image_widths</a>, image_heights;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458"> 115</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">tile_width</a>, tile_height;</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61"> 118</a></span>  ColourSpaces <a class="code" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">colourspace</a>;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7"> 121</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">numResolutions</a>;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7"> 124</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">bpc</a>;</div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114"> 127</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">channels</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e"> 130</a></span>  SampleType <a class="code" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">sampleType</a>;</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classIIPImage.html#a01326e716795bcfa30799c4a3a8dd26f"> 133</a></span>  std::vector <float> <a class="code" href="classIIPImage.html#a01326e716795bcfa30799c4a3a8dd26f">min</a>, max;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2"> 136</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2">quality_layers</a>;</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div><div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c"> 139</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">isSet</a>;</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div><div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19"> 142</a></span>  <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19">currentX</a>, currentY;</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div><div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="classIIPImage.html#ac173098b421c39783feebdf753cbdf29"> 145</a></span>  std::vector<unsigned int> <a class="code" href="classIIPImage.html#ac173098b421c39783feebdf753cbdf29">histogram</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div><div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classIIPImage.html#a83030b8e4eb6bbcbb4abdb4932a8d531"> 148</a></span>  std::map <const std::string, std::string> <a class="code" href="classIIPImage.html#a83030b8e4eb6bbcbb4abdb4932a8d531">metadata</a>;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc"> 151</a></span>  time_t <a class="code" href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc">timestamp</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div><div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classIIPImage.html#a06badd6d06107fe6110a027eaac7318c"> 157</a></span>  <a class="code" href="classIIPImage.html#a06badd6d06107fe6110a027eaac7318c">IIPImage</a>()</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  : isFile( false ),</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  <a class="code" href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f">virtual_levels</a>( 0 ),</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <a class="code" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">format</a>( UNSUPPORTED ),</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <a class="code" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">tile_width</a>( 0 ),</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  tile_height( 0 ),</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  <a class="code" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">colourspace</a>( NONE ),</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <a class="code" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">numResolutions</a>( 0 ),</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <a class="code" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">bpc</a>( 0 ),</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  <a class="code" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">channels</a>( 0 ),</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <a class="code" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">sampleType</a>( FIXEDPOINT ),</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  <a class="code" href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2">quality_layers</a>( 0 ),</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <a class="code" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">isSet</a>( false ),</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  <a class="code" href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19">currentX</a>( 0 ),</div><div class="line"><a name="l00171"></a><span class="lineno"> 171</span>  currentY( 90 ),</div><div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  <a class="code" href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc">timestamp</a>( 0 ) {};</div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="classIIPImage.html#a0b06782b2f2d63ca75e915762356b638"> 177</a></span>  <a class="code" href="classIIPImage.html#a0b06782b2f2d63ca75e915762356b638">IIPImage</a>( <span class="keyword">const</span> std::string& s )</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  : imagePath( s ),</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  isFile( false ),</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <a class="code" href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f">virtual_levels</a>( 0 ),</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <a class="code" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">format</a>( UNSUPPORTED ),</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <a class="code" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">tile_width</a>( 0 ),</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  tile_height( 0 ),</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <a class="code" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">colourspace</a>( NONE ),</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <a class="code" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">numResolutions</a>( 0 ),</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <a class="code" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">bpc</a>( 0 ),</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <a class="code" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">channels</a>( 0 ),</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <a class="code" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">sampleType</a>( FIXEDPOINT ),</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <a class="code" href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2">quality_layers</a>( 0 ),</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <a class="code" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">isSet</a>( false ),</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <a class="code" href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19">currentX</a>( 0 ),</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  currentY( 90 ),</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  <a class="code" href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc">timestamp</a>( 0 ) {};</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div><div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="classIIPImage.html#a315b290529ed48af287008cb88de5d78"> 198</a></span>  <a class="code" href="classIIPImage.html#a315b290529ed48af287008cb88de5d78">IIPImage</a>( <span class="keyword">const</span> <a class="code" href="classIIPImage.html">IIPImage</a>& image )</div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>  : imagePath( image.imagePath ),</div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  fileSystemPrefix( image.fileSystemPrefix ),</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>  fileNamePattern( image.fileNamePattern ),</div><div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  isFile( image.isFile ),</div><div class="line"><a name="l00203"></a><span class="lineno"> 203</span>  suffix( image.suffix ),</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  horizontalAnglesList( image.horizontalAnglesList ),</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  verticalAnglesList( image.verticalAnglesList ),</div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <a class="code" href="classIIPImage.html#a160a9f35f8bf1bbe25d55df3f74a056f">lut</a>( image.<a class="code" href="classIIPImage.html#a160a9f35f8bf1bbe25d55df3f74a056f">lut</a> ),</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <a class="code" href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f">virtual_levels</a>( image.<a class="code" href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f">virtual_levels</a> ),</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <a class="code" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">format</a>( image.<a class="code" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">format</a> ),</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <a class="code" href="classIIPImage.html#a44c428ccf5732f5930897db57b75f63b">image_widths</a>( image.<a class="code" href="classIIPImage.html#a44c428ccf5732f5930897db57b75f63b">image_widths</a> ),</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  image_heights( image.image_heights ),</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <a class="code" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">tile_width</a>( image.<a class="code" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">tile_width</a> ),</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  tile_height( image.tile_height ),</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>  <a class="code" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">colourspace</a>( image.<a class="code" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">colourspace</a> ),</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>  <a class="code" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">numResolutions</a>( image.<a class="code" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">numResolutions</a> ),</div><div class="line"><a name="l00215"></a><span class="lineno"> 215</span>  <a class="code" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">bpc</a>( image.<a class="code" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">bpc</a> ),</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <a class="code" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">channels</a>( image.<a class="code" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">channels</a> ),</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <a class="code" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">sampleType</a>( image.<a class="code" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">sampleType</a> ),</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <a class="code" href="classIIPImage.html#a01326e716795bcfa30799c4a3a8dd26f">min</a>( image.<a class="code" href="classIIPImage.html#a01326e716795bcfa30799c4a3a8dd26f">min</a> ),</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  max( image.max ),</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  <a class="code" href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2">quality_layers</a>( image.<a class="code" href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2">quality_layers</a> ),</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <a class="code" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">isSet</a>( image.<a class="code" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">isSet</a> ),</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <a class="code" href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19">currentX</a>( image.<a class="code" href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19">currentX</a> ),</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  currentY( image.currentY ),</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <a class="code" href="classIIPImage.html#ac173098b421c39783feebdf753cbdf29">histogram</a>( image.<a class="code" href="classIIPImage.html#ac173098b421c39783feebdf753cbdf29">histogram</a> ),</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <a class="code" href="classIIPImage.html#a83030b8e4eb6bbcbb4abdb4932a8d531">metadata</a>( image.<a class="code" href="classIIPImage.html#a83030b8e4eb6bbcbb4abdb4932a8d531">metadata</a> ),</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <a class="code" href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc">timestamp</a>( image.<a class="code" href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc">timestamp</a> ) {};</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="classIIPImage.html#a3713fd838842aabaa1b2ed306b1149de"> 229</a></span>  <span class="keyword">virtual</span> <a class="code" href="classIIPImage.html#a3713fd838842aabaa1b2ed306b1149de">~IIPImage</a>() { ; };</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#ac37a85dae89ab056872b9bb574459a76">Initialise</a>();</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#a1ad4382ddbf025261049257bcfbf0f23">swap</a>( <a class="code" href="classIIPImage.html">IIPImage</a>& a, <a class="code" href="classIIPImage.html">IIPImage</a>& b );</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="classIIPImage.html#ad55747906896868279c8d14adc3d7304"> 241</a></span>  std::list <int> <a class="code" href="classIIPImage.html#ad55747906896868279c8d14adc3d7304">getVerticalViewsList</a>(){ <span class="keywordflow">return</span> verticalAnglesList; };</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div><div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="classIIPImage.html#afd23c9da4bc24eed7a6791d1cec3e28f"> 244</a></span>  std::list <int> <a class="code" href="classIIPImage.html#afd23c9da4bc24eed7a6791d1cec3e28f">getHorizontalViewsList</a>(){ <span class="keywordflow">return</span> horizontalAnglesList; };</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="classIIPImage.html#a1c2bc5062ad70e66073c6b8e7cf0eb33"> 247</a></span>  <span class="keyword">const</span> std::string& <a class="code" href="classIIPImage.html#a1c2bc5062ad70e66073c6b8e7cf0eb33">getImagePath</a>() { <span class="keywordflow">return</span> imagePath; };</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span> </div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <span class="keyword">const</span> std::string <a class="code" href="classIIPImage.html#a1c1eed40617116d2886772708db5cd18">getFileName</a>( <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y );</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>  <span class="comment">// const std::string& getImageFormat() { return format; };</span></div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classIIPImage.html#aa380533e0bf44f8c01b7812068b00318"> 257</a></span>  ImageFormat <a class="code" href="classIIPImage.html#aa380533e0bf44f8c01b7812068b00318">getImageFormat</a>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">format</a>; };</div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>  <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#a36b0f425868ddbceb401e046fd8d44e3">updateTimestamp</a>( <span class="keyword">const</span> std::string& s );</div><div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <span class="keyword">const</span> std::string <a class="code" href="classIIPImage.html#a0482c9740d637e3f61f8f80475b3cde5">getTimestamp</a>();</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classIIPImage.html#a596986be264c107c4798e48db471acc0"> 268</a></span>  <span class="keywordtype">bool</span> <span class="keyword">set</span>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">isSet</a>; };</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="classIIPImage.html#ad6b7f67a066c9d2f140e02f57eb27eac"> 271</a></span>  <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#ad6b7f67a066c9d2f140e02f57eb27eac">setFileSystemPrefix</a>( <span class="keyword">const</span> std::string& prefix ) { fileSystemPrefix = prefix; };</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div><div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="classIIPImage.html#af8e07504630aa6eaf6740fc866400bf0"> 274</a></span>  <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#af8e07504630aa6eaf6740fc866400bf0">setFileNamePattern</a>( <span class="keyword">const</span> std::string& pattern ) { fileNamePattern = pattern; };</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="classIIPImage.html#ada9ea083b80597e3c2ce3d7ca656408e"> 277</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#ada9ea083b80597e3c2ce3d7ca656408e">getNumResolutions</a>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">numResolutions</a>; };</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div><div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="classIIPImage.html#a553c53c71baa7fbb92af53418ae30f8c"> 280</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a553c53c71baa7fbb92af53418ae30f8c">getNumBitsPerPixel</a>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">bpc</a>; };</div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span> </div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classIIPImage.html#aaca96b84cac352ce920c666fbfae1e12"> 283</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#aaca96b84cac352ce920c666fbfae1e12">getNumChannels</a>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">channels</a>; };</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classIIPImage.html#a73b493b1a07fa387719d027acbf65670"> 288</a></span>  <span class="keywordtype">float</span> <a class="code" href="classIIPImage.html#a73b493b1a07fa387719d027acbf65670">getMinValue</a>( <span class="keywordtype">int</span> n=0 ) { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a01326e716795bcfa30799c4a3a8dd26f">min</a>[n]; };</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span> </div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="classIIPImage.html#a429fe94bcece25038c33d55e9046fa12"> 293</a></span>  <span class="keywordtype">float</span> <a class="code" href="classIIPImage.html#a429fe94bcece25038c33d55e9046fa12">getMaxValue</a>( <span class="keywordtype">int</span> n=0 ) { <span class="keywordflow">return</span> max[n]; };</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div><div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="classIIPImage.html#a9a99f376ced738d34263756fb875e950"> 296</a></span>  SampleType <a class="code" href="classIIPImage.html#a9a99f376ced738d34263756fb875e950">getSampleType</a>(){ <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">sampleType</a>; };</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="classIIPImage.html#a931490883ccce09a45a97a85ebf79561"> 301</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a931490883ccce09a45a97a85ebf79561">getImageWidth</a>( <span class="keywordtype">int</span> n=0 ) { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a44c428ccf5732f5930897db57b75f63b">image_widths</a>[n]; };</div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div><div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="classIIPImage.html#acf2e51d0cf8ddf1afca64ff678f2c172"> 306</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#acf2e51d0cf8ddf1afca64ff678f2c172">getImageHeight</a>( <span class="keywordtype">int</span> n=0 ) { <span class="keywordflow">return</span> image_heights[n]; };</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div><div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="classIIPImage.html#acfd041ac9b341757368cc97750663341"> 309</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#acfd041ac9b341757368cc97750663341">getTileHeight</a>() { <span class="keywordflow">return</span> tile_height; };</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div><div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="classIIPImage.html#a86f893a5fbc2067bd744f07a0d1731df"> 312</a></span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a86f893a5fbc2067bd744f07a0d1731df">getTileWidth</a>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">tile_width</a>; };</div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span> </div><div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="classIIPImage.html#a541ecc87687dcfec7f3a5155059d2277"> 315</a></span>  ColourSpaces <a class="code" href="classIIPImage.html#a541ecc87687dcfec7f3a5155059d2277">getColourSpace</a>() { <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">colourspace</a>; };</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div><div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="classIIPImage.html#aa81f258d49a0a6db9fd97a81370aba30"> 319</a></span>  <span class="keyword">const</span> std::string& <a class="code" href="classIIPImage.html#aa81f258d49a0a6db9fd97a81370aba30">getMetadata</a>( <span class="keyword">const</span> std::string& index ) {</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <span class="keywordflow">return</span> <a class="code" href="classIIPImage.html#a83030b8e4eb6bbcbb4abdb4932a8d531">metadata</a>[index];</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  };</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span> </div><div class="line"><a name="l00324"></a><span class="lineno"><a class="line" href="classIIPImage.html#a749f7d698473559d31b36e8c2b815d4d"> 324</a></span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classIIPImage.html#a749f7d698473559d31b36e8c2b815d4d">regionDecoding</a>(){ <span class="keywordflow">return</span> <span class="keyword">false</span>; };</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div><div class="line"><a name="l00330"></a><span class="lineno"><a class="line" href="classIIPImage.html#aa5de3329815d2a97edefc07004b3bf72"> 330</a></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#aa5de3329815d2a97edefc07004b3bf72">Load</a>( <span class="keyword">const</span> std::string& module ) {;};</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span> </div><div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="classIIPImage.html#ab3f4126c13c57f3a2aa3ad7615cd3a85"> 333</a></span>  <span class="keyword">virtual</span> <span class="keyword">const</span> std::string <a class="code" href="classIIPImage.html#ab3f4126c13c57f3a2aa3ad7615cd3a85">getDescription</a>() { <span class="keywordflow">return</span> std::string( <span class="stringliteral">"IIPImage Base Class"</span> ); };</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div><div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="classIIPImage.html#abd6a0dc0dbfabe05c52b4cf8ab90032c"> 336</a></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#abd6a0dc0dbfabe05c52b4cf8ab90032c">openImage</a>() { <span class="keywordflow">throw</span> <a class="code" href="classfile__error.html">file_error</a>( <span class="stringliteral">"IIPImage openImage called"</span> ); };</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div><div class="line"><a name="l00339"></a><span class="lineno"> 339</span> </div><div class="line"><a name="l00342"></a><span class="lineno"><a class="line" href="classIIPImage.html#a6b1c213f6057facf0b5c2f94ed5240b3"> 342</a></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#a6b1c213f6057facf0b5c2f94ed5240b3">loadImageInfo</a>( <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y ) { ; };</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classIIPImage.html#aa1c4af627d8985bf8d882ffc49d7cc17"> 345</a></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classIIPImage.html#aa1c4af627d8985bf8d882ffc49d7cc17">closeImage</a>() {;};</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span> </div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div><div class="line"><a name="l00356"></a><span class="lineno"><a class="line" href="classIIPImage.html#ae0f3b29ad6016e40a543db581f60f87b"> 356</a></span>  <span class="keyword">virtual</span> <a class="code" href="classRawTile.html">RawTile</a> <a class="code" href="classIIPImage.html#ae0f3b29ad6016e40a543db581f60f87b">getTile</a>( <span class="keywordtype">int</span> h, <span class="keywordtype">int</span> v, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> r, <span class="keywordtype">int</span> l, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> t ) { <span class="keywordflow">return</span> <a class="code" href="classRawTile.html">RawTile</a>(); };</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span> </div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span> </div><div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classIIPImage.html#a4ea39b31b5fee84f16e0487e876f90e9"> 371</a></span>  <span class="keyword">virtual</span> <a class="code" href="classRawTile.html">RawTile</a> <a class="code" href="classIIPImage.html#a4ea39b31b5fee84f16e0487e876f90e9">getRegion</a>( <span class="keywordtype">int</span> ha, <span class="keywordtype">int</span> va, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> r, <span class="keywordtype">int</span> layers, <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> w, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> h ){ <span class="keywordflow">return</span> <a class="code" href="classRawTile.html">RawTile</a>(); };</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div><div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classIIPImage.html#a33361969aaa0f0c8a458859951b79c21"> 375</a></span>  <a class="code" href="classIIPImage.html">IIPImage</a>& <a class="code" href="classIIPImage.html#a33361969aaa0f0c8a458859951b79c21">operator = </a>( <a class="code" href="classIIPImage.html">IIPImage</a> image ){</div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <a class="code" href="classIIPImage.html#a1ad4382ddbf025261049257bcfbf0f23">swap</a>( *<span class="keyword">this</span>, image );</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00378"></a><span class="lineno"> 378</span>  };</div><div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <span class="keyword">friend</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#ab94aff77a9ac0c020051bc79b8a02d22">operator == </a>( <span class="keyword">const</span> <a class="code" href="classIIPImage.html">IIPImage</a>&, <span class="keyword">const</span> <a class="code" href="classIIPImage.html">IIPImage</a>& );</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <span class="keyword">friend</span> <span class="keywordtype">int</span> <a class="code" href="classIIPImage.html#a324822d5531b420b2cab11f611d62c78">operator != </a>( <span class="keyword">const</span> <a class="code" href="classIIPImage.html">IIPImage</a>&, <span class="keyword">const</span> <a class="code" href="classIIPImage.html">IIPImage</a>& );</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span> };</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span> </div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor">#endif</span></div><div class="ttc" id="classIIPImage_html_a429fe94bcece25038c33d55e9046fa12"><div class="ttname"><a href="classIIPImage.html#a429fe94bcece25038c33d55e9046fa12">IIPImage::getMaxValue</a></div><div class="ttdeci">float getMaxValue(int n=0)</div><div class="ttdoc">Return the minimum sample value for each channel. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:293</div></div>
<div class="ttc" id="classIIPImage_html_a1ad4382ddbf025261049257bcfbf0f23"><div class="ttname"><a href="classIIPImage.html#a1ad4382ddbf025261049257bcfbf0f23">IIPImage::swap</a></div><div class="ttdeci">void swap(IIPImage &a, IIPImage &b)</div><div class="ttdoc">Swap function. </div></div>
<div class="ttc" id="classIIPImage_html_a324822d5531b420b2cab11f611d62c78"><div class="ttname"><a href="classIIPImage.html#a324822d5531b420b2cab11f611d62c78">IIPImage::operator!=</a></div><div class="ttdeci">friend int operator!=(const IIPImage &, const IIPImage &)</div><div class="ttdoc">Comparison non-equality operator. </div></div>
<div class="ttc" id="classIIPImage_html_a553c53c71baa7fbb92af53418ae30f8c"><div class="ttname"><a href="classIIPImage.html#a553c53c71baa7fbb92af53418ae30f8c">IIPImage::getNumBitsPerPixel</a></div><div class="ttdeci">unsigned int getNumBitsPerPixel()</div><div class="ttdoc">Return the number of bits per pixel for this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:280</div></div>
<div class="ttc" id="classIIPImage_html_a86f893a5fbc2067bd744f07a0d1731df"><div class="ttname"><a href="classIIPImage.html#a86f893a5fbc2067bd744f07a0d1731df">IIPImage::getTileWidth</a></div><div class="ttdeci">unsigned int getTileWidth()</div><div class="ttdoc">Return the base tile width in pixels. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:312</div></div>
<div class="ttc" id="classIIPImage_html_a9a99f376ced738d34263756fb875e950"><div class="ttname"><a href="classIIPImage.html#a9a99f376ced738d34263756fb875e950">IIPImage::getSampleType</a></div><div class="ttdeci">SampleType getSampleType()</div><div class="ttdoc">Return the sample format type. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:296</div></div>
<div class="ttc" id="classIIPImage_html_a73b493b1a07fa387719d027acbf65670"><div class="ttname"><a href="classIIPImage.html#a73b493b1a07fa387719d027acbf65670">IIPImage::getMinValue</a></div><div class="ttdeci">float getMinValue(int n=0)</div><div class="ttdoc">Return the minimum sample value for each channel. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:288</div></div>
<div class="ttc" id="classIIPImage_html_a931490883ccce09a45a97a85ebf79561"><div class="ttname"><a href="classIIPImage.html#a931490883ccce09a45a97a85ebf79561">IIPImage::getImageWidth</a></div><div class="ttdeci">unsigned int getImageWidth(int n=0)</div><div class="ttdoc">Return the image width in pixels for a given resolution. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:301</div></div>
<div class="ttc" id="classIIPImage_html_a575d5f8b1d24937934f1755dacc17fcc"><div class="ttname"><a href="classIIPImage.html#a575d5f8b1d24937934f1755dacc17fcc">IIPImage::timestamp</a></div><div class="ttdeci">time_t timestamp</div><div class="ttdoc">Image modification timestamp. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:151</div></div>
<div class="ttc" id="classIIPImage_html_a83030b8e4eb6bbcbb4abdb4932a8d531"><div class="ttname"><a href="classIIPImage.html#a83030b8e4eb6bbcbb4abdb4932a8d531">IIPImage::metadata</a></div><div class="ttdeci">std::map< const std::string, std::string > metadata</div><div class="ttdoc">STL map to hold string metadata. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:148</div></div>
<div class="ttc" id="classIIPImage_html_ac37a85dae89ab056872b9bb574459a76"><div class="ttname"><a href="classIIPImage.html#ac37a85dae89ab056872b9bb574459a76">IIPImage::Initialise</a></div><div class="ttdeci">void Initialise()</div><div class="ttdoc">Test the image and initialise some parameters. </div></div>
<div class="ttc" id="classIIPImage_html_ada9ea083b80597e3c2ce3d7ca656408e"><div class="ttname"><a href="classIIPImage.html#ada9ea083b80597e3c2ce3d7ca656408e">IIPImage::getNumResolutions</a></div><div class="ttdeci">unsigned int getNumResolutions()</div><div class="ttdoc">Return the number of available resolutions in the image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:277</div></div>
<div class="ttc" id="classIIPImage_html_aaca96b84cac352ce920c666fbfae1e12"><div class="ttname"><a href="classIIPImage.html#aaca96b84cac352ce920c666fbfae1e12">IIPImage::getNumChannels</a></div><div class="ttdeci">unsigned int getNumChannels()</div><div class="ttdoc">Return the number of channels for this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:283</div></div>
<div class="ttc" id="classIIPImage_html_a87e6b75dadea8b2835fc798b2c6422f7"><div class="ttname"><a href="classIIPImage.html#a87e6b75dadea8b2835fc798b2c6422f7">IIPImage::numResolutions</a></div><div class="ttdeci">unsigned int numResolutions</div><div class="ttdoc">The number of available resolutions in this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:121</div></div>
<div class="ttc" id="namespacestd_html"><div class="ttname"><a href="namespacestd.html">std</a></div><div class="ttdoc">STL namespace. </div></div>
<div class="ttc" id="classIIPImage_html_a01326e716795bcfa30799c4a3a8dd26f"><div class="ttname"><a href="classIIPImage.html#a01326e716795bcfa30799c4a3a8dd26f">IIPImage::min</a></div><div class="ttdeci">std::vector< float > min</div><div class="ttdoc">The min and max sample value for each channel. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:133</div></div>
<div class="ttc" id="classIIPImage_html_ae0f3b29ad6016e40a543db581f60f87b"><div class="ttname"><a href="classIIPImage.html#ae0f3b29ad6016e40a543db581f60f87b">IIPImage::getTile</a></div><div class="ttdeci">virtual RawTile getTile(int h, int v, unsigned int r, int l, unsigned int t)</div><div class="ttdoc">Return an individual tile for a given angle and resolution. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:356</div></div>
<div class="ttc" id="classIIPImage_html_a36b0f425868ddbceb401e046fd8d44e3"><div class="ttname"><a href="classIIPImage.html#a36b0f425868ddbceb401e046fd8d44e3">IIPImage::updateTimestamp</a></div><div class="ttdeci">void updateTimestamp(const std::string &s)</div><div class="ttdoc">Get the image timestamp. </div></div>
<div class="ttc" id="classIIPImage_html_a03b0132269c3aa1db9bfadb2b332265f"><div class="ttname"><a href="classIIPImage.html#a03b0132269c3aa1db9bfadb2b332265f">IIPImage::virtual_levels</a></div><div class="ttdeci">unsigned int virtual_levels</div><div class="ttdoc">Number of resolution levels that don&#39;t physically exist in file. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:103</div></div>
<div class="ttc" id="classIIPImage_html_a06badd6d06107fe6110a027eaac7318c"><div class="ttname"><a href="classIIPImage.html#a06badd6d06107fe6110a027eaac7318c">IIPImage::IIPImage</a></div><div class="ttdeci">IIPImage()</div><div class="ttdoc">Default Constructor. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:157</div></div>
<div class="ttc" id="classIIPImage_html_acfd041ac9b341757368cc97750663341"><div class="ttname"><a href="classIIPImage.html#acfd041ac9b341757368cc97750663341">IIPImage::getTileHeight</a></div><div class="ttdeci">unsigned int getTileHeight()</div><div class="ttdoc">Return the base tile height in pixels for a given resolution. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:309</div></div>
<div class="ttc" id="classIIPImage_html_aa79374528c9480b121a286c1c9f056a2"><div class="ttname"><a href="classIIPImage.html#aa79374528c9480b121a286c1c9f056a2">IIPImage::quality_layers</a></div><div class="ttdeci">unsigned int quality_layers</div><div class="ttdoc">Quality layers. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:136</div></div>
<div class="ttc" id="classIIPImage_html_a749f7d698473559d31b36e8c2b815d4d"><div class="ttname"><a href="classIIPImage.html#a749f7d698473559d31b36e8c2b815d4d">IIPImage::regionDecoding</a></div><div class="ttdeci">virtual bool regionDecoding()</div><div class="ttdoc">Return whether this image type directly handles region decoding. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:324</div></div>
<div class="ttc" id="classIIPImage_html_a1c2bc5062ad70e66073c6b8e7cf0eb33"><div class="ttname"><a href="classIIPImage.html#a1c2bc5062ad70e66073c6b8e7cf0eb33">IIPImage::getImagePath</a></div><div class="ttdeci">const std::string & getImagePath()</div><div class="ttdoc">Return the image path. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:247</div></div>
<div class="ttc" id="classIIPImage_html_ac173098b421c39783feebdf753cbdf29"><div class="ttname"><a href="classIIPImage.html#ac173098b421c39783feebdf753cbdf29">IIPImage::histogram</a></div><div class="ttdeci">std::vector< unsigned int > histogram</div><div class="ttdoc">Image histogram. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:145</div></div>
<div class="ttc" id="classIIPImage_html_ab3f4126c13c57f3a2aa3ad7615cd3a85"><div class="ttname"><a href="classIIPImage.html#ab3f4126c13c57f3a2aa3ad7615cd3a85">IIPImage::getDescription</a></div><div class="ttdeci">virtual const std::string getDescription()</div><div class="ttdoc">Return codec description: Overloaded by child class. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:333</div></div>
<div class="ttc" id="classIIPImage_html_a0b06782b2f2d63ca75e915762356b638"><div class="ttname"><a href="classIIPImage.html#a0b06782b2f2d63ca75e915762356b638">IIPImage::IIPImage</a></div><div class="ttdeci">IIPImage(const std::string &s)</div><div class="ttdoc">Constructer taking the image path as parameter. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:177</div></div>
<div class="ttc" id="classIIPImage_html_ab94aff77a9ac0c020051bc79b8a02d22"><div class="ttname"><a href="classIIPImage.html#ab94aff77a9ac0c020051bc79b8a02d22">IIPImage::operator==</a></div><div class="ttdeci">friend int operator==(const IIPImage &, const IIPImage &)</div><div class="ttdoc">Comparison equality operator. </div></div>
<div class="ttc" id="classIIPImage_html_aa81f258d49a0a6db9fd97a81370aba30"><div class="ttname"><a href="classIIPImage.html#aa81f258d49a0a6db9fd97a81370aba30">IIPImage::getMetadata</a></div><div class="ttdeci">const std::string & getMetadata(const std::string &index)</div><div class="ttdoc">Return image metadata. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:319</div></div>
<div class="ttc" id="classIIPImage_html_afd23c9da4bc24eed7a6791d1cec3e28f"><div class="ttname"><a href="classIIPImage.html#afd23c9da4bc24eed7a6791d1cec3e28f">IIPImage::getHorizontalViewsList</a></div><div class="ttdeci">std::list< int > getHorizontalViewsList()</div><div class="ttdoc">Return a list of horizontal angles. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:244</div></div>
<div class="ttc" id="classIIPImage_html_a160a9f35f8bf1bbe25d55df3f74a056f"><div class="ttname"><a href="classIIPImage.html#a160a9f35f8bf1bbe25d55df3f74a056f">IIPImage::lut</a></div><div class="ttdeci">std::vector< int > lut</div><div class="ttdoc">LUT. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:100</div></div>
<div class="ttc" id="classIIPImage_html_acf2e51d0cf8ddf1afca64ff678f2c172"><div class="ttname"><a href="classIIPImage.html#acf2e51d0cf8ddf1afca64ff678f2c172">IIPImage::getImageHeight</a></div><div class="ttdeci">unsigned int getImageHeight(int n=0)</div><div class="ttdoc">Return the image height in pixels for a given resolution. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:306</div></div>
<div class="ttc" id="classIIPImage_html_a4ea39b31b5fee84f16e0487e876f90e9"><div class="ttname"><a href="classIIPImage.html#a4ea39b31b5fee84f16e0487e876f90e9">IIPImage::getRegion</a></div><div class="ttdeci">virtual RawTile getRegion(int ha, int va, unsigned int r, int layers, int x, int y, unsigned int w, unsigned int h)</div><div class="ttdoc">Return a region for a given angle and resolution. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:371</div></div>
<div class="ttc" id="classIIPImage_html_abd6a0dc0dbfabe05c52b4cf8ab90032c"><div class="ttname"><a href="classIIPImage.html#abd6a0dc0dbfabe05c52b4cf8ab90032c">IIPImage::openImage</a></div><div class="ttdeci">virtual void openImage()</div><div class="ttdoc">Open the image: Overloaded by child class. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:336</div></div>
<div class="ttc" id="classIIPImage_html_a0482c9740d637e3f61f8f80475b3cde5"><div class="ttname"><a href="classIIPImage.html#a0482c9740d637e3f61f8f80475b3cde5">IIPImage::getTimestamp</a></div><div class="ttdeci">const std::string getTimestamp()</div><div class="ttdoc">Get a HTTP RFC 1123 formatted timestamp. </div></div>
<div class="ttc" id="classfile__error_html"><div class="ttname"><a href="classfile__error.html">file_error</a></div><div class="ttdoc">Define our own derived exception class for file errors. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:43</div></div>
<div class="ttc" id="classIIPImage_html_ad55747906896868279c8d14adc3d7304"><div class="ttname"><a href="classIIPImage.html#ad55747906896868279c8d14adc3d7304">IIPImage::getVerticalViewsList</a></div><div class="ttdeci">std::list< int > getVerticalViewsList()</div><div class="ttdoc">Return a list of available vertical angles. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:241</div></div>
<div class="ttc" id="classfile__error_html_a6a00388d4c518752d16670c38f00b607"><div class="ttname"><a href="classfile__error.html#a6a00388d4c518752d16670c38f00b607">file_error::file_error</a></div><div class="ttdeci">file_error(std::string s)</div><div class="ttdef"><b>Definition:</b> IIPImage.h:46</div></div>
<div class="ttc" id="classIIPImage_html"><div class="ttname"><a href="classIIPImage.html">IIPImage</a></div><div class="ttdoc">Main class to handle the pyramidal image source. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:62</div></div>
<div class="ttc" id="classIIPImage_html_a9b51c8811c316082af8ac76f8bf71458"><div class="ttname"><a href="classIIPImage.html#a9b51c8811c316082af8ac76f8bf71458">IIPImage::tile_width</a></div><div class="ttdeci">unsigned int tile_width</div><div class="ttdoc">The base tile pixel dimensions. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:115</div></div>
<div class="ttc" id="classIIPImage_html_a315b290529ed48af287008cb88de5d78"><div class="ttname"><a href="classIIPImage.html#a315b290529ed48af287008cb88de5d78">IIPImage::IIPImage</a></div><div class="ttdeci">IIPImage(const IIPImage &image)</div><div class="ttdoc">Copy Constructor taking reference to another IIPImage object. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:198</div></div>
<div class="ttc" id="classIIPImage_html_a6b1c213f6057facf0b5c2f94ed5240b3"><div class="ttname"><a href="classIIPImage.html#a6b1c213f6057facf0b5c2f94ed5240b3">IIPImage::loadImageInfo</a></div><div class="ttdeci">virtual void loadImageInfo(int x, int y)</div><div class="ttdoc">Load information about the image eg. number of channels, tile size etc. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:342</div></div>
<div class="ttc" id="classIIPImage_html_a2123b0b3e6b6fd7712cd32c17bf82579"><div class="ttname"><a href="classIIPImage.html#a2123b0b3e6b6fd7712cd32c17bf82579">IIPImage::format</a></div><div class="ttdeci">ImageFormat format</div><div class="ttdoc">Return the image format e.g. tif. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:106</div></div>
<div class="ttc" id="classIIPImage_html_ad6b7f67a066c9d2f140e02f57eb27eac"><div class="ttname"><a href="classIIPImage.html#ad6b7f67a066c9d2f140e02f57eb27eac">IIPImage::setFileSystemPrefix</a></div><div class="ttdeci">void setFileSystemPrefix(const std::string &prefix)</div><div class="ttdoc">Set a file system prefix for added security. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:271</div></div>
<div class="ttc" id="classIIPImage_html_a1dde1c87d4659cc987ec30e74164686c"><div class="ttname"><a href="classIIPImage.html#a1dde1c87d4659cc987ec30e74164686c">IIPImage::isSet</a></div><div class="ttdeci">bool isSet</div><div class="ttdoc">Indicate whether we have opened and initialised some parameters for this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:139</div></div>
<div class="ttc" id="classIIPImage_html_abf83b9ff976db63209afe1029934dd61"><div class="ttname"><a href="classIIPImage.html#abf83b9ff976db63209afe1029934dd61">IIPImage::colourspace</a></div><div class="ttdeci">ColourSpaces colourspace</div><div class="ttdoc">The colour space of the image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:118</div></div>
<div class="ttc" id="classIIPImage_html_a1c1eed40617116d2886772708db5cd18"><div class="ttname"><a href="classIIPImage.html#a1c1eed40617116d2886772708db5cd18">IIPImage::getFileName</a></div><div class="ttdeci">const std::string getFileName(int x, int y)</div><div class="ttdoc">Return the full file path for a particular horizontal and vertical angle. </div></div>
<div class="ttc" id="classIIPImage_html_afac1d8fe3ba167cfb90a49d437021114"><div class="ttname"><a href="classIIPImage.html#afac1d8fe3ba167cfb90a49d437021114">IIPImage::channels</a></div><div class="ttdeci">unsigned int channels</div><div class="ttdoc">The number of channels for this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:127</div></div>
<div class="ttc" id="classIIPImage_html_aa1c4af627d8985bf8d882ffc49d7cc17"><div class="ttname"><a href="classIIPImage.html#aa1c4af627d8985bf8d882ffc49d7cc17">IIPImage::closeImage</a></div><div class="ttdeci">virtual void closeImage()</div><div class="ttdoc">Close the image: Overloaded by child class. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:345</div></div>
<div class="ttc" id="classIIPImage_html_a33361969aaa0f0c8a458859951b79c21"><div class="ttname"><a href="classIIPImage.html#a33361969aaa0f0c8a458859951b79c21">IIPImage::operator=</a></div><div class="ttdeci">IIPImage & operator=(IIPImage image)</div><div class="ttdoc">Assignment operator. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:375</div></div>
<div class="ttc" id="classIIPImage_html_ab2b692ba4a6f2a344d8eefcc441dec19"><div class="ttname"><a href="classIIPImage.html#ab2b692ba4a6f2a344d8eefcc441dec19">IIPImage::currentX</a></div><div class="ttdeci">int currentX</div><div class="ttdoc">If we have an image sequence, the current X and Y position. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:142</div></div>
<div class="ttc" id="classIIPImage_html_a7d66e92f49d1d065edd86f89c186bc7e"><div class="ttname"><a href="classIIPImage.html#a7d66e92f49d1d065edd86f89c186bc7e">IIPImage::sampleType</a></div><div class="ttdeci">SampleType sampleType</div><div class="ttdoc">The sample format type (fixed or floating point) </div><div class="ttdef"><b>Definition:</b> IIPImage.h:130</div></div>
<div class="ttc" id="classRawTile_html"><div class="ttname"><a href="classRawTile.html">RawTile</a></div><div class="ttdoc">Class to represent a single image tile. </div><div class="ttdef"><b>Definition:</b> RawTile.h:45</div></div>
<div class="ttc" id="classIIPImage_html_af8e07504630aa6eaf6740fc866400bf0"><div class="ttname"><a href="classIIPImage.html#af8e07504630aa6eaf6740fc866400bf0">IIPImage::setFileNamePattern</a></div><div class="ttdeci">void setFileNamePattern(const std::string &pattern)</div><div class="ttdoc">Set the file name pattern used in image sequences. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:274</div></div>
<div class="ttc" id="classIIPImage_html_a541ecc87687dcfec7f3a5155059d2277"><div class="ttname"><a href="classIIPImage.html#a541ecc87687dcfec7f3a5155059d2277">IIPImage::getColourSpace</a></div><div class="ttdeci">ColourSpaces getColourSpace()</div><div class="ttdoc">Return the colour space for this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:315</div></div>
<div class="ttc" id="classIIPImage_html_aa5de3329815d2a97edefc07004b3bf72"><div class="ttname"><a href="classIIPImage.html#aa5de3329815d2a97edefc07004b3bf72">IIPImage::Load</a></div><div class="ttdeci">virtual void Load(const std::string &module)</div><div class="ttdoc">Load the appropriate codec module for this image type. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:330</div></div>
<div class="ttc" id="classIIPImage_html_aa380533e0bf44f8c01b7812068b00318"><div class="ttname"><a href="classIIPImage.html#aa380533e0bf44f8c01b7812068b00318">IIPImage::getImageFormat</a></div><div class="ttdeci">ImageFormat getImageFormat()</div><div class="ttdoc">Get the image format. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:257</div></div>
<div class="ttc" id="classIIPImage_html_a3713fd838842aabaa1b2ed306b1149de"><div class="ttname"><a href="classIIPImage.html#a3713fd838842aabaa1b2ed306b1149de">IIPImage::~IIPImage</a></div><div class="ttdeci">virtual ~IIPImage()</div><div class="ttdoc">Virtual Destructor. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:229</div></div>
<div class="ttc" id="classIIPImage_html_aff0048158d9083ccb4f4e3b91c1d82f7"><div class="ttname"><a href="classIIPImage.html#aff0048158d9083ccb4f4e3b91c1d82f7">IIPImage::bpc</a></div><div class="ttdeci">unsigned int bpc</div><div class="ttdoc">The bits per channel for this image. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:124</div></div>
<div class="ttc" id="classIIPImage_html_a44c428ccf5732f5930897db57b75f63b"><div class="ttname"><a href="classIIPImage.html#a44c428ccf5732f5930897db57b75f63b">IIPImage::image_widths</a></div><div class="ttdeci">std::vector< unsigned int > image_widths</div><div class="ttdoc">The image pixel dimensions. </div><div class="ttdef"><b>Definition:</b> IIPImage.h:112</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><b>IIPImage.h</b></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.14 </li>
</ul>
</div>
</body>
</html>
|