# CSJ2K.j2k.wavelet.synthesis.InvWTFull

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="CSJ2K_j2k_wavelet_synthesis_InvWTFull" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull" class="text-break">InvWTFull Class
</h1>
  <div class="markdown level0 summary"><p>This class implements the InverseWT with the full-page approach for int and
float data.</p>
<pre><code>       &lt;p&gt;The image can be reconstructed at different (image) resolution levels
       indexed from the lowest resolution available for each tile-component. This
       is controlled by the setImgResLevel() method.&lt;/p&gt;&lt;p&gt;Note: Image resolution level indexes may differ from tile-component
       resolution index. They are indeed indexed starting from the lowest number
       of decomposition levels of each component of each tile.&lt;/p&gt;&lt;p&gt;Example: For an image (1 tile) with 2 components (component 0 having 2
       decomposition levels and component 1 having 3 decomposition levels), the
       first (tile-) component has 3 resolution levels and the second one has 4
       resolution levels, whereas the image has only 3 resolution levels
       available.&lt;/p&gt;&lt;p&gt;This implementation does not support progressive data: Data is
       considered to be non-progressive (i.e. &quot;final&quot; data) and the 'progressive'
       attribute of the 'DataBlk' class is always set to false, see the 'DataBlk'
       class.&lt;/p&gt;
</code></pre>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.object">object</a></div>
    <div class="level1"><a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTAdapter.html">InvWTAdapter</a></div>
    <div class="level2"><a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InverseWT.html">InverseWT</a></div>
    <div class="level3"><span class="xref">InvWTFull</span></div>
  </div>
  <div class="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWT.html">InvWT</a></div>
    <div><a class="xref" href="CSJ2K.j2k.wavelet.WaveletTransform.html">WaveletTransform</a></div>
    <div><a class="xref" href="CSJ2K.j2k.image.BlkImgDataSrc.html">BlkImgDataSrc</a></div>
    <div><a class="xref" href="CSJ2K.j2k.image.ImgData.html">ImgData</a></div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.html">CSJ2K.j2k.wavelet.synthesis</a></h6>
  <h6><strong>Assembly</strong>: C1.WPF.ReportViewer.4.6.2.dll</h6>
  <h5 id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class InvWTFull : InverseWT, InvWT, WaveletTransform, BlkImgDataSrc, ImgData</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class InvWTFull
    Inherits InverseWT
    Implements InvWT, WaveletTransform, BlkImgDataSrc, ImgData</code></pre>
  </div>
  <h3 id="constructors">Constructors
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull__ctor_CSJ2K_j2k_wavelet_synthesis_CBlkWTDataSrcDec_CSJ2K_j2k_decoder_DecoderSpecs_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.#ctor(CSJ2K.j2k.wavelet.synthesis.CBlkWTDataSrcDec,CSJ2K.j2k.decoder.DecoderSpecs)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.-ctor.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull__ctor_CSJ2K_j2k_wavelet_synthesis_CBlkWTDataSrcDec_CSJ2K_j2k_decoder_DecoderSpecs_">InvWTFull(CBlkWTDataSrcDec, DecoderSpecs)</a>
        </td>
        <td class="markdown level1 summary"><p>Initializes this object with the given source of wavelet
coefficients. It initializes the resolution level for full resolutioin
reconstruction.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="methods">Methods
</h3>
  <table class="table table-bordered table-condensed">
    <thead>
      <tr>
        <th>Name</th>
        <th>Description</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_getCompData_CSJ2K_j2k_image_DataBlk_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getCompData(CSJ2K.j2k.image.DataBlk,System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getCompData.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_getCompData_CSJ2K_j2k_image_DataBlk_System_Int32_">getCompData(DataBlk, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a block of image data containing the specifed rectangular area,
in the specified component, as a copy (see below). The rectangular area
is specified by the coordinates and dimensions of the 'blk' object.</p>
<pre><code>       &lt;p&gt;The area to return is specified by the 'ulx', 'uly', 'w' and 'h'
       members of the 'blk' argument. These members are not modified by this
       method.&lt;/p&gt;&lt;p&gt;The data returned by this method is always a copy of the internal
       data of this object, if any, and it can be modified &quot;in place&quot; without
       any problems after being returned. The 'offset' of the returned data is
       0, and the 'scanw' is the same as the block's width. See the 'DataBlk'
       class.&lt;/p&gt;&lt;p&gt;If the data array in 'blk' is &lt;tt&gt;null&lt;/tt&gt;, then a new one is
       created. If the data array is not &lt;tt&gt;null&lt;/tt&gt; then it must be big
       enough to contain the requested area.&lt;/p&gt;&lt;p&gt;The returned data always has its 'progressive' attribute unset (i.e
       false)&lt;/p&gt;
</code></pre>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_getFixedPoint_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getFixedPoint(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getFixedPoint.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_getFixedPoint_System_Int32_">getFixedPoint(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the position of the fixed point in the specified
component. This is the position of the least significant integral
(i.e. non-fractional) bit, which is equivalent to the number of
fractional bits. For instance, for fixed-point values with 2 fractional
bits, 2 is returned. For floating-point data this value does not apply
and 0 should be returned. Position 0 is the position of the least
significant bit in the data.</p>
<pre><code>       &lt;p&gt;This default implementation assumes that the wavelet transform does
       not modify the fixed point. If that were the case this method should be
       overriden.&lt;/p&gt;
</code></pre>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_getImplementationType_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getImplementationType(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getImplementationType.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_getImplementationType_System_Int32_">getImplementationType(int)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the implementation type of this wavelet transform, WT_IMPL_FULL
(full-page based transform). All components return the same.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_getInternCompData_CSJ2K_j2k_image_DataBlk_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getInternCompData(CSJ2K.j2k.image.DataBlk,System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getInternCompData.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_getInternCompData_CSJ2K_j2k_image_DataBlk_System_Int32_">getInternCompData(DataBlk, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns a block of image data containing the specifed rectangular area,
in the specified component, as a reference to the internal buffer (see
below). The rectangular area is specified by the coordinates and
dimensions of the 'blk' object.</p>
<pre><code>       &lt;p&gt;The area to return is specified by the 'ulx', 'uly', 'w' and 'h'
       members of the 'blk' argument. These members are not modified by this
       method.&lt;/p&gt;&lt;p&gt;The data returned by this method can be the data in the internal
       buffer of this object, if any, and thus can not be modified by the
       caller. The 'offset' and 'scanw' of the returned data can be
       arbitrary. See the 'DataBlk' class.&lt;/p&gt;&lt;p&gt;The returned data has its 'progressive' attribute unset
       (i.e. false).&lt;/p&gt;
</code></pre>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_getNomRangeBits_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getNomRangeBits(System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.getNomRangeBits.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_getNomRangeBits_System_Int32_">getNomRangeBits(int)</a>
        </td>
        <td class="markdown level1 summary"></td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_isReversible_System_Int32_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.isReversible(System.Int32,System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.isReversible.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_isReversible_System_Int32_System_Int32_">isReversible(int, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the reversibility of the wavelet transform for the specified
component, in the current tile. A wavelet transform is reversible when
it is suitable for lossless and lossy-to-lossless compression.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_nextTile" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.nextTile">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.nextTile.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_nextTile">nextTile()</a>
        </td>
        <td class="markdown level1 summary"><p>Advances to the next tile, in standard scan-line order (by rows then
columns). An 'NoNextElementException' is thrown if the current tile is
the last one (i.e. there is no next tile).</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_InvWTFull_setTile_System_Int32_System_Int32_" data-uid="CSJ2K.j2k.wavelet.synthesis.InvWTFull.setTile(System.Int32,System.Int32)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.InvWTFull.setTile.html#CSJ2K_j2k_wavelet_synthesis_InvWTFull_setTile_System_Int32_System_Int32_">setTile(int, int)</a>
        </td>
        <td class="markdown level1 summary"><p>Changes the current tile, given the new indexes. An
IllegalArgumentException is thrown if the indexes do not correspond to
a valid tile.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="seealso">See Also</h3>
  <div class="seealso">
      <div><a class="xref" href="CSJ2K.j2k.image.DataBlk.html">DataBlk</a></div>
  </div>

</div>
