HLIBpro
3.0
|
implements a stream of bytes for storage purposes
#include <TByteStream.hh>
Public Member Functions | |
TByteStream (const size_t s=0) | |
construct bytestream capable of holding s bytes | |
TByteStream (const size_t asize, void *adata) | |
construct bytestream by given array (external storage) | |
TByteStream (const TByteStream &str) | |
copy constructor | |
~TByteStream () | |
destructor | |
size_t | position () const |
return current position in byte stream | |
size_t | size () const |
return capacity of bytestream | |
TByteStream & | set_size (const size_t n) |
set new bytestream capacity without keeping old data | |
TByteStream & | set_pos (const size_t p) |
set new position in bytestream | |
TByteStream & | set_stream (void *data, const size_t size) |
set internal stream to data and size without copying | |
TByteStream & | copy_stream (void *data, const size_t size) |
set internal stream to data and size with copying | |
TByteStream & | to_start () |
set internal pointer to start of stream | |
TByteStream & | to_end () |
set internal pointer to end of stream | |
uchar * | data () |
directly access internal stream data | |
void | put (const void *buf, const size_t n) |
put n bytes to current position in stream | |
template<typename T > | |
void | put (const T &buf) |
directly put given data into stream | |
template<typename T > | |
void | dput (const T *buf, const size_t nelem) |
directly put nelem elements of data into stream | |
void | get (void *buf, const size_t n) |
get n bytes from current position in stream | |
template<typename T > | |
void | get (T &buf) |
directly get data from stream | |
template<typename T > | |
void | dget (T *buf, const size_t nelem) |
directly get nelem elements of data from stream | |
void | save (const std::string &filename) const |
write stream into file filename | |
void | load (const std::string &filename) |
load stream from file filename | |
uint | checksum () const |
return checksum of content | |
void | print (const bool show_content=false) const |
print information/content of stream | |
Protected Attributes | |
uchar * | _data |
array holding the actual stream | |
size_t | _pos |
current position in stream | |
bool | _extern |
indicates, that stream memory is handled outside of class | |