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

#include <LengthMarkers.h>

Public Member Functions

 TileLengthMarkers ()
 
 TileLengthMarkers (BufferedStream *stream)
 
 ~TileLengthMarkers ()
 
bool read (uint8_t *p_header_data, uint16_t header_size)
 
void getInit (void)
 
grk_tl_info getNext (void)
 
bool write_begin (uint16_t totalTileParts)
 
void write_update (uint16_t tileIndex, uint32_t tile_part_size)
 
bool write_end (void)
 

Static Public Member Functions

static bool add_to_index (uint16_t tileno, grk_codestream_index *cstr_index, uint32_t type, uint64_t pos, uint32_t len)
 Add tile header marker information. More...
 

Private Member Functions

void push (uint8_t i_TLM, grk_tl_info curr_vec)
 

Private Attributes

TL_MAPm_markers
 
uint8_t m_markerIndex
 
uint8_t m_tilePartIndex
 
TL_INFO_VECm_curr_vec
 
BufferedStreamm_stream
 
uint64_t m_tlm_start_stream_position
 

Constructor & Destructor Documentation

◆ TileLengthMarkers() [1/2]

grk::TileLengthMarkers::TileLengthMarkers ( )

◆ TileLengthMarkers() [2/2]

grk::TileLengthMarkers::TileLengthMarkers ( BufferedStream stream)

References m_stream.

◆ ~TileLengthMarkers()

grk::TileLengthMarkers::~TileLengthMarkers ( )

References m_markers.

Member Function Documentation

◆ add_to_index()

bool grk::TileLengthMarkers::add_to_index ( uint16_t  tileno,
grk_codestream_index cstr_index,
uint32_t  type,
uint64_t  pos,
uint32_t  len 
)
static

Add tile header marker information.

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

References _grk_tile_index::current_tpsno, grk::GRK_ERROR(), grk::grk_free(), grk::grk_realloc(), J2K_MS_SOT, _grk_marker_info::len, _grk_tile_index::marker, _grk_tile_index::marknum, _grk_tile_index::maxmarknum, _grk_marker_info::pos, _grk_tp_index::start_pos, _grk_codestream_index::tile_index, _grk_tile_index::tp_index, and _grk_marker_info::type.

Referenced by grk::TileProcessor::prepare_sod_decoding().

◆ getInit()

void grk::TileLengthMarkers::getInit ( void  )

◆ getNext()

grk_tl_info grk::TileLengthMarkers::getNext ( void  )

◆ push()

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

References ojph::info, and m_markers.

Referenced by read(), and write_update().

◆ read()

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

◆ write_begin()

bool grk::TileLengthMarkers::write_begin ( uint16_t  totalTileParts)

◆ write_end()

bool grk::TileLengthMarkers::write_end ( void  )

◆ write_update()

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

References m_markerIndex, and push().

Referenced by grk::j2k_update_tlm().

Member Data Documentation

◆ m_curr_vec

TL_INFO_VEC* grk::TileLengthMarkers::m_curr_vec
private

Referenced by getInit(), and getNext().

◆ m_markerIndex

uint8_t grk::TileLengthMarkers::m_markerIndex
private

Referenced by getInit(), getNext(), and write_update().

◆ m_markers

TL_MAP* grk::TileLengthMarkers::m_markers
private

◆ m_stream

BufferedStream* grk::TileLengthMarkers::m_stream
private

◆ m_tilePartIndex

uint8_t grk::TileLengthMarkers::m_tilePartIndex
private

Referenced by getInit(), and getNext().

◆ m_tlm_start_stream_position

uint64_t grk::TileLengthMarkers::m_tlm_start_stream_position
private

Referenced by write_begin(), and write_end().


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