Grok 15.1.0
grk::LayerIncludeBuffers Struct Reference

Include buffers for all resolutions in a given layer. More...

#include <PacketIter.h>

Public Member Functions

 LayerIncludeBuffers ()
 Construct a new LayerIncludeBuffers object.
 ~LayerIncludeBuffers ()
 Destroy the LayerIncludeBuffers object.
bool update (uint8_t resno, uint64_t bitIndex)
 Get the byte object Lazily get or allocate a resolution's specific byte within its include buffer's matching chunk.
void clear ()
 Clears all chunks and chunkMaps.

Private Attributes

std::map< size_t, uint8_t * > * chunkMap [GRK_MAXRLVLS]
 Lazily allocated maps of chunks for each resolution.

Detailed Description

Include buffers for all resolutions in a given layer.

Each buffer is broken into chunks, and is lazy-allocated

Constructor & Destructor Documentation

◆ LayerIncludeBuffers()

grk::LayerIncludeBuffers::LayerIncludeBuffers ( )
inline

Construct a new LayerIncludeBuffers object.

References chunkMap, and GRK_MAXRLVLS.

◆ ~LayerIncludeBuffers()

grk::LayerIncludeBuffers::~LayerIncludeBuffers ( )
inline

Destroy the LayerIncludeBuffers object.

References clear().

Member Function Documentation

◆ clear()

void grk::LayerIncludeBuffers::clear ( )
inline

Clears all chunks and chunkMaps.

References chunkMap, and GRK_MAXRLVLS.

Referenced by ~LayerIncludeBuffers().

◆ update()

bool grk::LayerIncludeBuffers::update ( uint8_t resno,
uint64_t bitIndex )
inline

Get the byte object Lazily get or allocate a resolution's specific byte within its include buffer's matching chunk.

Parameters
resnoresolution
precinctIndexcompno * (num precincts for this resolution) + precinct number
Returns
uint8_t* pointer to byte

References chunkMap, grk::GRK_INCLUDE_TRACKER_CHUNK_SIZE, and GRK_MAXRLVLS.

Referenced by grk::IncludeTracker::update().

Member Data Documentation

◆ chunkMap

std::map<size_t, uint8_t*>* grk::LayerIncludeBuffers::chunkMap[GRK_MAXRLVLS]
private

Lazily allocated maps of chunks for each resolution.

Referenced by clear(), LayerIncludeBuffers(), and update().


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