Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

WvConstInPlaceBufStore Class Reference

#include <wvbufstore.h>

Inherits WvReadOnlyBufferStoreMixin< WvBufStore >.

Collaboration diagram for WvConstInPlaceBufStore:

[legend]
List of all members.

Detailed Description

The WvConstInPlaceBuf storage class.

Definition at line 290 of file wvbufstore.h.

Public Member Functions

 WvConstInPlaceBufStore (int _granularity, const void *_data, size_t _avail)
const void * ptr () const
void reset (const void *_data, size_t _avail)
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 const void * peek (int offset, size_t count)
virtual void zap ()
virtual bool iswritable () const
virtual size_t free () const
virtual size_t optallocable () 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 void merge (WvBufStore &instore, size_t count)
virtual bool isreadable () const
virtual size_t optgettable () const
virtual void skip (size_t count)
virtual size_t peekable (int offset) const
virtual size_t optpeekable (int offset) const
void move (void *buf, size_t count)
void copy (void *buf, int offset, size_t count)
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)
void basicmerge (WvBufStore &instore, size_t count)

Protected Member Functions

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 WvBufStorefirstsubbuffer () 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

const void * data
size_t avail
size_t readidx
int granularity


Constructor & Destructor Documentation

WvConstInPlaceBufStore::WvConstInPlaceBufStore int  _granularity,
const void *  _data,
size_t  _avail
 

Definition at line 411 of file wvbufferstore.cc.

References reset().


Member Function Documentation

virtual void* WvReadOnlyBufferStoreMixin< WvBufStore >::alloc size_t  count  )  [inline, virtual, inherited]
 

Implements WvBufStore.

Definition at line 154 of file wvbufstore.h.

virtual void WvBufStore::appendsubbuffer WvBufStore buffer,
bool  autofree
[inline, protected, virtual, inherited]
 

Appends a subbuffer to the buffer.

Reimplemented in WvLinkedBufferStore.

Definition at line 109 of file wvbufstore.h.

Referenced by WvBufStore::merge().

void WvBufStore::basicmerge WvBufStore instore,
size_t  count
[inherited]
 

Definition at line 229 of file wvbufferstore.cc.

References WvBufStore::alloc(), WvBufStore::get(), memops, WvBufStore::optallocable(), WvBufStore::optgettable(), and WvBufStore::unalloc().

Referenced by WvBufStore::merge().

void WvBufStore::copy void *  buf,
int  offset,
size_t  count
[inherited]
 

Definition at line 128 of file wvbufferstore.cc.

References memops, WvBufStore::optpeekable(), and WvBufStore::peek().

Referenced by WvBufBaseCommonImpl< unsigned >::copy().

void WvBufStore::fastput const void *  data,
size_t  count
[inherited]
 

Definition at line 163 of file wvbufferstore.cc.

References WvBufStore::alloc(), and memops.

Referenced by WvBufBaseCommonImpl< unsigned >::put().

virtual WvBufStore* WvBufStore::firstsubbuffer  )  const [inline, protected, virtual, inherited]
 

Returns the first subbuffer.

Returns: the buffer or NULL if none or not supported

Reimplemented in WvLinkedBufferStore.

Definition at line 105 of file wvbufstore.h.

Referenced by WvBufStore::merge().

virtual size_t WvReadOnlyBufferStoreMixin< WvBufStore >::free  )  const [inline, virtual, inherited]
 

Implements WvBufStore.

Definition at line 146 of file wvbufstore.h.

const void * WvConstInPlaceBufStore::get size_t  count  )  [virtual]
 

Implements WvBufStore.

Definition at line 440 of file wvbufferstore.cc.

References avail, data, ptr(), and readidx.

virtual bool WvBufStore::isreadable  )  const [inline, virtual, inherited]
 

Reimplemented in WvBufCursorStore, and WvWriteOnlyBufferStoreMixin< WvReadOnlyBufferStoreMixin< WvBufStore > >.

Definition at line 45 of file wvbufstore.h.

Referenced by WvBufCursorStore::isreadable(), and WvBufBaseCommonImpl< unsigned >::isreadable().

virtual bool WvReadOnlyBufferStoreMixin< WvBufStore >::iswritable  )  const [inline, virtual, inherited]
 

Reimplemented from WvBufStore.

Reimplemented in WvBufCursorStore.

Definition at line 142 of file wvbufstore.h.

virtual void WvReadOnlyBufferStoreMixin< WvBufStore >::merge WvBufStore instore,
size_t  count
[inline, virtual, inherited]
 

Reimplemented from WvBufStore.

Definition at line 175 of file wvbufstore.h.

void WvBufStore::move void *  buf,
size_t  count
[inherited]
 

Definition at line 111 of file wvbufferstore.cc.

References WvBufStore::get(), memops, and WvBufStore::optgettable().

Referenced by WvBufBaseCommonImpl< unsigned >::move().

virtual void* WvReadOnlyBufferStoreMixin< WvBufStore >::mutablepeek int  offset,
size_t  count
[inline, virtual, inherited]
 

Implements WvBufStore.

Reimplemented in WvBufCursorStore.

Definition at line 169 of file wvbufstore.h.

virtual size_t WvBufStore::numsubbuffers  )  const [inline, protected, virtual, inherited]
 

Returns the number of subbuffers in the buffer.

Reimplemented in WvLinkedBufferStore.

Definition at line 98 of file wvbufstore.h.

virtual size_t WvReadOnlyBufferStoreMixin< WvBufStore >::optallocable  )  const [inline, virtual, inherited]
 

Reimplemented from WvBufStore.

Definition at line 150 of file wvbufstore.h.

virtual size_t WvBufStore::optgettable  )  const [inline, virtual, inherited]
 

Reimplemented in WvCircularBufStore, WvLinkedBufferStore, WvBufCursorStore, and WvWriteOnlyBufferStoreMixin< WvReadOnlyBufferStoreMixin< WvBufStore > >.

Definition at line 48 of file wvbufstore.h.

References WvBufStore::used().

Referenced by WvBufStore::basicmerge(), WvBufStore::move(), and WvBufBaseCommonImpl< unsigned >::optgettable().

virtual size_t WvBufStore::optpeekable int  offset  )  const [inline, virtual, inherited]
 

Reimplemented in WvLinkedBufferStore, WvBufCursorStore, and WvWriteOnlyBufferStoreMixin< WvReadOnlyBufferStoreMixin< WvBufStore > >.

Definition at line 56 of file wvbufstore.h.

References WvBufStore::peekable().

Referenced by WvBufStore::copy(), WvBufCursorStore::optgettable(), WvBufCursorStore::optpeekable(), WvLinkedBufferStore::optpeekable(), WvBufBaseCommonImpl< unsigned >::optpeekable(), and WvBufStore::poke().

const void * WvConstInPlaceBufStore::peek int  offset,
size_t  count
[virtual]
 

Reimplemented from WvBufStore.

Definition at line 464 of file wvbufferstore.cc.

References avail, data, and readidx.

size_t WvBufStore::peekable int  offset  )  const [virtual, inherited]
 

Reimplemented in WvBufCursorStore, and WvWriteOnlyBufferStoreMixin< WvReadOnlyBufferStoreMixin< WvBufStore > >.

Definition at line 90 of file wvbufferstore.cc.

References WvBufStore::ungettable(), and WvBufStore::used().

Referenced by WvLinkedBufferStore::mutablepeek(), WvBufStore::optpeekable(), WvBufBaseCommonImpl< unsigned >::optpeekable(), and WvBufBaseCommonImpl< unsigned >::peekable().

void WvBufStore::poke const void *  data,
int  offset,
size_t  count
[inherited]
 

Definition at line 170 of file wvbufferstore.cc.

References memops, WvBufStore::mutablepeek(), WvBufStore::optpeekable(), WvBufStore::put(), and WvBufStore::used().

Referenced by WvBufBaseCommonImpl< unsigned >::poke().

virtual void WvBufStore::prependsubbuffer WvBufStore buffer,
bool  autofree
[inline, protected, virtual, inherited]
 

Prepends a subbuffer to the buffer.

Reimplemented in WvLinkedBufferStore.

Definition at line 113 of file wvbufstore.h.

const void* WvConstInPlaceBufStore::ptr  )  const [inline]
 

Definition at line 301 of file wvbufstore.h.

References data.

Referenced by get(), and WvConstInPlaceBufBase< unsigned char >::ptr().

void WvBufStore::put const void *  data,
size_t  count
[inherited]
 

Definition at line 146 of file wvbufferstore.cc.

References WvBufStore::alloc(), memops, and WvBufStore::optallocable().

Referenced by WvBufStore::poke(), and WvBufBaseCommonImpl< unsigned >::put().

void WvConstInPlaceBufStore::reset const void *  _data,
size_t  _avail
 

Definition at line 419 of file wvbufferstore.cc.

References data, and setavail().

Referenced by WvConstInPlaceBufBase< unsigned char >::reset(), and WvConstInPlaceBufStore().

void WvConstInPlaceBufStore::setavail size_t  _avail  ) 
 

Definition at line 433 of file wvbufferstore.cc.

References avail, and readidx.

Referenced by reset(), and WvConstInPlaceBufBase< unsigned char >::setavail().

virtual void WvBufStore::skip size_t  count  )  [inline, virtual, inherited]
 

Reimplemented in WvBufCursorStore, and WvWriteOnlyBufferStoreMixin< WvReadOnlyBufferStoreMixin< WvBufStore > >.

Definition at line 51 of file wvbufstore.h.

References WvBufStore::get().

Referenced by WvLinkedBufferStore::coalesce(), and WvBufBaseCommonImpl< unsigned >::skip().

virtual void WvReadOnlyBufferStoreMixin< WvBufStore >::unalloc size_t  count  )  [inline, virtual, inherited]
 

Implements WvBufStore.

Definition at line 160 of file wvbufstore.h.

virtual size_t WvReadOnlyBufferStoreMixin< WvBufStore >::unallocable  )  const [inline, virtual, inherited]
 

Implements WvBufStore.

Definition at line 165 of file wvbufstore.h.

void WvConstInPlaceBufStore::unget size_t  count  )  [virtual]
 

Implements WvBufStore.

Definition at line 450 of file wvbufferstore.cc.

References readidx.

size_t WvConstInPlaceBufStore::ungettable  )  const [virtual]
 

Implements WvBufStore.

Definition at line 458 of file wvbufferstore.cc.

References readidx.

virtual bool WvBufStore::unlinksubbuffer WvBufStore buffer,
bool  allowautofree
[inline, protected, virtual, inherited]
 

Unlinks the specified subbuffer.

Only autofrees the buffer if allowautofree == true. Returns: the autofree flag for the buffer

Reimplemented in WvLinkedBufferStore.

Definition at line 121 of file wvbufstore.h.

Referenced by WvBufStore::merge().

size_t WvConstInPlaceBufStore::used  )  const [virtual]
 

Implements WvBufStore.

Definition at line 427 of file wvbufferstore.cc.

References avail, and readidx.

virtual bool WvBufStore::usessubbuffers  )  const [inline, protected, virtual, inherited]
 

Returns true if the buffer uses subbuffers for storage.

Reimplemented in WvLinkedBufferStore.

Definition at line 94 of file wvbufstore.h.

Referenced by WvBufStore::merge().

void WvConstInPlaceBufStore::zap  )  [virtual]
 

Implements WvBufStore.

Definition at line 476 of file wvbufferstore.cc.

References avail, and readidx.


Member Data Documentation

size_t WvConstInPlaceBufStore::avail [protected]
 

Definition at line 295 of file wvbufstore.h.

Referenced by get(), peek(), setavail(), used(), and zap().

const void* WvConstInPlaceBufStore::data [protected]
 

Definition at line 294 of file wvbufstore.h.

Referenced by get(), peek(), ptr(), and reset().

int WvBufStore::granularity [protected, inherited]
 

Definition at line 31 of file wvbufstore.h.

size_t WvConstInPlaceBufStore::readidx [protected]
 

Definition at line 296 of file wvbufstore.h.

Referenced by get(), peek(), setavail(), unget(), ungettable(), used(), and zap().


The documentation for this class was generated from the following files:
Generated on Sat Feb 21 21:06:08 2004 for WvStreams by doxygen 1.3.5