retdec
nrv_data.h
Go to the documentation of this file.
1 
7 #ifndef RETDEC_UNPACKER_DECOMPRESSION_NRV_NRV_DATA_H
8 #define RETDEC_UNPACKER_DECOMPRESSION_NRV_NRV_DATA_H
9 
12 
13 namespace retdec {
14 namespace unpacker {
15 
16 class NrvData : public CompressedData
17 {
18 public:
19  NrvData() = delete;
20  NrvData(const DynamicBuffer& buffer, BitParser* bitParser) : CompressedData(buffer), _readPos(0), _writePos(0), _bitParser(bitParser) {}
21  NrvData(const NrvData&) = delete;
22 
23  void reset()
24  {
25  _readPos = 0;
26  _writePos = 0;
27  }
28 
29 protected:
30  uint32_t _readPos, _writePos;
32 
33 private:
35 };
36 
37 } // namespace unpacker
38 } // namespace retdec
39 
40 #endif
Bit getters for NRV decompression algorithms.
Definition: bit_parsers.h:19
Abstract class for compressed data.
Definition: compressed_data.h:26
Definition: nrv_data.h:17
NrvData(const DynamicBuffer &buffer, BitParser *bitParser)
Definition: nrv_data.h:20
uint32_t _readPos
Definition: nrv_data.h:30
void reset()
Definition: nrv_data.h:23
NrvData(const NrvData &)=delete
uint32_t _writePos
Definition: nrv_data.h:30
NrvData & operator=(const NrvData &)
BitParser * _bitParser
Definition: nrv_data.h:31
The class for dynamic buffered data manipulation taking the endianness of the data in account.
Definition: dynamic_buffer.h:36
Declaration of class for abstract compressed data.
Definition: archive_wrapper.h:19
Supportive functionality for the generic unpacker.