WvStreams
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
WvInPlaceBufStore Class Reference

The WvInPlaceBuf storage class. More...

#include <wvbufstore.h>

Inheritance diagram for WvInPlaceBufStore:
Inheritance graph
[legend]

Public Member Functions

 WvInPlaceBufStore (int _granularity, void *_data, size_t _avail, size_t _size, bool _autofree)
 
 WvInPlaceBufStore (int _granularity, size_t _size)
 
void * ptr () const
 
size_t size () const
 
bool get_autofree () const
 
void set_autofree (bool _autofree)
 
void reset (void *_data, size_t _avail, size_t _size, bool _autofree)
 
void setavail (size_t _avail)
 
virtual size_t used () const
 
virtual const void * get (size_t count)
 
virtual void unget (size_t count)
 
virtual size_t ungettable () const
 
virtual void zap ()
 
virtual size_t free () const
 
virtual void * alloc (size_t count)
 
virtual void unalloc (size_t count)
 
virtual size_t unallocable () const
 
virtual void * mutablepeek (int offset, size_t count)
 
 WvInPlaceBufStore (int _granularity, void *_data, size_t _avail, size_t _size, bool _autofree)
 
 WvInPlaceBufStore (int _granularity, size_t _size)
 
void * ptr () const
 
size_t size () const
 
bool get_autofree () const
 
void set_autofree (bool _autofree)
 
void reset (void *_data, size_t _avail, size_t _size, bool _autofree)
 
void setavail (size_t _avail)
 
virtual size_t used () const
 
virtual const void * get (size_t count)
 
virtual void unget (size_t count)
 
virtual size_t ungettable () const
 
virtual void zap ()
 
virtual size_t free () const
 
virtual void * alloc (size_t count)
 
virtual void unalloc (size_t count)
 
virtual size_t unallocable () const
 
virtual void * mutablepeek (int offset, size_t count)
 
virtual bool isreadable () const
 
virtual bool isreadable () const
 
virtual size_t optgettable () const
 
virtual size_t optgettable () const
 
virtual void skip (size_t count)
 
virtual void skip (size_t count)
 
virtual size_t peekable (int offset) const
 
virtual size_t peekable (int offset) const
 
virtual size_t optpeekable (int offset) const
 
virtual size_t optpeekable (int offset) const
 
virtual const void * peek (int offset, size_t count)
 
virtual const void * peek (int offset, size_t count)
 
void move (void *buf, size_t count)
 
void move (void *buf, size_t count)
 
void copy (void *buf, int offset, size_t count)
 
void copy (void *buf, int offset, size_t count)
 
virtual bool iswritable () const
 
virtual bool iswritable () const
 
virtual size_t optallocable () const
 
virtual size_t optallocable () const
 
void put (const void *data, size_t count)
 
void put (const void *data, size_t count)
 
void fastput (const void *data, size_t count)
 
void fastput (const void *data, size_t count)
 
void poke (const void *data, int offset, size_t count)
 
void poke (const void *data, int offset, size_t count)
 
virtual void merge (WvBufStore &instore, size_t count)
 
virtual void merge (WvBufStore &instore, size_t count)
 
void basicmerge (WvBufStore &instore, size_t count)
 
void basicmerge (WvBufStore &instore, size_t count)
 

Protected Member Functions

virtual bool usessubbuffers () const
 Returns true if the buffer uses subbuffers for storage.
 
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 size_t numsubbuffers () const
 Returns the number of subbuffers in the buffer.
 
virtual WvBufStorefirstsubbuffer () const
 Returns the first subbuffer.
 
virtual WvBufStorefirstsubbuffer () const
 Returns the first subbuffer.
 
virtual void appendsubbuffer (WvBufStore *buffer, bool autofree)
 Appends a subbuffer to the buffer.
 
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 void prependsubbuffer (WvBufStore *buffer, bool autofree)
 Prepends a subbuffer to the buffer.
 
virtual bool unlinksubbuffer (WvBufStore *buffer, bool allowautofree)
 Unlinks the specified subbuffer.
 
virtual bool unlinksubbuffer (WvBufStore *buffer, bool allowautofree)
 Unlinks the specified subbuffer.
 

Protected Attributes

void * data
 
size_t xsize
 
size_t readidx
 
size_t writeidx
 
bool xautofree
 
int granularity
 

Detailed Description

The WvInPlaceBuf storage class.

Definition at line 251 of file debian/libwvstreams-dev/usr/include/wvstreams/wvbufstore.h.

Constructor & Destructor Documentation

◆ WvInPlaceBufStore() [1/2]

WvInPlaceBufStore::WvInPlaceBufStore ( int  _granularity,
void *  _data,
size_t  _avail,
size_t  _size,
bool  _autofree 
)

Definition at line 287 of file wvbufferstore.cc.

◆ WvInPlaceBufStore() [2/2]

WvInPlaceBufStore::WvInPlaceBufStore ( int  _granularity,
size_t  _size 
)

Definition at line 295 of file wvbufferstore.cc.

◆ ~WvInPlaceBufStore()

WvInPlaceBufStore::~WvInPlaceBufStore ( )
virtual

Definition at line 302 of file wvbufferstore.cc.

Member Function Documentation

◆ ptr() [1/2]

void * WvInPlaceBufStore::ptr ( ) const
inline

◆ size() [1/2]

size_t WvInPlaceBufStore::size ( ) const
inline

◆ get_autofree() [1/2]

bool WvInPlaceBufStore::get_autofree ( ) const
inline

◆ set_autofree() [1/2]

void WvInPlaceBufStore::set_autofree ( bool  _autofree)
inline

◆ reset()

void WvInPlaceBufStore::reset ( void *  _data,
size_t  _avail,
size_t  _size,
bool  _autofree = false 
)

Definition at line 309 of file wvbufferstore.cc.

◆ setavail()

void WvInPlaceBufStore::setavail ( size_t  _avail)

Definition at line 322 of file wvbufferstore.cc.

◆ used() [1/2]

size_t WvInPlaceBufStore::used ( ) const
virtual

Implements WvBufStore.

Definition at line 330 of file wvbufferstore.cc.

◆ get() [1/2]

const void * WvInPlaceBufStore::get ( size_t  count)
virtual

Implements WvBufStore.

Definition at line 336 of file wvbufferstore.cc.

◆ unget() [1/2]

void WvInPlaceBufStore::unget ( size_t  count)
virtual

Implements WvBufStore.

Definition at line 346 of file wvbufferstore.cc.

◆ ungettable() [1/2]

size_t WvInPlaceBufStore::ungettable ( ) const
virtual

Implements WvBufStore.

Definition at line 354 of file wvbufferstore.cc.

◆ zap() [1/2]

void WvInPlaceBufStore::zap ( )
virtual

Implements WvBufStore.

Definition at line 360 of file wvbufferstore.cc.

◆ free() [1/2]

size_t WvInPlaceBufStore::free ( ) const
virtual

Implements WvBufStore.

Definition at line 366 of file wvbufferstore.cc.

◆ alloc() [1/2]

void * WvInPlaceBufStore::alloc ( size_t  count)
virtual

Implements WvBufStore.

Definition at line 372 of file wvbufferstore.cc.

◆ unalloc() [1/2]

void WvInPlaceBufStore::unalloc ( size_t  count)
virtual

Implements WvBufStore.

Definition at line 382 of file wvbufferstore.cc.

◆ unallocable() [1/2]

size_t WvInPlaceBufStore::unallocable ( ) const
virtual

Implements WvBufStore.

Definition at line 390 of file wvbufferstore.cc.

◆ mutablepeek() [1/2]

void * WvInPlaceBufStore::mutablepeek ( int  offset,
size_t  count 
)
virtual

Implements WvBufStore.

Definition at line 396 of file wvbufferstore.cc.

◆ ptr() [2/2]

void * WvInPlaceBufStore::ptr ( ) const
inline

Definition at line 265 of file include/wvbufstore.h.

◆ size() [2/2]

size_t WvInPlaceBufStore::size ( ) const
inline

Definition at line 267 of file include/wvbufstore.h.

◆ get_autofree() [2/2]

bool WvInPlaceBufStore::get_autofree ( ) const
inline

Definition at line 269 of file include/wvbufstore.h.

◆ set_autofree() [2/2]

void WvInPlaceBufStore::set_autofree ( bool  _autofree)
inline

Definition at line 271 of file include/wvbufstore.h.

◆ used() [2/2]

virtual size_t WvInPlaceBufStore::used ( ) const
virtual

Implements WvBufStore.

◆ get() [2/2]

virtual const void * WvInPlaceBufStore::get ( size_t  count)
virtual

Implements WvBufStore.

◆ unget() [2/2]

virtual void WvInPlaceBufStore::unget ( size_t  count)
virtual

Implements WvBufStore.

◆ ungettable() [2/2]

virtual size_t WvInPlaceBufStore::ungettable ( ) const
virtual

Implements WvBufStore.

◆ zap() [2/2]

virtual void WvInPlaceBufStore::zap ( )
virtual

Implements WvBufStore.

◆ free() [2/2]

virtual size_t WvInPlaceBufStore::free ( ) const
virtual

Implements WvBufStore.

◆ alloc() [2/2]

virtual void * WvInPlaceBufStore::alloc ( size_t  count)
virtual

Implements WvBufStore.

◆ unalloc() [2/2]

virtual void WvInPlaceBufStore::unalloc ( size_t  count)
virtual

Implements WvBufStore.

◆ unallocable() [2/2]

virtual size_t WvInPlaceBufStore::unallocable ( ) const
virtual

Implements WvBufStore.

◆ mutablepeek() [2/2]

virtual void * WvInPlaceBufStore::mutablepeek ( int  offset,
size_t  count 
)
virtual

Implements WvBufStore.

◆ isreadable() [1/2]

virtual bool WvBufStore::isreadable ( ) const
inlinevirtualinherited

◆ isreadable() [2/2]

virtual bool WvBufStore::isreadable ( ) const
inlinevirtualinherited

Definition at line 47 of file include/wvbufstore.h.

◆ optgettable() [1/2]

virtual size_t WvBufStore::optgettable ( ) const
inlinevirtualinherited

◆ optgettable() [2/2]

virtual size_t WvBufStore::optgettable ( ) const
inlinevirtualinherited

Definition at line 50 of file include/wvbufstore.h.

◆ skip() [1/2]

virtual void WvBufStore::skip ( size_t  count)
inlinevirtualinherited

◆ skip() [2/2]

virtual void WvBufStore::skip ( size_t  count)
inlinevirtualinherited

Definition at line 53 of file include/wvbufstore.h.

◆ peekable()

size_t WvBufStore::peekable ( int  offset) const
virtualinherited

Definition at line 90 of file wvbufferstore.cc.

◆ optpeekable() [1/2]

virtual size_t WvBufStore::optpeekable ( int  offset) const
inlinevirtualinherited

◆ optpeekable() [2/2]

virtual size_t WvBufStore::optpeekable ( int  offset) const
inlinevirtualinherited

Definition at line 58 of file include/wvbufstore.h.

◆ peek() [1/2]

virtual const void * WvBufStore::peek ( int  offset,
size_t  count 
)
inlinevirtualinherited

◆ peek() [2/2]

virtual const void * WvBufStore::peek ( int  offset,
size_t  count 
)
inlinevirtualinherited

Definition at line 60 of file include/wvbufstore.h.

◆ move()

void WvBufStore::move ( void *  buf,
size_t  count 
)
inherited

Definition at line 111 of file wvbufferstore.cc.

◆ copy()

void WvBufStore::copy ( void *  buf,
int  offset,
size_t  count 
)
inherited

Definition at line 128 of file wvbufferstore.cc.

◆ iswritable() [1/2]

virtual bool WvBufStore::iswritable ( ) const
inlinevirtualinherited

◆ iswritable() [2/2]

virtual bool WvBufStore::iswritable ( ) const
inlinevirtualinherited

Definition at line 70 of file include/wvbufstore.h.

◆ optallocable() [1/2]

virtual size_t WvBufStore::optallocable ( ) const
inlinevirtualinherited

◆ optallocable() [2/2]

virtual size_t WvBufStore::optallocable ( ) const
inlinevirtualinherited

Definition at line 73 of file include/wvbufstore.h.

◆ put()

void WvBufStore::put ( const void *  data,
size_t  count 
)
inherited

Definition at line 146 of file wvbufferstore.cc.

◆ fastput()

void WvBufStore::fastput ( const void *  data,
size_t  count 
)
inherited

Definition at line 163 of file wvbufferstore.cc.

◆ poke()

void WvBufStore::poke ( const void *  data,
int  offset,
size_t  count 
)
inherited

Definition at line 170 of file wvbufferstore.cc.

◆ merge()

void WvBufStore::merge ( WvBufStore instore,
size_t  count 
)
virtualinherited

Definition at line 198 of file wvbufferstore.cc.

◆ basicmerge()

void WvBufStore::basicmerge ( WvBufStore instore,
size_t  count 
)
inherited

Definition at line 229 of file wvbufferstore.cc.

◆ usessubbuffers() [1/2]

virtual bool WvBufStore::usessubbuffers ( ) const
inlineprotectedvirtualinherited

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.

◆ usessubbuffers() [2/2]

virtual bool WvBufStore::usessubbuffers ( ) const
inlineprotectedvirtualinherited

Returns true if the buffer uses subbuffers for storage.

Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.

Definition at line 96 of file include/wvbufstore.h.

◆ numsubbuffers() [1/2]

virtual size_t WvBufStore::numsubbuffers ( ) const
inlineprotectedvirtualinherited

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.

◆ numsubbuffers() [2/2]

virtual size_t WvBufStore::numsubbuffers ( ) const
inlineprotectedvirtualinherited

Returns the number of subbuffers in the buffer.

Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.

Definition at line 100 of file include/wvbufstore.h.

◆ firstsubbuffer() [1/2]

virtual WvBufStore * WvBufStore::firstsubbuffer ( ) const
inlineprotectedvirtualinherited

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.

◆ firstsubbuffer() [2/2]

virtual WvBufStore * WvBufStore::firstsubbuffer ( ) const
inlineprotectedvirtualinherited

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.

◆ appendsubbuffer() [1/2]

virtual void WvBufStore::appendsubbuffer ( WvBufStore buffer,
bool  autofree 
)
inlineprotectedvirtualinherited

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.

◆ appendsubbuffer() [2/2]

virtual void WvBufStore::appendsubbuffer ( WvBufStore buffer,
bool  autofree 
)
inlineprotectedvirtualinherited

Appends a subbuffer to the buffer.

Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.

Definition at line 111 of file include/wvbufstore.h.

◆ prependsubbuffer() [1/2]

virtual void WvBufStore::prependsubbuffer ( WvBufStore buffer,
bool  autofree 
)
inlineprotectedvirtualinherited

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.

◆ prependsubbuffer() [2/2]

virtual void WvBufStore::prependsubbuffer ( WvBufStore buffer,
bool  autofree 
)
inlineprotectedvirtualinherited

Prepends a subbuffer to the buffer.

Reimplemented in WvLinkedBufferStore, and WvLinkedBufferStore.

Definition at line 115 of file include/wvbufstore.h.

◆ unlinksubbuffer() [1/2]

virtual bool WvBufStore::unlinksubbuffer ( WvBufStore buffer,
bool  allowautofree 
)
inlineprotectedvirtualinherited

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.

◆ unlinksubbuffer() [2/2]

virtual bool WvBufStore::unlinksubbuffer ( WvBufStore buffer,
bool  allowautofree 
)
inlineprotectedvirtualinherited

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.

Member Data Documentation

◆ data

void * WvInPlaceBufStore::data
protected

◆ xsize

size_t WvInPlaceBufStore::xsize
protected

◆ readidx

size_t WvInPlaceBufStore::readidx
protected

◆ writeidx

size_t WvInPlaceBufStore::writeidx
protected

◆ xautofree

bool WvInPlaceBufStore::xautofree
protected

◆ granularity

int WvBufStore::granularity
protectedinherited

The documentation for this class was generated from the following files: