A class to help decoding run-length encoded (RLE) streams. More...
#include <rle_decoder.hpp>
Public Types | |
typedef Pattern | pattern_type |
The type of the patterns we will read in the input buffer. | |
typedef InputBuffer | input_buffer_type |
The type of the input buffer. | |
typedef OutputBuffer | output_buffer_type |
The type of the output buffer. | |
Public Member Functions | |
void | decode (input_buffer_type &input, output_buffer_type &output) |
Protected Types | |
enum | mode { stop , raw , compressed } |
State of the decompression. More... | |
Protected Member Functions | |
virtual void | read_mode (input_buffer_type &input, output_buffer_type &output)=0 |
Protected Attributes | |
mode | m_mode |
Current mode of the decompression. | |
unsigned int | m_count |
Case of m_mode : | |
pattern_type | m_pattern |
The pattern to repeat. | |
A class to help decoding run-length encoded (RLE) streams.
Template parameters :
The Pattern and InputBuffer parameters don't have any type requirement.
The OutputBuffer type must have the following methods :
Definition at line 54 of file rle_decoder.hpp.
typedef InputBuffer claw::rle_decoder< Pattern, InputBuffer, OutputBuffer >::input_buffer_type |
The type of the input buffer.
Definition at line 61 of file rle_decoder.hpp.
typedef OutputBuffer claw::rle_decoder< Pattern, InputBuffer, OutputBuffer >::output_buffer_type |
The type of the output buffer.
Definition at line 64 of file rle_decoder.hpp.
typedef Pattern claw::rle_decoder< Pattern, InputBuffer, OutputBuffer >::pattern_type |
The type of the patterns we will read in the input buffer.
Definition at line 58 of file rle_decoder.hpp.
|
protected |
State of the decompression.
Enumerator | |
---|---|
stop | Stop the decoding. |
raw | Next bytes represent raw data. |
compressed | Next bytes represent compressed data. |
Definition at line 70 of file rle_decoder.hpp.
|
protected |
Case of m_mode :
Definition at line 102 of file rle_decoder.hpp.
|
protected |
Current mode of the decompression.
Definition at line 95 of file rle_decoder.hpp.
|
protected |
The pattern to repeat.
Definition at line 105 of file rle_decoder.hpp.