# CSJ2K.j2k.wavelet.synthesis.SubbandSyn

## Content

<div class="doc-site-dotnet-api-container">



  <h1 id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn" class="text-break">SubbandSyn Class
</h1>
  <div class="markdown level0 summary"><p>This class represents a subband in a tree structure that describes the
subband decomposition for a wavelet transform, specifically for the
syhthesis side.</p>
<pre><code>       &lt;p&gt;The element can be either a node or a leaf of the tree. If it is a node
       then ther are 4 descendants (LL, HL, LH and HH). If it is a leaf there are
       no descendants.&lt;/p&gt;&lt;p&gt;The tree is bidirectional. Each element in the tree structure has a
       &quot;parent&quot;, which is the subband from which the element was obtained by
       decomposition. The only exception is the root element which has no parent
       (i.e.it's null), for obvious reasons.&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.Subband.html">Subband</a></div>
    <div class="level2"><span class="xref">SubbandSyn</span></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_SubbandSyn_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class SubbandSyn : Subband</code></pre>
  </div>
  <div class="codewrapper">
    <pre><code class="lang-vbnet hljs">Public Class SubbandSyn
    Inherits Subband</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_SubbandSyn__ctor" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.#ctor">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.-ctor.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn__ctor">SubbandSyn()</a>
        </td>
        <td class="markdown level1 summary"><p>Creates a SubbandSyn element with all the default values. The
dimensions are (0,0) and the upper left corner is (0,0).</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn__ctor_System_Int32_System_Int32_System_Int32_System_Int32_System_Int32_CSJ2K_j2k_wavelet_WaveletFilter___CSJ2K_j2k_wavelet_WaveletFilter___" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,CSJ2K.j2k.wavelet.WaveletFilter[],CSJ2K.j2k.wavelet.WaveletFilter[])">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.-ctor.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn__ctor_System_Int32_System_Int32_System_Int32_System_Int32_System_Int32_CSJ2K_j2k_wavelet_WaveletFilter___CSJ2K_j2k_wavelet_WaveletFilter___">SubbandSyn(int, int, int, int, int, WaveletFilter[], WaveletFilter[])</a>
        </td>
        <td class="markdown level1 summary"><p>Creates the top-level node and the entire subband tree, with the
top-level dimensions, the number of decompositions, and the
decomposition tree as specified.</p>
<pre><code>       &lt;p&gt;This constructor just calls the same constructor of the super
       class.&lt;/p&gt;
</code></pre>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
</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_SubbandSyn_hFilter" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.hFilter">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.hFilter.html">hFilter</a>
        </td>
        <td class="markdown level1 summary"><p>The horizontal analysis filter used to recompose this subband, from
its childs. This is applicable to &quot;node&quot; elements only. The default
value is null.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_magbits" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.magbits">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.magbits.html">magbits</a>
        </td>
        <td class="markdown level1 summary"><p>The number of magnitude bits</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_vFilter" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.vFilter">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.vFilter.html">vFilter</a>
        </td>
        <td class="markdown level1 summary"><p>The vertical analysis filter used to decompose this subband, from its
childs. This is applicable to &quot;node&quot; elements only. The default value
is null.</p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="properties">Properties
</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_SubbandSyn_HH" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.HH">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.HH.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_HH">HH</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the HH child subband of this subband.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_HL" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.HL">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.HL.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_HL">HL</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the HL (horizontal high-pass) child subband of this subband.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_HorWFilter" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.HorWFilter">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.HorWFilter.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_HorWFilter">HorWFilter</a>
        </td>
        <td class="markdown level1 summary"><p>This function returns the horizontal wavelet filter relevant to this
subband</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_LH" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.LH">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.LH.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_LH">LH</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the LH (vertical high-pass) child subband of this subband.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_LL" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.LL">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.LL.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_LL">LL</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the LL child subband of this subband.</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_Parent" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.Parent">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.Parent.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_Parent">Parent</a>
        </td>
        <td class="markdown level1 summary"><p>Returns the parent of this subband. The parent of a subband is the
subband from which this one was obtained by decomposition. The root
element has no parent subband (null).</p>
</td>
      </tr>
      <tr>
        <td id="CSJ2K_j2k_wavelet_synthesis_SubbandSyn_VerWFilter" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.VerWFilter">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.VerWFilter.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_VerWFilter">VerWFilter</a>
        </td>
        <td class="markdown level1 summary"><p>This function returns the vertical wavelet filter relevant to this
subband</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_SubbandSyn_split_CSJ2K_j2k_wavelet_WaveletFilter_CSJ2K_j2k_wavelet_WaveletFilter_" data-uid="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.split(CSJ2K.j2k.wavelet.WaveletFilter,CSJ2K.j2k.wavelet.WaveletFilter)">
          <a class="xref" href="CSJ2K.j2k.wavelet.synthesis.SubbandSyn.split.html#CSJ2K_j2k_wavelet_synthesis_SubbandSyn_split_CSJ2K_j2k_wavelet_WaveletFilter_CSJ2K_j2k_wavelet_WaveletFilter_">split(WaveletFilter, WaveletFilter)</a>
        </td>
        <td class="markdown level1 summary"><p>Splits the current subband in its four subbands. It changes the status
of this element (from a leaf to a node, and sets the filters), creates
the childs and initializes them. An IllegalArgumentException is thrown
if this subband is not a leaf.</p>
<pre><code>       &lt;p&gt;It uses the initChilds() method to initialize the childs.&lt;/p&gt;
</code></pre>
</td>
      </tr>
    </tbody>
  </table>

</div>
