Grok 10.0.3
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 (IBufferedStream *stream)
 
 ~TileLengthMarkers ()
 
bool read (uint8_t *headerData, uint16_t header_size)
 
void rewind (void)
 
TilePartLengthInfonext (void)
 
TilePartLengthInfonext (bool peek)
 Query next TLM entry. More...
 
void invalidate (void)
 
bool valid (void)
 
void seek (TileSet *tilesToDecompress, CodingParams *cp, IBufferedStream *stream)
 Seek to next scheduled tile part. More...
 
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. More...
 

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_
 
IBufferedStreamstream_
 
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 ( IBufferedStream 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::CodeStreamInfo::getTileInfo(), grk::TileInfo::getTilePartInfo(), grk::J2K_MS_SOT, grk::CodeStreamInfo::pushMarker(), and grk::TilePartInfo::startPosition.

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::GRK_ERROR(), grk::GRK_WARN(), markerIt_, markers_, markerTilePartIndex_, numSignalledTiles_, and valid_.

◆ 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 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,
IBufferedStream 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(), 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_

IBufferedStream* 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: