RCommsBufPond Class Reference
The
RCommsBufPond
represents a collection of RShPools. Each pool in the pond has a different size of buffer. The pond is responsible for creating, allocating and freeing these pools.
Constructor & Destructor Documentation
RCommsBufPond()
IMPORT_C
|
RCommsBufPond
|
(
|
)
|
|
RCommsBufPond(MCommsBufPondIntf *)
Member Functions Documentation
Alloc(TInt, TInt, TInt)
Allocates memory for a
RCommsBuf
object. More than one buffer may be allocated and linked, if the requested buffer size doesn't directly satisfy with the configured buffer sizes
Parameters
TInt
aSize
|
The requested total size
|
TInt
aMinBufSize
|
The size that the allocated buffer can have
|
TInt
aMaxBufSize
|
|
Allocator()
Returns a handle to the allocator
BytesAvailable()
IMPORT_C
TInt
|
BytesAvailable
|
(
|
)
|
const
|
Returns the total bytes available in the available pools
BytesAvailable(TInt)
IMPORT_C
TInt
|
BytesAvailable
|
(
|
TInt
|
aSize
|
)
|
const
|
Returns the total bytes available in a pool with a given size.
CancelRequest(RCommsBufAsyncRequest &)
Cancel the issued request
FromHandle(TInt)
Constructs the
RCommsBuf
from the supplied handle
TInt aHandle
RShBuf
handle
IsNull()
TBool
|
IsNull
|
(
|
)
|
const [inline]
|
Check whether the pond is opened and is valid
LargestBufSize()
IMPORT_C
TInt
|
LargestBufSize
|
(
|
)
|
const
|
Larget buffer size available in the available pools
NextBufSize(TInt)
IMPORT_C
TInt
|
NextBufSize
|
(
|
TInt
|
aSize
|
)
|
const
|
Returns the buffer size that is greater than the given size.
Pond()
CSystemSharedBufPond &
|
Pond
|
(
|
)
|
const [private]
|
StartRequest(RCommsBufAsyncRequest &)
Store(TPondTransferBuf &)
Writes flattened pond structure to a descriptor for transfer to a commsbufs aware driver
Parameters
TPondTransferBuf
& aStore
|
Descriptor in to which the pond structure will be flattened
|
Member Data Documentation
MCommsBufPondIntf * iPondImpl
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.