30 PacketTracker(uint16_t numComps, uint8_t numRes, uint64_t numPrec, uint16_t numLayers)
42 void packet_encoded(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer)
47 auto ind =
index(comp, res, prec, layer);
49 bits_[ind >> 3] |=
static_cast<uint8_t
>(1 << (ind & 7));
57 auto ind =
index(comp, res, prec, layer);
58 return bits_[ind >> 3] &
70 uint16_t numLayers)
const
72 uint64_t totalBits =
static_cast<uint64_t
>(numComps) * numRes * numPrec * numLayers;
73 return (totalBits + 7) >> 3;
76 bool isValidIndex(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer)
const
81 uint64_t
index(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer)
const
85 static_cast<uint64_t
>(res) *
numPrec_ + prec;
PacketTracker(uint16_t numComps, uint8_t numRes, uint64_t numPrec, uint16_t numLayers)
Definition PacketTracker.h:30
void clear()
Definition PacketTracker.h:37
uint16_t numComps_
Definition PacketTracker.h:64
bool isValidIndex(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer) const
Definition PacketTracker.h:76
uint64_t get_buffer_len(uint16_t numComps, uint8_t numRes, uint64_t numPrec, uint16_t numLayers) const
Definition PacketTracker.h:69
bool is_packet_encoded(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer) const
Definition PacketTracker.h:52
void packet_encoded(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer)
Definition PacketTracker.h:42
uint64_t index(uint16_t comp, uint8_t res, uint64_t prec, uint16_t layer) const
Definition PacketTracker.h:81
uint64_t numPrec_
Definition PacketTracker.h:66
uint8_t numRes_
Definition PacketTracker.h:65
uint16_t numLayers_
Definition PacketTracker.h:67
std::vector< uint8_t > bits_
Definition PacketTracker.h:63
ResWindow.
Definition CompressedChunkCache.h:36