# CSJ2K.j2k.codestream.reader.PktDecoder.-ctor

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="CSJ2K_j2k_codestream_reader_PktDecoder__ctor_" data-uid="CSJ2K.j2k.codestream.reader.PktDecoder.#ctor*">PktDecoder Constructor
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="CSJ2K_j2k_codestream_reader_PktDecoder__ctor_" data-uid="CSJ2K.j2k.codestream.reader.PktDecoder.#ctor*"></a>
<h4 id="CSJ2K_j2k_codestream_reader_PktDecoder__ctor_CSJ2K_j2k_decoder_DecoderSpecs_CSJ2K_j2k_codestream_reader_HeaderDecoder_CSJ2K_j2k_io_RandomAccessIO_CSJ2K_j2k_codestream_reader_BitstreamReaderAgent_System_Boolean_System_Int32_" data-uid="CSJ2K.j2k.codestream.reader.PktDecoder.#ctor(CSJ2K.j2k.decoder.DecoderSpecs,CSJ2K.j2k.codestream.reader.HeaderDecoder,CSJ2K.j2k.io.RandomAccessIO,CSJ2K.j2k.codestream.reader.BitstreamReaderAgent,System.Boolean,System.Int32)">PktDecoder(DecoderSpecs, HeaderDecoder, RandomAccessIO, BitstreamReaderAgent, bool, int)</h4>
<div class="markdown level1 summary"><p>Creates an empty PktDecoder object associated with given decoder
specifications and HeaderDecoder. This object must be initialized
thanks to the restart method before being used.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">public PktDecoder(DecoderSpecs decSpec, HeaderDecoder hd, RandomAccessIO ehs, BitstreamReaderAgent src, bool isTruncMode, int maxCB)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Public Sub New(decSpec As DecoderSpecs, hd As HeaderDecoder, ehs As RandomAccessIO, src As BitstreamReaderAgent, isTruncMode As Boolean, maxCB As Integer)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="CSJ2K.j2k.decoder.DecoderSpecs.html">DecoderSpecs</a></td>
      <td><span class="parametername">decSpec</span></td>
      <td><p>The decoder specifications.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="CSJ2K.j2k.codestream.reader.HeaderDecoder.html">HeaderDecoder</a></td>
      <td><span class="parametername">hd</span></td>
      <td><p>The HeaderDecoder instance.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="CSJ2K.j2k.io.RandomAccessIO.html">RandomAccessIO</a></td>
      <td><span class="parametername">ehs</span></td>
      <td><p>The stream where to read data from.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="CSJ2K.j2k.codestream.reader.BitstreamReaderAgent.html">BitstreamReaderAgent</a></td>
      <td><span class="parametername">src</span></td>
      <td><p>The bit stream reader agent.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.boolean">bool</a></td>
      <td><span class="parametername">isTruncMode</span></td>
      <td><p>Whether or not truncation mode is required.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a></td>
      <td><span class="parametername">maxCB</span></td>
      <td><p>The maximum number of code-blocks to read before ncbquit</p>
</td>
    </tr>
  </tbody>
</table>
</div>
