CBufStore Class Reference
class CBufStore : public CStreamStore
|
In-memory non-persistent store. The buffer store does not have a root stream and cannot be closed without losing all the data.
It implements many of the operations defined by the store abstract framework. Specifically, streams in this store can be: overwritten, replaced, appended, deleted, and created in advance of being written to. However the class does not support commit and revert operations.
Overwriting an existing stream can result in a shorter stream; however, a stream cannot be extended beyond its original length. Replacing a stream can result in a stream which is longer or shorter than the original. The order in which streams are written to a memory store is not important as streams can be changed and rewritten.
Constructor & Destructor Documentation
CBufStore(TInt)
IMPORT_C
|
CBufStore
|
(
|
TInt
|
anExpandSize
|
)
|
|
~CBufStore()
Frees resources owned by the object, prior to its destruction.
Member Functions Documentation
DoCreateL(TStreamId &)
Creates a new stream in the store. The function gets the allocated stream id in the anId parameter. A stream buffer for the stream should be returned, ready to write into the new stream. This provides the implementation for the
RStoreWriteStream::CreateL()
functions.
Parameters
TStreamId
& anId
|
On return, contains the allocated stream id.
|
DoDeleteL(TStreamId)
IMPORT_C void
|
DoDeleteL
|
(
|
TStreamId
|
anId
|
)
|
[protected, virtual]
|
DoExtendL()
IMPORT_C
TStreamId
|
DoExtendL
|
(
|
)
|
[protected, virtual]
|
Generates a new stream within this store, and returns its id. This function is intended to create a new stream in advance of being written to.
This is called by
ExtendL()
.
CStreamStore::ExtendL()
NewL(TInt)
Allocates and constructs a new in-memory store and returns a pointer to it.
Parameters
TInt
anExpandSize
|
The granularity of the buffers used in the implementation of the store. Each stream is contained in a separate CBufSeg buffer.
|
NewLC(TInt)
Allocates and constructs a new in-memory store and returns a pointer to it, putting a pointer to the object onto the cleanup stack.
Putting a pointer to the object on the cleanup stack allows the object and allocated resources to be cleaned up if a subsequent leave occurs.
Parameters
TInt
anExpandSize
|
The granularity of the buffers used in the implementation of the store. Each stream is contained in a separate CBufSeg buffer.
|
Member Data Documentation
CArrayFixFlat< CBufSeg * > iBufArray
TInt
iExpandSize
TInt
|
iExpandSize
|
[private]
|
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.