Grok  7.6.0
Public Member Functions | Private Member Functions | Private Attributes
grk::BitIO Class Reference

#include <BitIO.h>

Inheritance diagram for grk::BitIO:
grk::IBitIO

Public Member Functions

 BitIO (uint8_t *bp, uint64_t len, bool isEncoder)
 
 BitIO (IBufferedStream *stream, bool isEncoder)
 
size_t numbytes ()
 Number of bytes written. More...
 
bool write (uint32_t v, uint32_t n)
 Write bits. More...
 
void read (uint32_t *bits, uint32_t n)
 Read bits. More...
 
bool flush ()
 Flush bits. More...
 
void inalign ()
 Passes the ending bits (coming from flushing) More...
 
void simulateOutput (bool doSimulate)
 
void putcommacode (int32_t n)
 
void getcommacode (uint32_t *n)
 
void putnumpasses (uint32_t n)
 
void getnumpasses (uint32_t *numpasses)
 
- Public Member Functions inherited from grk::IBitIO
virtual ~IBitIO ()
 

Private Member Functions

bool putbit (uint8_t b)
 
void getbit (uint32_t *bits, uint8_t pos)
 
bool byteout ()
 
bool byteout_stream ()
 
void bytein ()
 

Private Attributes

uint8_t * start
 
size_t offset
 
size_t buf_len
 
uint8_t buf
 
uint8_t ct
 
size_t total_bytes
 
bool sim_out
 
IBufferedStreamstream
 

Constructor & Destructor Documentation

◆ BitIO() [1/2]

grk::BitIO::BitIO ( uint8_t *  bp,
uint64_t  len,
bool  isEncoder 
)

◆ BitIO() [2/2]

grk::BitIO::BitIO ( IBufferedStream stream,
bool  isEncoder 
)

Member Function Documentation

◆ bytein()

void grk::BitIO::bytein ( )
private

◆ byteout()

bool grk::BitIO::byteout ( )
private

◆ byteout_stream()

bool grk::BitIO::byteout_stream ( )
private

◆ flush()

bool grk::BitIO::flush ( )
virtual

Flush bits.

Returns
true if successful, returns false otherwise

Implements grk::IBitIO.

◆ getbit()

void grk::BitIO::getbit ( uint32_t *  bits,
uint8_t  pos 
)
private

◆ getcommacode()

void grk::BitIO::getcommacode ( uint32_t *  n)

◆ getnumpasses()

void grk::BitIO::getnumpasses ( uint32_t *  numpasses)

◆ inalign()

void grk::BitIO::inalign ( )
virtual

Passes the ending bits (coming from flushing)

Implements grk::IBitIO.

◆ numbytes()

size_t grk::BitIO::numbytes ( )
virtual

Number of bytes written.

Returns
the number of bytes written

Implements grk::IBitIO.

◆ putbit()

bool grk::BitIO::putbit ( uint8_t  b)
private

◆ putcommacode()

void grk::BitIO::putcommacode ( int32_t  n)

◆ putnumpasses()

void grk::BitIO::putnumpasses ( uint32_t  n)

◆ read()

void grk::BitIO::read ( uint32_t *  bits,
uint32_t  n 
)
virtual

Read bits.

Parameters
bitspointer to bits buffer
nNumber of bits to read

Implements grk::IBitIO.

◆ simulateOutput()

void grk::BitIO::simulateOutput ( bool  doSimulate)
inline

References sim_out.

◆ write()

bool grk::BitIO::write ( uint32_t  v,
uint32_t  n 
)
virtual

Write bits.

Parameters
vValue of bits
nNumber of bits to write

Implements grk::IBitIO.

Field Documentation

◆ buf

uint8_t grk::BitIO::buf
private

◆ buf_len

size_t grk::BitIO::buf_len
private

◆ ct

uint8_t grk::BitIO::ct
private

◆ offset

size_t grk::BitIO::offset
private

◆ sim_out

bool grk::BitIO::sim_out
private

Referenced by simulateOutput().

◆ start

uint8_t* grk::BitIO::start
private

◆ stream

IBufferedStream* grk::BitIO::stream
private

◆ total_bytes

size_t grk::BitIO::total_bytes
private

The documentation for this class was generated from the following file: