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) |
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. | |
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. | |
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. | |
WvBufStore (int _granularity) | |
Creates a new buffer. | |
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. | |
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. | |
Protected Attributes | |
int | granularity |
The abstract buffer storage base class.
Definition at line 26 of file debian/libwvstreams-dev/usr/include/wvstreams/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.
|
inlinevirtual |
Definition at line 43 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
explicitprotected |
Creates a new buffer.
"_granularity" is the suggested granularity for data allocation and alignment purposes
|
inlinevirtual |
Definition at line 43 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 47 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlinevirtual |
Definition at line 50 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlinevirtual |
Definition at line 53 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
virtual |
Definition at line 90 of file wvbufferstore.cc.
|
inlinevirtual |
Definition at line 58 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlinevirtual |
Definition at line 60 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
void WvBufStore::move | ( | void * | buf, |
size_t | count | ||
) |
Definition at line 111 of file wvbufferstore.cc.
void WvBufStore::copy | ( | void * | buf, |
int | offset, | ||
size_t | count | ||
) |
Definition at line 128 of file wvbufferstore.cc.
|
inlinevirtual |
Definition at line 70 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlinevirtual |
Definition at line 73 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
void WvBufStore::put | ( | const void * | data, |
size_t | count | ||
) |
Definition at line 146 of file wvbufferstore.cc.
void WvBufStore::fastput | ( | const void * | data, |
size_t | count | ||
) |
Definition at line 163 of file wvbufferstore.cc.
void WvBufStore::poke | ( | const void * | data, |
int | offset, | ||
size_t | count | ||
) |
Definition at line 170 of file wvbufferstore.cc.
|
virtual |
Definition at line 198 of file wvbufferstore.cc.
void WvBufStore::basicmerge | ( | WvBufStore & | instore, |
size_t | count | ||
) |
Definition at line 229 of file wvbufferstore.cc.
|
inlineprotectedvirtual |
Returns true if the buffer uses subbuffers for storage.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 96 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlineprotectedvirtual |
Returns the number of subbuffers in the buffer.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 100 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlineprotectedvirtual |
Returns the first subbuffer.
Returns: the buffer or NULL if none or not supported
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 107 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlineprotectedvirtual |
Appends a subbuffer to the buffer.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 111 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlineprotectedvirtual |
Prepends a subbuffer to the buffer.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 115 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlineprotectedvirtual |
Unlinks the specified subbuffer.
Only autofrees the buffer if allowautofree == true. Returns: the autofree flag for the buffer
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 123 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.
|
inlinevirtual |
Definition at line 47 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 50 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 53 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 58 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 60 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 70 of file include/wvbufstore.h.
|
inlinevirtual |
Definition at line 73 of file include/wvbufstore.h.
|
inlineprotectedvirtual |
Returns true if the buffer uses subbuffers for storage.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 96 of file include/wvbufstore.h.
|
inlineprotectedvirtual |
Returns the number of subbuffers in the buffer.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 100 of file include/wvbufstore.h.
|
inlineprotectedvirtual |
Returns the first subbuffer.
Returns: the buffer or NULL if none or not supported
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 107 of file include/wvbufstore.h.
|
inlineprotectedvirtual |
Appends a subbuffer to the buffer.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 111 of file include/wvbufstore.h.
|
inlineprotectedvirtual |
Prepends a subbuffer to the buffer.
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 115 of file include/wvbufstore.h.
|
inlineprotectedvirtual |
Unlinks the specified subbuffer.
Only autofrees the buffer if allowautofree == true. Returns: the autofree flag for the buffer
Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.
Definition at line 123 of file include/wvbufstore.h.
|
protected |
Definition at line 33 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.