| GL Studio Safety Critical Embedded C++ Runtime Library
    | 
#include <gls_rle_decoder.h>
| Public Member Functions | |
| GlsRLEDecoder (const GlsUChar *const inlineData[], const GlsUInt32 inlineDataLength, const GlsUInt32 lineLength) | |
| ~GlsRLEDecoder () | |
| GlsUChar | DecodeByte (void) | 
| GlsBool | IsDone (void) const | 
| Protected Attributes | |
| GlsUtil::InlineReader | _inlineReader | 
| GlsUChar | _markerByte | 
| GlsUInt32 | _sequenceRemaining | 
| GlsUChar | _repeatedByte | 
| Static Protected Attributes | |
| static const GlsUChar | TWO_BYTE_COUNT_FLAG = 0x80 | 
RLE ( Run Length Encoded compression ) decoder. This decoder allows for incremental decoding of RLE compressed data in inline format.
| GlsRLEDecoder::GlsRLEDecoder | ( | const GlsUChar *const | inlineData[], | 
| const GlsUInt32 | inlineDataLength, | ||
| const GlsUInt32 | lineLength | ||
| ) | 
Constructor - create an instance
| inlineData | inline RLE data to decode | 
| inlineDataLength | length in bytes of inline RLE data to decode ( not including terminators at end of lines ) | 
| lineLength | length (in bytes) of one line of data in the inline data (not including NULL terminator) | 
| GlsRLEDecoder::~GlsRLEDecoder | ( | ) | 
Destructor - destroy instance
| GlsUChar GlsRLEDecoder::DecodeByte | ( | void | ) | 
Decode one byte of input
| GlsBool GlsRLEDecoder::IsDone | ( | void | ) | const | 
Determine if decoder is finished decoding input data
| 
 | protected | 
inline data reader
| 
 | protected | 
marker byte to signal run length
| 
 | protected | 
current repeated byte if _sequenceRemaining > 0
| 
 | protected | 
number of repeated bytes remaining in sequence else 0
| 
 | staticprotected | 
flag in input data that indicates a two byte repeat count