Grok 20.3.2
grk::T2Decompress Class Reference

T2 parsing of packets. More...

#include <T2Decompress.h>

Public Member Functions

 T2Decompress (ITileProcessor *tileProc)
 Constructs a T2Decompress object.
virtual ~T2Decompress (void)=default
 Destroys a T2Decompress object.
bool parsePackets (uint16_t tileno, PacketCache *compressedPackets)
 Parses tile packets.

Private Member Functions

bool parsePacket (uint16_t compno, uint8_t resno, uint64_t precinctIndex, uint16_t layno, PacketCache *compressedPackets)
 Parses packet.
void parsePacketData (Resolution *res, PacketParser *parser, uint64_t precinctIndex, bool enqueue)
 Parses packet data.

Private Attributes

ITileProcessortileProcessor
 ITileProcessor for this tile

Detailed Description

T2 parsing of packets.

Constructor & Destructor Documentation

◆ T2Decompress()

grk::T2Decompress::T2Decompress ( ITileProcessor * tileProc)
explicit

Constructs a T2Decompress object.

Parameters
tileProcTileProcesor

References tileProcessor.

◆ ~T2Decompress()

virtual grk::T2Decompress::~T2Decompress ( void )
virtualdefault

Destroys a T2Decompress object.

Member Function Documentation

◆ parsePacket()

bool grk::T2Decompress::parsePacket ( uint16_t compno,
uint8_t resno,
uint64_t precinctIndex,
uint16_t layno,
PacketCache * compressedPackets )
private

Parses packet.

Parameters
compnocomponent number
resnoresolution number
precinctIndexprecinct index
laynolayer number
compressedPacketsPacketCache of buffers containing packets
Returns
true if successful

References grk::PacketCache::gen(), grk::PacketParser::getHeaderLength(), grk::PacketCache::next(), parsePacketData(), grk::PacketParser::readHeader(), and tileProcessor.

Referenced by parsePackets().

◆ parsePacketData()

void grk::T2Decompress::parsePacketData ( Resolution * res,
PacketParser * parser,
uint64_t precinctIndex,
bool enqueue )
private

Parses packet data.

Parameters
resResolution
parserPacketParser
precinctIndexprecinct index
enqueueif true, enqueue packet data for concurrent parsing. NOTE: this is only possible if packet length is known before any parsing is done, for example if there is a PLT/PLM marker, or packet header was previously read

References grk::ResolutionPacketParser::enqueue(), grk::Resolution::packetParser_, and grk::PacketParser::parsePacketData().

Referenced by parsePacket().

◆ parsePackets()

bool grk::T2Decompress::parsePackets ( uint16_t tileno,
PacketCache * compressedPackets )

Parses tile packets.

Parameters
tilenoindex of tile
compressedPacketsPacketCache of buffers containing packets
Returns
true if packets truncated

References grk::FINAL_PASS, grk::PacketManager::getPacketIter(), grk::grklog, parsePacket(), and tileProcessor.

Member Data Documentation

◆ tileProcessor

ITileProcessor* grk::T2Decompress::tileProcessor
private

ITileProcessor for this tile

Referenced by parsePacket(), parsePackets(), and T2Decompress().


The documentation for this class was generated from the following files: