WvStreams
|
The abstract buffer storage base class. More...
#include <wvbufstore.h>
Public Member Functions | |
virtual bool | isreadable () const |
virtual size_t | used () const =0 |
virtual size_t | optgettable () const |
virtual const void * | get (size_t count)=0 |
virtual void | skip (size_t count) |
virtual void | unget (size_t count)=0 |
virtual size_t | ungettable () const =0 |
virtual size_t | peekable (int offset) const |
virtual size_t | optpeekable (int offset) const |
virtual const void * | peek (int offset, size_t count) |
virtual void | zap ()=0 |
void | move (void *buf, size_t count) |
void | copy (void *buf, int offset, size_t count) |
virtual bool | iswritable () const |
virtual size_t | free () const =0 |
virtual size_t | optallocable () const |
virtual void * | alloc (size_t count)=0 |
virtual void | unalloc (size_t count)=0 |
virtual size_t | unallocable () const =0 |
virtual void * | mutablepeek (int offset, size_t count)=0 |
void | put (const void *data, size_t count) |
void | fastput (const void *data, size_t count) |
void | poke (const void *data, int offset, size_t count) |
virtual void | merge (WvBufStore &instore, size_t count) |
void | basicmerge (WvBufStore &instore, size_t count) |
Protected Member Functions | |
WvBufStore (int _granularity) | |
Creates a new buffer. More... | |
virtual bool | usessubbuffers () const |
Returns true if the buffer uses subbuffers for storage. | |
virtual size_t | numsubbuffers () const |
Returns the number of subbuffers in the buffer. | |
virtual WvBufStore * | firstsubbuffer () const |
Returns the first subbuffer. More... | |
virtual void | appendsubbuffer (WvBufStore *buffer, bool autofree) |
Appends a subbuffer to the buffer. | |
virtual void | prependsubbuffer (WvBufStore *buffer, bool autofree) |
Prepends a subbuffer to the buffer. | |
virtual bool | unlinksubbuffer (WvBufStore *buffer, bool allowautofree) |
Unlinks the specified subbuffer. More... | |
Protected Attributes | |
int | granularity |
The abstract buffer storage base class.
Definition at line 26 of file wvbufstore.h.
|
explicitprotected |
Creates a new buffer.
"_granularity" is the suggested granularity for data allocation and alignment purposes
Definition at line 84 of file wvbufferstore.cc.
|
inlineprotectedvirtual |
Returns the first subbuffer.
Returns: the buffer or NULL if none or not supported
Reimplemented in WvLinkedBufferStore.
Definition at line 107 of file wvbufstore.h.
|
inlineprotectedvirtual |
Unlinks the specified subbuffer.
Only autofrees the buffer if allowautofree == true. Returns: the autofree flag for the buffer
Reimplemented in WvLinkedBufferStore.
Definition at line 123 of file wvbufstore.h.