Grok 12.0.1
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
grk::TileLengthMarkers Struct Reference

#include <LengthCache.h>

Public Member Functions

 TileLengthMarkers (uint16_t numSignalledTiles)
 
 TileLengthMarkers (BufferedStream *stream)
 
 ~TileLengthMarkers ()
 
bool read (uint8_t *headerData, uint16_t header_size)
 
void rewind (void)
 
TilePartLengthInfonext (void)
 
TilePartLengthInfonext (bool peek)
 Query next TLM entry.
 
void invalidate (void)
 
bool valid (void)
 
void seek (TileSet *tilesToDecompress, CodingParams *cp, BufferedStream *stream)
 Seek to next scheduled tile part.
 
bool writeBegin (uint16_t numTilePartsTotal)
 
void push (uint16_t tileIndex, uint32_t tile_part_size)
 
bool writeEnd (void)
 

Static Public Member Functions

static bool addTileMarkerInfo (uint16_t tileno, CodeStreamInfo *codeStreamInfo, uint16_t type, uint64_t pos, uint32_t len)
 Add tile header marker information.
 

Private Member Functions

void push (uint8_t i_TLM, TilePartLengthInfo curr_vec)
 

Private Attributes

TL_MAPmarkers_
 
TL_MAP::iterator markerIt_
 
uint16_t markerTilePartIndex_
 
TL_INFO_VECcurr_vec_
 
BufferedStreamstream_
 
uint64_t streamStart
 
bool valid_
 
bool hasTileIndices_
 
uint16_t tileCount_
 
uint16_t numSignalledTiles_
 

Constructor & Destructor Documentation

◆ TileLengthMarkers() [1/2]

grk::TileLengthMarkers::TileLengthMarkers ( uint16_t numSignalledTiles)
explicit

◆ TileLengthMarkers() [2/2]

grk::TileLengthMarkers::TileLengthMarkers ( BufferedStream * stream)
explicit

References stream_.

◆ ~TileLengthMarkers()

grk::TileLengthMarkers::~TileLengthMarkers ( )

References markers_.

Member Function Documentation

◆ addTileMarkerInfo()

bool grk::TileLengthMarkers::addTileMarkerInfo ( uint16_t tileno,
CodeStreamInfo * codeStreamInfo,
uint16_t type,
uint64_t pos,
uint32_t len )
static

Add tile header marker information.

Parameters
tilenotile index number
codeStreamInfoCodestream information structure
typemarker type
posbyte offset of marker segment
lenlength of marker segment

References grk::grk_read(), and grk::J2K_MS_SOT.

Referenced by grk::TileProcessor::cacheTilePartPackets(), and grk::CodeStreamDecompress::parseTileParts().

◆ invalidate()

void grk::TileLengthMarkers::invalidate ( void )

◆ next() [1/2]

TilePartLengthInfo * grk::TileLengthMarkers::next ( bool peek)

Query next TLM entry.

Parameters
peekif false, then move to next TLM entry. Otherwise, stay at current TLM entry

References curr_vec_, grk::Logger::error(), grk::grk_read(), grk::Logger::logger_, markerIt_, markers_, markerTilePartIndex_, numSignalledTiles_, valid_, and grk::Logger::warn().

◆ next() [2/2]

TilePartLengthInfo * grk::TileLengthMarkers::next ( void )

References next().

Referenced by next(), grk::CodeStreamDecompress::nextTLM(), and seek().

◆ push() [1/2]

void grk::TileLengthMarkers::push ( uint16_t tileIndex,
uint32_t tile_part_size )

◆ push() [2/2]

void grk::TileLengthMarkers::push ( uint8_t i_TLM,
TilePartLengthInfo curr_vec )
private

References grk::grk_read(), markerIt_, and markers_.

◆ read()

bool grk::TileLengthMarkers::read ( uint8_t * headerData,
uint16_t header_size )

◆ rewind()

void grk::TileLengthMarkers::rewind ( void )

◆ seek()

void grk::TileLengthMarkers::seek ( TileSet * tilesToDecompress,
CodingParams * cp,
BufferedStream * stream )

◆ valid()

bool grk::TileLengthMarkers::valid ( void )

References valid_.

Referenced by grk::CodeStreamDecompress::hasTLM().

◆ writeBegin()

bool grk::TileLengthMarkers::writeBegin ( uint16_t numTilePartsTotal)

◆ writeEnd()

bool grk::TileLengthMarkers::writeEnd ( void )

Member Data Documentation

◆ curr_vec_

TL_INFO_VEC* grk::TileLengthMarkers::curr_vec_
private

Referenced by next(), and rewind().

◆ hasTileIndices_

bool grk::TileLengthMarkers::hasTileIndices_
private

Referenced by read().

◆ markerIt_

TL_MAP::iterator grk::TileLengthMarkers::markerIt_
private

Referenced by next(), push(), push(), read(), and rewind().

◆ markers_

TL_MAP* grk::TileLengthMarkers::markers_
private

◆ markerTilePartIndex_

uint16_t grk::TileLengthMarkers::markerTilePartIndex_
private

Referenced by next(), and rewind().

◆ numSignalledTiles_

uint16_t grk::TileLengthMarkers::numSignalledTiles_
private

Referenced by next().

◆ stream_

BufferedStream* grk::TileLengthMarkers::stream_
private

◆ streamStart

uint64_t grk::TileLengthMarkers::streamStart
private

Referenced by writeBegin(), and writeEnd().

◆ tileCount_

uint16_t grk::TileLengthMarkers::tileCount_
private

Referenced by read().

◆ valid_

bool grk::TileLengthMarkers::valid_
private

Referenced by invalidate(), next(), read(), and valid().


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