17 #ifndef INDEX_READ_TABLE_V201_V301_CLASS_HEADER
18 #define INDEX_READ_TABLE_V201_V301_CLASS_HEADER
36 IndexTable():index_table_offset(0), index_count(0), last_index(0), index_offset(0) {}
38 uint64_t index_table_offset;
41 timestamp_t last_index;
43 uint64_t index_offset;
46 struct MasterIndexTable:
public IndexTable
49 master_chunk_ref_table(
nullptr)
55 struct StreamIndexTable:
public IndexTable
58 stream_info_header(
nullptr),
59 stream_ref_table(
nullptr),
60 additional_stream_info(
nullptr)
65 void* additional_stream_info;
68 typedef std::vector<StreamIndexTable> StreamIndexTableVector;
71 MasterIndexTable _master_index_table;
74 StreamIndexTable _stream_index_tables[max_indexed_streams + 1];
184 int64_t* chunk_index, int64_t* chunk_offset);
203 int64_t* chunk_offset, int64_t* end_chunk_index,
204 int64_t* master_index)
const;
215 uint16_t chunk_flags, uint64_t* master_index);
233 void setIndexOffsetInfos(uint16_t stream_id,
244 void addStreamIndexTableEntry(uint16_t stream_id,
StreamRef* stream_ref,
246 void* additional_stream_info,
254 void addMasterIndexTableEntry(
void* ref_tbl, uint64_t count);
267 void getStreamRef(uint16_t stream_id, uint32_t stream_idx,
Definition: indexreadtable_v201_v301.h:32
bool findNearestEntryWithFlags(uint16_t stream_id, uint64_t chunk_index, uint16_t chunk_flags, uint64_t *master_index)
const void * getAdditionalStreamInfo(uint16_t stream_id) const
void fillChunkHeaderFromIndex(uint32_t master_idx, ChunkHeader *header, int64_t *chunk_index, int64_t *chunk_offset)
const StreamInfoHeader * getStreamInfo(uint16_t stream_id) const
bool validateRawMasterIndex(int32_t ref_master_table_index)
int64_t lookupChunkRef(uint16_t stream_id, int64_t pos, TimeFormat time_format, int64_t *chunk_index, int64_t *chunk_offset, int64_t *end_chunk_index, int64_t *master_index) const
bool streamExists(uint16_t stream_id) const
Checks either a stream exists or not.
void create(IndexedFile *indexed_file)
std::string getStreamName(uint16_t stream_id) const
int64_t getItemCount(uint16_t stream_id) const
void adjustChunkHeader(ChunkHeader *header)
timestamp_t getFirstTime(uint16_t stream_id) const
timestamp_t getLastTime(uint16_t stream_id) const
Definition: indexedfile_v201_v301.h:86
TimeFormat
Definition: indexedfile_types_v201_v301.h:57
namespace for IFHD File library
Definition: indexedfile_types.h:30
Additional index table information.
Definition: indexedfile_types_v201_v301.h:270
header for a chunk reference
Definition: indexedfile_types_v201_v301.h:214
Definition: indexedfile_types_v201_v301.h:243