25 MarkerInfo(uint16_t _id, uint64_t _pos, uint32_t _len);
27 void dump(FILE* outputFileStream);
37 TilePartInfo(uint64_t start, uint64_t endHeader, uint64_t end);
39 void dump(FILE* outputFileStream, uint8_t tilePart);
55 void dump(FILE* outputFileStream, uint16_t tileNum);
80 bool updateTileInfo(uint16_t tileIndex, uint8_t currentTilePart, uint8_t numTileParts);
82 void dump(FILE* outputFileStream);
83 void pushMarker(uint16_t
id, uint64_t pos, uint32_t len);
88 bool skipToTile(uint16_t tileIndex, uint64_t lastSotReadPosition);
114 typedef std::map<uint8_t, TL_INFO_VEC*>
TL_MAP;
122 bool read(uint8_t* headerData, uint16_t header_size);
128 void push(uint16_t tileIndex, uint32_t tile_part_size);
139 uint64_t pos, uint32_t len);
Copyright (C) 2016-2021 Grok Image Compression Inc.
Definition: ICacheable.h:20
std::vector< TilePartLengthInfo > TL_INFO_VEC
Definition: LengthCache.h:112
std::map< uint8_t, TL_INFO_VEC * > TL_MAP
Definition: LengthCache.h:114
Definition: LengthCache.h:76
IBufferedStream * stream
Definition: LengthCache.h:99
uint64_t mainHeaderStart
main header start position (SOC position)
Definition: LengthCache.h:92
uint64_t getMainHeaderStart(void)
Definition: LengthCache.cpp:236
void pushMarker(uint16_t id, uint64_t pos, uint32_t len)
Definition: LengthCache.cpp:232
bool updateTileInfo(uint16_t tileIndex, uint8_t currentTilePart, uint8_t numTileParts)
Definition: LengthCache.cpp:191
bool allocTileInfo(uint16_t numTiles)
Definition: LengthCache.cpp:183
virtual ~CodeStreamInfo()
Definition: LengthCache.cpp:177
void setMainHeaderEnd(uint64_t end)
Definition: LengthCache.cpp:248
void dump(FILE *outputFileStream)
Definition: LengthCache.cpp:203
uint16_t numTiles
Definition: LengthCache.h:97
uint64_t getMainHeaderEnd(void)
Definition: LengthCache.cpp:244
bool skipToTile(uint16_t tileIndex, uint64_t lastSotReadPosition)
Definition: LengthCache.cpp:252
std::vector< MarkerInfo * > marker
list of markers
Definition: LengthCache.h:96
TileInfo * getTileInfo(uint16_t tileIndex)
Definition: LengthCache.cpp:197
void setMainHeaderStart(uint64_t start)
Definition: LengthCache.cpp:240
CodeStreamInfo(IBufferedStream *str)
Definition: LengthCache.cpp:174
TileInfo * tileInfo
Definition: LengthCache.h:98
uint64_t mainHeaderEnd
main header end position (first SOT position)
Definition: LengthCache.h:94
Definition: IBufferedStream.h:20
Definition: LengthCache.h:24
MarkerInfo()
Definition: LengthCache.cpp:24
void dump(FILE *outputFileStream)
Definition: LengthCache.cpp:27
uint16_t id
marker id
Definition: LengthCache.h:29
uint32_t len
length (marker id included)
Definition: LengthCache.h:33
uint64_t pos
position in code stream
Definition: LengthCache.h:31
Definition: LengthCache.h:161
~PacketInfoCache()
Definition: LengthCache.cpp:500
std::vector< PacketInfo * > packetInfo
Definition: LengthCache.h:165
Definition: LengthCache.h:152
uint32_t packetLength
Definition: LengthCache.h:156
uint32_t headerLength
Definition: LengthCache.h:155
bool parsedData
Definition: LengthCache.h:157
PacketInfo(void)
Definition: LengthCache.cpp:499
uint32_t getPacketDataLength(void)
Definition: LengthCache.cpp:505
Definition: LengthCache.h:48
TilePartInfo * getTilePartInfo(uint8_t tilePart)
Definition: LengthCache.cpp:151
uint32_t numMarkers
number of markers
Definition: LengthCache.h:71
void dump(FILE *outputFileStream, uint16_t tileNum)
Definition: LengthCache.cpp:157
bool hasTilePartInfo(void)
Definition: LengthCache.cpp:81
MarkerInfo * markerInfo
array of markers
Definition: LengthCache.h:69
uint8_t numTileParts
number of tile parts
Definition: LengthCache.h:59
uint8_t currentTilePart
current tile-part index
Definition: LengthCache.h:63
~TileInfo(void)
Definition: LengthCache.cpp:52
uint8_t allocatedTileParts
current nb of tile part (allocated)
Definition: LengthCache.h:61
bool update(uint16_t tileIndex, uint8_t currentTilePart, uint8_t numTileParts)
Definition: LengthCache.cpp:85
uint16_t tileno
tile index
Definition: LengthCache.h:57
bool checkResize(void)
Definition: LengthCache.cpp:57
TileInfo(void)
Definition: LengthCache.cpp:44
TilePartInfo * tilePartInfo
tile part index
Definition: LengthCache.h:67
uint32_t allocatedMarkers
actual size of markers array
Definition: LengthCache.h:73
Definition: LengthCache.h:117
TilePartLengthInfo getNext(void)
Definition: LengthCache.cpp:391
uint8_t m_markerIndex
Definition: LengthCache.h:144
IBufferedStream * m_stream
Definition: LengthCache.h:147
void push(uint16_t tileIndex, uint32_t tile_part_size)
Definition: LengthCache.cpp:461
bool writeEnd(void)
Definition: LengthCache.cpp:465
uint8_t m_markerTilePartIndex
Definition: LengthCache.h:145
bool skipTo(uint16_t skipTileIndex, IBufferedStream *stream, uint64_t firstSotPos)
Definition: LengthCache.cpp:415
TL_MAP * m_markers
Definition: LengthCache.h:143
TL_INFO_VEC * m_curr_vec
Definition: LengthCache.h:146
bool writeBegin(uint16_t numTilePartsTotal)
Definition: LengthCache.cpp:437
void rewind(void)
Definition: LengthCache.cpp:379
static bool addTileMarkerInfo(uint16_t tileno, CodeStreamInfo *codeStreamInfo, uint16_t type, uint64_t pos, uint32_t len)
Add tile header marker information.
Definition: LengthCache.cpp:482
TileLengthMarkers()
Definition: LengthCache.cpp:279
~TileLengthMarkers()
Definition: LengthCache.cpp:287
bool read(uint8_t *headerData, uint16_t header_size)
Definition: LengthCache.cpp:296
uint64_t streamStart
Definition: LengthCache.h:148
Definition: LengthCache.h:36
uint64_t startPosition
start position of tile part
Definition: LengthCache.h:41
uint64_t endHeaderPosition
end position of tile part header
Definition: LengthCache.h:43
uint64_t endPosition
end position of tile part
Definition: LengthCache.h:45
void dump(FILE *outputFileStream, uint8_t tilePart)
Definition: LengthCache.cpp:35
TilePartInfo(void)
Definition: LengthCache.cpp:34
Definition: LengthCache.h:102
TilePartLengthInfo()
Definition: LengthCache.h:103
uint32_t length
Definition: LengthCache.h:110
TilePartLengthInfo(uint32_t len)
Definition: LengthCache.h:104
TilePartLengthInfo(uint16_t tileno, uint32_t len)
Definition: LengthCache.h:105
bool hasTileIndex
Definition: LengthCache.h:108
uint16_t tileIndex
Definition: LengthCache.h:109