bm::decoder_little_endian Class Reference
Elias Gamma Code (internal)

Class for decoding data from memory buffer. More...

`#include <encoding.h>`

Inheritance diagram for bm::decoder_little_endian:
[legend]
Collaboration diagram for bm::decoder_little_endian:
[legend]

## Public Member Functions

| decoder_little_endian (const unsigned char *buf)
bm::short_t | get_16 ()
bm::word_t | get_24 ()
bm::word_t | get_32 ()
bm::id64_t | get_48 ()
bm::id64_t | get_64 ()
void | get_32 (bm::word_t *w, unsigned count)
bool | get_32_OR (bm::word_t *w, unsigned count)
void | get_32_AND (bm::word_t *w, unsigned count)
void | get_16 (bm::short_t *s, unsigned count)
Public Member Functions inherited from bm::decoder_base
| decoder_base (const unsigned char *buf) BMNOEXCEPT
unsigned char | get_8 () BMNOEXCEPT
| Reads character from the decoding buffer.
size_t | size () const BMNOEXCEPT
| Returns size of the current decoding stream.
void | seek (int delta) BMNOEXCEPT
| change current position
void | memcpy (unsigned char *dst, size_t count) BMNOEXCEPT
| read bytes from the decode buffer
const unsigned char * | get_pos () const BMNOEXCEPT
| Return current buffer pointer.
void | set_pos (const unsigned char *pos) BMNOEXCEPT
| Set current buffer pointer.
bm::id64_t | get_h64 () BMNOEXCEPT
| Read h-64-bit.

## Additional Inherited Members

Protected Attributes inherited from bm::decoder_base
const unsigned char * | buf_
const unsigned char * | start_

## Detailed Description

Class for decoding data from memory buffer.

Properly handles aligment issues with integer data types. Converts data to little endian architecture (presumed it was encoded as big endian)

Definition at line 159 of file encoding.h.

## Constructor & Destructor Documentation

## decoder_little_endian()

bm::decoder_little_endian::decoder_little_endian | ( | const unsigned char * | buf | ) |

inline

Definition at line 952 of file encoding.h.

References bm::decoder_base::decoder_base().

## Member Function Documentation

## get_16() [1/2]

bm::short_t bm::decoder_little_endian::get_16 | ( |  | ) |

inline

Definition at line 958 of file encoding.h.

References bm::decoder_base::buf_.

## get_16() [2/2]

void bm::decoder_little_endian::get_16 | ( | bm::short_t * | s,
|  | unsigned | count )

inline

Definition at line 1070 of file encoding.h.

References bm::decoder_base::buf_, and bm::decoder_base::seek().

## get_24()

bm::word_t bm::decoder_little_endian::get_24 | ( |  | ) |

inline

Definition at line 967 of file encoding.h.

References bm::decoder_base::buf_.

## get_32() [1/2]

bm::word_t bm::decoder_little_endian::get_32 | ( |  | ) |

inline

Definition at line 977 of file encoding.h.

References bm::decoder_base::buf_.

Referenced by get_32_AND(), and get_32_OR().

## get_32() [2/2]

void bm::decoder_little_endian::get_32 | ( | bm::word_t * | w,
|  | unsigned | count )

inline

Definition at line 1014 of file encoding.h.

References bm::decoder_base::buf_, and bm::decoder_base::seek().

## get_32_AND()

void bm::decoder_little_endian::get_32_AND | ( | bm::word_t * | w,
|  | unsigned | count )

inline

Definition at line 1057 of file encoding.h.

References get_32().

## get_32_OR()

bool bm::decoder_little_endian::get_32_OR | ( | bm::word_t * | w,
|  | unsigned | count )

inline

Definition at line 1035 of file encoding.h.

References get_32(), and bm::decoder_base::seek().

## get_48()

bm::id64_t bm::decoder_little_endian::get_48 | ( |  | ) |

inline

Definition at line 986 of file encoding.h.

References bm::decoder_base::buf_.

## get_64()

bm::id64_t bm::decoder_little_endian::get_64 | ( |  | ) |

inline

Definition at line 999 of file encoding.h.

References bm::decoder_base::buf_.

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

- encoding.h