16 #ifndef IMPALA_EXPERIMENTS_BIT_STREAM_UTILS_8BYTE_H
17 #define IMPALA_EXPERIMENTS_BIT_STREAM_UTILS_8BYTE_H
19 #include <boost/cstdint.hpp>
39 DCHECK_EQ(buffer_len % 8, 0);
93 DCHECK_EQ(buffer_len % 8, 0);
bool PutVlqInt(int32_t v)
BitReader_8byte(uint8_t *buffer, int buffer_len)
void Align()
Advances offset_ and/or bit_offset_ to next byte boundary in buffer_.
BitWriter_8byte(uint8_t *buffer, int buffer_len)
bool GetValue(int num_bits, T *v)
static int Ceil(int value, int divisor)
Returns the ceil of value/divisor.
static const int MAX_VLQ_BYTE_LEN
Maximum byte length of a vlq encoded int.
int bytes_written() const
bool GetAligned(int num_bits, T *v)
bool GetVlqInt(int32_t *v)
uint8_t * GetNextBytePtr(int num_bytes=1)
bool PutAligned(T v, int num_bits)
Writes v to the next aligned byte.
bool PutValue(uint64_t v, int num_bits)