this class implements an RLE decompressor conforming to the DICOM standard.
More...
|
| | DcmRLEDecoder (size_t outputBufferSize) |
| | constructor More...
|
| |
|
| ~DcmRLEDecoder () |
| | destructor
|
| |
| void | clear () |
| | resets the decoder object to newly constructed state. More...
|
| |
| size_t | size () const |
| | returns the number of bytes written to the output buffer More...
|
| |
|
void * | getOutputBuffer () const |
| | returns pointer to the output buffer
|
| |
|
OFBool | fail () const |
| | returns true if the RLE compressor has failed (out of memory or output buffer too small).
|
| |
this class implements an RLE decompressor conforming to the DICOM standard.
The class is loosely based on an implementation by Phil Norman forre.nosp@m.y@eh.nosp@m..org
| DcmRLEDecoder::DcmRLEDecoder |
( |
size_t |
outputBufferSize | ) |
|
|
inline |
constructor
- Parameters
-
| outputBufferSize | size of the output buffer (in bytes) to which the RLE codec will write decompressed output. |
| void DcmRLEDecoder::clear |
( |
| ) |
|
|
inline |
resets the decoder object to newly constructed state.
The size and location of the output buffer is not changed.
| void DcmRLEDecoder::literal |
( |
unsigned char * |
cp, |
|
|
unsigned char |
nbytes |
|
) |
| |
|
inlineprivate |
this method expands a literal run
- Parameters
-
| cp | pointer to buffer |
| nbytes | number of bytes in buffer |
| void DcmRLEDecoder::replicate |
( |
unsigned char |
ch, |
|
|
unsigned char |
nbytes |
|
) |
| |
|
inlineprivate |
this method expands a replicate run
- Parameters
-
| ch | value to replicate |
| nbytes | number of repetitions |
| size_t DcmRLEDecoder::size |
( |
| ) |
const |
|
inline |
returns the number of bytes written to the output buffer
- Returns
- size of decompressed stream, in bytes
this flag indicates a failure of the RLE codec.
Once a failure is flagged, the codec will consume all input and not produce any more output.
| size_t DcmRLEDecoder::offset_ |
|
private |
contains the number of bytes already written to outputBuffer_.
Value is always less or equal to outputBufferSize_.
| unsigned char* DcmRLEDecoder::outputBuffer_ |
|
private |
this member points to a block of size outputBufferSize_ (unless fail_ is true).
This is the block of data to which the decompressed stream is written
| unsigned char DcmRLEDecoder::suspendInfo_ |
|
private |
contains suspension information.
If not suspended, contains 128. If suspended during a replicate run, contains control byte of repeat run (> 128). If suspended during a literal run, contains number of remaining bytes in literal run minus 1 (< 128).
The documentation for this class was generated from the following file:
- dcmdata/include/dcmtk/dcmdata/dcrledec.h