DCMTK
Version 3.6.3
OFFIS DICOM Toolkit
|
producer class that reads data from a buffer provided by the caller. More...
Public Member Functions | |
DcmBufferProducer () | |
constructor | |
virtual | ~DcmBufferProducer () |
destructor | |
virtual OFBool | good () const |
returns the status of the producer. More... | |
virtual OFCondition | status () const |
returns the status of the producer as an OFCondition object. More... | |
virtual OFBool | eos () |
returns true if the producer is at the end of stream. More... | |
virtual offile_off_t | avail () |
returns the minimum number of bytes that can be read with the next call to read(). More... | |
virtual offile_off_t | read (void *buf, offile_off_t buflen) |
reads as many bytes as possible into the given block. More... | |
virtual offile_off_t | skip (offile_off_t skiplen) |
skips over the given number of bytes (or less) More... | |
virtual void | putback (offile_off_t num) |
resets the stream to the position by the given number of bytes. More... | |
virtual void | setBuffer (const void *buf, offile_off_t buflen) |
adds the content of the given buffer to the input stream. More... | |
virtual void | releaseBuffer () |
releases the current buffer. More... | |
virtual void | setEos () |
marks the end of stream, i.e. More... | |
![]() | |
virtual | ~DcmProducer () |
destructor | |
Private Member Functions | |
DcmBufferProducer (const DcmBufferProducer &) | |
private unimplemented copy constructor | |
DcmBufferProducer & | operator= (const DcmBufferProducer &) |
private unimplemented copy assignment operator | |
Private Attributes | |
unsigned char * | buffer_ |
the user buffer we're actually reading from | |
unsigned char * | backup_ |
the backup buffer | |
offile_off_t | bufSize_ |
size of the user buffer, in bytes | |
offile_off_t | bufIndex_ |
number of bytes read from the user buffer | |
offile_off_t | backupIndex_ |
number of bytes read from the backup buffer | |
offile_off_t | backupStart_ |
index of first valid byte in backup buffer, for putback | |
OFCondition | status_ |
status | |
OFBool | eosflag_ |
true if setEos has been called before | |
producer class that reads data from a buffer provided by the caller.
Used for DICOM network communication.
|
virtual |
returns the minimum number of bytes that can be read with the next call to read().
The DcmObject read methods rely on avail to return a value > 0 if there is no I/O suspension since certain data such as tag and length are only read "en bloc", i.e. all or nothing.
Implements DcmProducer.
|
virtual |
returns true if the producer is at the end of stream.
Implements DcmProducer.
|
virtual |
returns the status of the producer.
Unless the status is good, the producer will not permit any operation.
Implements DcmProducer.
|
virtual |
resets the stream to the position by the given number of bytes.
num | number of bytes to putback. If the putback operation fails, the producer status becomes bad. |
Implements DcmProducer.
|
virtual |
reads as many bytes as possible into the given block.
buf | pointer to memory block, must not be NULL |
buflen | length of memory block |
Implements DcmProducer.
|
virtual |
releases the current buffer.
Should only be called when the content of the buffer has been read as far as possible. Pending input from the buffer is copied into an internal backup buffer if necessary. If an overflow condition occurs, the producer status becomes bad.
|
virtual |
adds the content of the given buffer to the input stream.
buf | buffer from which data is read. Must be allocated by caller and remain valid until releaseBuffer() is called |
buflen | buffer length, must be even number > 0. |
|
virtual |
marks the end of stream, i.e.
the data provided with the last call to setBuffer is the last data available in the stream.
|
virtual |
skips over the given number of bytes (or less)
skiplen | number of bytes to skip |
Implements DcmProducer.
|
virtual |
returns the status of the producer as an OFCondition object.
Unless the status is good, the producer will not permit any operation.
Implements DcmProducer.