TChunkCreateInfo Struct Reference

struct TChunkCreateInfo

This structure specifies the type and properties of the chunk to be created. It is passed as a parameter to the RChunk::Create() method.

Constructor & Destructor Documentation

TChunkCreateInfo()

IMPORT_C TChunkCreateInfo ( )

Default constructor.

This defaults the chunk to be created to be local, to have no attributes set and to use the default clear byte.

A local chunk is private to the process creating it and is not intended for access by other user processes.

Member Functions Documentation

SetCache(TInt)

IMPORT_C void SetCache ( TInt aMaxSize )

For use by file server only.

Parameters

TInt aMaxSize

SetClearByte(TUint8)

IMPORT_C void SetClearByte ( TUint8 aClearByte )

Sets the byte value that all memory committed to the chunk will be cleared to.

Parameters

TUint8 aClearByte

SetCode(TInt, TInt)

IMPORT_C void SetCode ( TInt aInitialSize,
TInt aMaxSize
)

Sets the chunk to be created to be user writable and to be marked by the kernel as containing code. This can only be set on local chunks.

RChunk::CreateLocalCode()

Parameters

TInt aInitialSize The number of bytes committed to this chunk.
TInt aMaxSize The maximum size to which the reserved region of this chunk can grow.

SetDisconnected(TInt, TInt, TInt)

IMPORT_C void SetDisconnected ( TInt aInitialBottom,
TInt aInitialTop,
TInt aMaxSize
)

Set the chunk to be created to have a committed region consisting of an arbitrary set of MMU pages within the reserved region.

RChunk::CreateDisconnectedLocal()

Parameters

TInt aInitialBottom The offset of the bottom of the new committed region from the base of the chunk's reserved region.
TInt aInitialTop The offset of the top of the new committed region from the base of the chunk's reserved region.
TInt aMaxSize The maximum size to which the reserved region of this chunk can grow.

SetDoubleEnded(TInt, TInt, TInt)

IMPORT_C void SetDoubleEnded ( TInt aInitialBottom,
TInt aInitialTop,
TInt aMaxSize
)

Sets the chunk to be created to have a commited region that that can be any contiguous subset of the reserved region.

RChunk::CreateDoubleEndedLocal()

Parameters

TInt aInitialBottom The offset of the bottom of the new committed region from the base of the chunk's reserved region.
TInt aInitialTop The offset of the top of the new committed region from the base of the chunk's reserved region.
TInt aMaxSize The maximum size to which the reserved region of this chunk can grow.

SetGlobal(const TDesC &)

IMPORT_C void SetGlobal ( const TDesC & aName )

Sets the chunk to be created to be global, i.e. it is potentially visible to all processes and is intended for access by other user processes.

Parameters

const TDesC & aName A reference to a descriptor containing the name to be assigned to the global chunk. The length of the descriptor must be no greater than that allowed for a TKName type.

SetNormal(TInt, TInt)

IMPORT_C void SetNormal ( TInt aInitialSize,
TInt aMaxSize
)

Sets the chunk to be created to have a committed region that always starts at the bottom of the reserved region.

RChunk::CreateLocal()

Parameters

TInt aInitialSize
TInt aMaxSize The maximum size to which the reserved region of this chunk can grow.

SetOwner(TOwnerType)

IMPORT_C void SetOwner ( TOwnerType aType )

Sets the owner of the chunk to be created.

Parameters

TOwnerType aType The owner of the chunk to be created.

SetPaging(const TChunkPagingAtt)

IMPORT_C void SetPaging ( const TChunkPagingAtt aPaging )

Sets the data paging attributes for the chunk to be created. Any previous calls to this method will be overridden for this TChunkCreateInfo object.

Parameters

const TChunkPagingAtt aPaging The data paging attributes of the chunk to be created.

SetReadOnly()

IMPORT_C void SetReadOnly ( )

Sets the global chunk to be created to be read only. Only the creating process will be able to write to it, not other processes.

Read-Only chunks are currently only available on the Flexible Memory Model.

Chunk must be global.

SetThreadHeap(TInt, TInt, const TDesC &)

void SetThreadHeap ( TInt aInitialSize,
TInt aMaxSize,
const TDesC & aName
)

Sets the chunk to be created to be a thread heap chunk. For internal use only.

Parameters

TInt aInitialSize The number of bytes committed to this chunk.
TInt aMaxSize The maximum size to which the reserved region of this chunk can grow.
const TDesC & aName The name to be given to the chunk to be created

Member Enumerations Documentation

Enum TChunkCreateVersions

Currently supported version numbers

Enumerators

EVersion0
ESupportedVersions

Enum TChunkPagingAtt

Attributes that specify whether the chunk to be created is data paged or not.

Enumerators

EUnspecified

The chunk will use the creating process's paging attributes.

EPaged

The chunk will be data paged.

EUnpaged

The chunk will not be data paged.

Member Data Documentation

TUint iAttributes

TUint iAttributes [protected]

Attributes to the chunk to be created should have. Should be set from one or more the values in TChunkCreate::TChunkCreateAtt .

TUint8 iClearByte

TUint8 iClearByte [protected]

The byte to clear all the memory committed to the chunk to.

TBool iGlobal

TBool iGlobal [protected]

Specify if chunk is global or not.

TInt iInitialBottom

TInt iInitialBottom [protected]

The offset of the bottom of the region to commit to the chunk on creation from the base of the chunk's reserved region. This is only used for double ended and disconnected chunks.

TInt iInitialTop

TInt iInitialTop [protected]

The offset of the top of the region to commit to the chunk on creation from the base of the chunk's reserved region. This is only used for double ended and disconnected chunks.

TInt iMaxSize

TInt iMaxSize [protected]

The maximum size in bytes of the chunk to be created.

const TDesC * iName

const TDesC * iName [protected]

A pointer to a descriptor containing the name to be assigned to global chunks. The length of the descriptor must be no greater than that allowed for a TKName type. Must be NULL for local chunks.

TOwnerType iOwnerType

TOwnerType iOwnerType [protected]

An enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

TUint8 iSpare1

TUint8 iSpare1 [protected]

TUint iSpare2

TUint iSpare2 [protected]

TUint iType

TUint iType [protected]

The type of the chunk to be created.

TUint iVersionNumber

TUint iVersionNumber [protected]

The version number of this TChunkCreateInfo .