Original Symbian headers
Selected EUSER, Window Server, networking, graphics and device declarations
Loading...
Searching...
No Matches
RChunk Class Reference

A handle to a chunk. More...

#include <e32std.h>

Inheritance diagram for RChunk:
RHandleBase

Public Types

enum  TRestrictions { EPreventAdjust = 0x01 }
 Set of flags used by SetRestrictions(). More...
 
- Public Types inherited from RHandleBase
enum  TAttributes { EReadAccess =0x1 , EWriteAccess =0x2 , EDirectReadAccess =0x4 , EDirectWriteAccess =0x8 }
 Read/Write attributes for the handle. More...
 

Public Member Functions

TInt Open (const TFindChunk &aFind, TOwnerType aType=EOwnerProcess)
 Opens a handle to the global chunk found using a TFindChunk object.
 
IMPORT_C TInt CreateLocal (TInt aSize, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a local chunk.
 
IMPORT_C TInt CreateLocalCode (TInt aSize, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a user writable chunk that is marked by the kernel as containing code.
 
IMPORT_C TInt CreateGlobal (const TDesC &aName, TInt aSize, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a global chunk.
 
IMPORT_C TInt CreateDoubleEndedLocal (TInt aInitialBottom, TInt aInitialTop, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a local, double ended, chunk.
 
IMPORT_C TInt CreateDoubleEndedGlobal (const TDesC &aName, TInt aInitialBottom, TInt aInitialTop, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a global, double ended, chunk.
 
IMPORT_C TInt CreateDisconnectedLocal (TInt aInitialBottom, TInt aInitialTop, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a local, disconnected chunk.
 
IMPORT_C TInt CreateDisconnectedGlobal (const TDesC &aName, TInt aInitialBottom, TInt aInitialTop, TInt aMaxSize, TOwnerType aType=EOwnerProcess)
 Creates a global, disconnected, chunk.
 
IMPORT_C TInt Create (TChunkCreateInfo &aCreateInfo)
 Creates a chunk of the type specified by the parameter aCreateInfo.
 
IMPORT_C TInt SetRestrictions (TUint aFlags)
 Sets or removes restrictions on the ability of the chunk to change.
 
IMPORT_C TInt OpenGlobal (const TDesC &aName, TBool isReadOnly, TOwnerType aType=EOwnerProcess)
 Opens a handle to a specific named global chunk.
 
IMPORT_C TInt Open (RMessagePtr2 aMessage, TInt aParam, TBool isReadOnly, TOwnerType aType=EOwnerProcess)
 Opens a handle to a chunk using a handle number sent by a client to a server.
 
IMPORT_C TInt Open (TInt aArgumentIndex, TOwnerType aType=EOwnerProcess)
 Opens a handle to a chunk using a handle number passed as an environment data item to the child process during the creation of that child process.
 
IMPORT_C TInt Adjust (TInt aNewSize) const
 Changes the number of bytes committed to the chunk.
 
IMPORT_C TInt AdjustDoubleEnded (TInt aBottom, TInt aTop) const
 Changes the number of bytes and the position of this double ended chunk's committed region.
 
IMPORT_C TInt Commit (TInt anOffset, TInt aSize) const
 Commits memory to a disconnected chunk.
 
IMPORT_C TInt Allocate (TInt aSize) const
 Allocates and commits to a disconnected chunk.
 
IMPORT_C TInt Decommit (TInt anOffset, TInt aSize) const
 Decommits memory from a disconnected chunk.
 
IMPORT_C TInt Unlock (TInt aOffset, TInt aSize)
 Internal technology API.
 
IMPORT_C TInt Lock (TInt aOffset, TInt aSize)
 Internal technology API.
 
IMPORT_C TUint8 * Base () const
 Gets a pointer to the base of the chunk's reserved region.
 
IMPORT_C TInt Size () const
 Gets the current size of this chunk's committed region.
 
IMPORT_C TInt Bottom () const
 Gets the offset of the bottom of the double ended chunk's committed region from the base of the chunk's reserved region.
 
IMPORT_C TInt Top () const
 Gets the offset of the top of the double ended chunk's committed region from the base of the chunk's reserved region.
 
IMPORT_C TInt MaxSize () const
 Gets the maximum size of this chunk.
 
TBool IsReadable () const
 Tests whether the chunk is mapped into its process address space.
 
TBool IsWritable () const
 Tests whether the chunk mapped into its process address space and is writable.
 
IMPORT_C TBool IsPaged () const
 This can be used to determine whether the data for the chunk is demand paged or not.
 
- Public Member Functions inherited from RHandleBase
 RHandleBase ()
 Default constructor.
 
TInt Handle () const
 Retrieves the handle-number of the object associated with this handle.
 
void SetHandle (TInt aHandle)
 Sets the handle-number of this handle to the specified value.
 
TInt SetReturnedHandle (TInt aHandleOrError)
 Sets the handle-number of this handle to the specified value.
 
IMPORT_C void Close ()
 Closes the handle.
 
IMPORT_C TName Name () const
 Gets the name of the handle.
 
IMPORT_C TFullName FullName () const
 Gets the full name of the handle.
 
IMPORT_C void FullName (TDes &aName) const
 Gets the full name of the handle.
 
IMPORT_C void SetHandleNC (TInt aHandle)
 Sets the handle-number of this handle to the specified value, and marks it as not closable.
 
IMPORT_C TInt Duplicate (const RThread &aSrc, TOwnerType aType=EOwnerProcess)
 Creates a valid handle to the kernel object for which the specified thread already has a handle.
 
IMPORT_C void HandleInfo (THandleInfo *anInfo)
 Gets information about the handle.
 
IMPORT_C TUint Attributes () const
 
IMPORT_C TInt BTraceId () const
 Returns a unique object identifier for use with BTrace.
 
IMPORT_C void NotifyDestruction (TRequestStatus &aStatus)
 Internal technology API.
 

Friends

class UserHeap
 

Additional Inherited Members

- Static Public Member Functions inherited from RHandleBase
static void DoExtendedClose ()
 
- Protected Member Functions inherited from RHandleBase
 RHandleBase (TInt aHandle)
 Copy constructor.
 
IMPORT_C TInt Open (const TFindHandleBase &aHandle, TOwnerType aType)
 Opens a handle to a kernel side object found using a find-handle object.
 
TInt OpenByName (const TDesC &aName, TOwnerType aOwnerType, TInt aObjectType)
 Implementation for RXxxxx::Open/OpenGlocbal(const TDesC &aName,,TOwnerType aType) functions.
 
- Static Protected Member Functions inherited from RHandleBase
static TInt SetReturnedHandle (TInt aHandleOrError, RHandleBase &aHandle)
 
- Protected Attributes inherited from RHandleBase
TInt iHandle
 

Detailed Description

A handle to a chunk.

The chunk itself is a kernel side object.

API status
Published to all clients. Released API.

Definition at line 3563 of file e32std.h.

Member Enumeration Documentation

◆ TRestrictions

Set of flags used by SetRestrictions().

See also
RChunk::SetRestrictions
Enumerator
EPreventAdjust 

Prevent Adjust, Commit, Allocate and Decommit.

Definition at line 3571 of file e32std.h.

Member Function Documentation

◆ Adjust()

IMPORT_C TInt RChunk::Adjust ( TInt  aNewSize) const

Changes the number of bytes committed to the chunk.

This value is always rounded up to the next nearest processor page boundary.

Parameters
aNewSizeThe number of bytes to be committed to this chunk.

Panic condition: USER 102 if aNewSize is negative.

(generated from Symbian Developer Library)

◆ AdjustDoubleEnded()

IMPORT_C TInt RChunk::AdjustDoubleEnded ( TInt  aBottom,
TInt  aTop 
) const

Changes the number of bytes and the position of this double ended chunk's committed region.

The difference between aTop and aBottom gives the new size of the committed region; aBottom gives the offset of the bottom of the committed region from the base of the chunk's reserved region.

Both aBottom and aTop are rounded up to the next nearest processor page boundary.

The function fails if this chunk is not a double ended chunk; for a standard chunk, use the Adjust() function.

Note that if the initial and final committed regions intersect, the contents of the intersection are unchanged. Other parts of the committed region have undefined contents.

Note also that:

  1. the lowest valid address in a double ended chunk is the sum of the base of the chunk's reserved region plus the adjusted value of aBottom
  2. the highest valid address in a double ended chunk is the the sum of the base of the chunk's reserved region plus the adjusted value of aTop - 1.
Parameters
aBottomThe offset from the base of the chunk of the bottom of the committed region.
aTopThe offset from the base of the chunk of the top of the committed region.

Panic condition: USER 124 if aBottom is negative.

Panic condition: USER 125 if aTop is negative.

Panic condition: USER 126 if aBottom is greater than the supplied value of aTop.

(generated from Symbian Developer Library)

◆ Allocate()

IMPORT_C TInt RChunk::Allocate ( TInt  aSize) const

Allocates and commits to a disconnected chunk.

Parameters
aSizeThe size of the committed region.

Panic condition: USER 159 if aSize is negative.

(generated from Symbian Developer Library)

◆ Base()

IMPORT_C TUint8 * RChunk::Base ( ) const

Gets a pointer to the base of the chunk's reserved region.

(generated from Symbian Developer Library)

◆ Bottom()

IMPORT_C TInt RChunk::Bottom ( ) const

Gets the offset of the bottom of the double ended chunk's committed region from the base of the chunk's reserved region.

Note that the lowest valid address in a double ended chunk is the sum of the base of the chunk's reserved region plus the value of Bottom().

(generated from Symbian Developer Library)

◆ Commit()

IMPORT_C TInt RChunk::Commit ( TInt  anOffset,
TInt  aSize 
) const

Commits memory to a disconnected chunk.

TInt pageSize;
HAL::Get(HAL::EMemoryPageSize, pageSize)
static IMPORT_C TInt Get(TAttribute aAttribute, TInt &aValue)
Gets the value of the specified HAL attribute.
Parameters
anOffsetThe offset of the committed region from the base of the chunk's reserved region.
aSizeThe size of the committed region.

Panic condition: USER 157 if anOffset is negative.

Panic condition: USER 158 if aSize is negative.

(generated from Symbian Developer Library)

◆ Create()

IMPORT_C TInt RChunk::Create ( TChunkCreateInfo &  aCreateInfo)

Creates a chunk of the type specified by the parameter aCreateInfo.

Panic condition: USER 99 if the specified maximum size is negative.

Panic condition: USER 120 if any specified initial bottom is negative.

Panic condition: USER 121 if any specified initial top is negative.

Panic condition: USER 122 if any specified initial bottom is greater than the supplied value for the intial top.

Panic condition: USER 123 if any specified initial top is greater than the supplied value for the maximum size.

Panic condition: USER 214 if any of the specified attributes is invalid.

Panic condition: USER 215 if the version number of aCreateInfo is invalid.

(generated from Symbian Developer Library)

◆ CreateDisconnectedGlobal()

IMPORT_C TInt RChunk::CreateDisconnectedGlobal ( const TDesC &  aName,
TInt  aInitialBottom,
TInt  aInitialTop,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a global, disconnected, chunk.

The chunk is global; i.e. it is visible to all processes and is intended for access by other user processes.

A disconnected chunk has a committed region consisting of an arbitrary set of MMU pages within the reserved region, i.e. each page-sized address range within the reserved region which begins on a page boundary may be committed independently.

aMaxSize specifies the maximum size of the chunk.

The difference between aInitialTop and aInitialBottom gives the number of bytes to be committed, on creation of the chunk; aInitialBottom gives the offset of the bottom of the committed region from the base of the chunk's reserved region; aInitialTop gives the offset of the top of the committed region from the base of the chunk's reserved region.

Both aInitialBottom and aInitialTop are rounded up to the next nearest processor page boundary value, if they are not already on a processor page boundary value.

The descriptor aName contains the name to be assigned to this global chunk.

By default, ownership of this chunk handle is vested in the current process. Ownership of the chunk handle can be vested in the current thread by passing EOwnerThread as the third parameter to this function.

Parameters
aNameA reference to a descriptor containing the name to be assigned to this global chunk. The length of the descriptor must be no greater than that allowed for a TKName type.
aInitialBottomThe offset of the bottom of the new committed region from the base of the chunk's reserved region.
aInitialTopThe offset of the top of the new committed region from the base of the chunk's reserved region.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 120 if aInitialBottom is negative.

Panic condition: USER 121 if aInitialTop is negative.

Panic condition: USER 122 if aInitialBottom is greater than the supplied value of aInitialTop.

Panic condition: USER 123 if aInitialTop is greater than the supplied value of aMaxSize.

(generated from Symbian Developer Library)

◆ CreateDisconnectedLocal()

IMPORT_C TInt RChunk::CreateDisconnectedLocal ( TInt  aInitialBottom,
TInt  aInitialTop,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a local, disconnected chunk.

The chunk is local to the process creating it; i.e. it is private to the process creating it and is not intended for access by other user processes.

A disconnected chunk has a committed region consisting of an arbitrary set of MMU pages within the reserved region, i.e. each page-sized address range within the reserved region which begins on a page boundary may be committed independently.

aMaxSize specifies the maximum size of the chunk.

The difference between aInitialTop and aInitialBottom gives the number of bytes to be committed, on creation of the chunk; aInitialBottom gives the offset of the bottom of the committed region from the base of the chunk's reserved region; aInitialTop gives the offset of the top of the committed region from the base of the chunk's reserved region.

Both aInitialBottom and aInitialTop are rounded up to the next nearest processor page boundary value, if they are not already on a processor page boundary value.

By default, ownership of this chunk handle is vested in the current process. Ownership of the chunk handle can be vested in the current thread by passing EOwnerThread as the third parameter to this function.

Parameters
aInitialBottomThe offset of the bottom of the new committed region from the base of the chunk's reserved region.
aInitialTopThe offset of the top of the new committed region from the base of the chunk's reserved region.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 120 if aInitialBottom is negative.

Panic condition: USER 121 if aInitialTop is negative.

Panic condition: USER 122 if aInitialBottom is greater than the supplied value of aInitialTop.

Panic condition: USER 123 if aInitialTop is greater than the supplied value of aMaxSize.

(generated from Symbian Developer Library)

◆ CreateDoubleEndedGlobal()

IMPORT_C TInt RChunk::CreateDoubleEndedGlobal ( const TDesC &  aName,
TInt  aInitialBottom,
TInt  aInitialTop,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a global, double ended, chunk.

The chunk is global; i.e. it is visible to all processes and is intended for access by other user processes.

The committed region of a double ended chunk can be any contiguous subset of the reserved region.

aMaxSize specifies the maximum size of the chunk.

The difference between aInitialTop and aInitialBottom gives the number of bytes to be committed, on creation of the chunk; aInitialBottom gives the offset of the bottom of the committed region from the base of the chunk's reserved region; aInitialTop gives the offset of the top of the committed region from the base of the chunk's reserved region.

Both aInitialBottom and aInitialTop are rounded up to the next nearest processor page boundary value, if they are not already on a processor page boundary value.

The descriptor aName contains the name to be assigned to this global chunk.

By default, ownership of this chunk handle is vested in the current process. Ownership of the chunk handle can be vested in the current thread by passing EOwnerThread as the third parameter to this function.

Note that:

  1. the lowest valid address in a double ended chunk is the sum of the base of the chunk's reserved region plus the adjusted value of aInitialBottom
  2. the highest valid address in a double ended chunk is the the sum of the base of the chunk's reserved region plus the adjusted value of aInitialTop - 1.
Parameters
aNameA reference to a descriptor containing the name to be assigned to this global chunk. The length of the descriptor must be no greater than that allowed for a TKName type.
aInitialBottomThe offset of the bottom of the new committed region from the base of the chunk's reserved region.
aInitialTopThe offset of the top of the new committed region from the base of the chunk's reserved region.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 120 if aInitialBottom is negative.

Panic condition: USER 121 if aInitialTop is negative.

Panic condition: USER 122 if aInitialBottom is greater than the supplied value of aInitialTop.

Panic condition: USER 123 if aInitialTop is greater than the supplied value of aMaxSize.

Panic condition: USER 163 if aName is empty.

(generated from Symbian Developer Library)

◆ CreateDoubleEndedLocal()

IMPORT_C TInt RChunk::CreateDoubleEndedLocal ( TInt  aInitialBottom,
TInt  aInitialTop,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a local, double ended, chunk.

The chunk is local to the process creating it; i.e. it is private to the process creating it and is not intended for access by other user processes.

The committed region of a double ended chunk can be any contiguous subset of the reserved region.

aMaxSize specifies the maximum size of the chunk.

The difference between aInitialTop and aInitialBottom gives the number of bytes to be committed, on creation of the chunk; aInitialBottom gives the offset of the bottom of the committed region from the base of the chunk's reserved region; aInitialTop gives the offset of the top of the committed region from the base of the chunk's reserved region.

Both aInitialBottom and aInitialTop are rounded up to the next nearest processor page boundary value, if they are not already on a processor page boundary value.

By default, ownership of this chunk handle is vested in the current process. Ownership of the chunk handle can be vested in the current thread by passing EOwnerThread as the third parameter to this function.

Note that:

  1. the lowest valid address in a double ended chunk is the sum of the base of the chunk's reserved region plus the adjusted value of aInitialBottom
  2. the highest valid address in a double ended chunk is the the sum of the base of the chunk's reserved region plus the adjusted value of aInitialTop - 1.
Parameters
aInitialBottomThe offset of the bottom of the new committed region from the base of the chunk's reserved region.
aInitialTopThe offset of the top of the new committed region from the base of the chunk's reserved region.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 120 if aInitialBottom is negative.

Panic condition: USER 121 if aInitialTop is negative.

Panic condition: USER 122 if aInitialBottom is greater than the supplied value of aInitialTop.

Panic condition: USER 123 if aInitialTop is greater than the supplied value of aMaxSize.

(generated from Symbian Developer Library)

◆ CreateGlobal()

IMPORT_C TInt RChunk::CreateGlobal ( const TDesC &  aName,
TInt  aSize,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a global chunk.

The chunk is global; i.e. it is potentially visible to all processes and is intended for access by other user processes.

aMaxSize specifies the maximum size of the chunk and aSize specifies the number of bytes to be committed on creation of the chunk. Both values are rounded up to the next nearest processor page boundary value ,if they are not already on a processor page boundary value.

The committed region always starts at the bottom of the reserved region.

The descriptor aName contains the name to be assigned to this global chunk. If this name is empty, the chunk will be anonymous. Anonymous chunks cannot be accessed by other processes unless the creator explicitly passes them a handle to the chunk - this can be used to transfer large amounts of data between processes in a secure fashion.

By default, ownership of this chunk handle is vested in the current process. Ownership of the chunk handle can be vested in the current thread by passing EOwnerThread as the third parameter to this function.

Parameters
aNameA reference to a descriptor containing the name to be assigned to this global chunk. The length of the descriptor must be no greater than that allowed for a TKName type.
aSizeThe number of bytes committed to this chunk.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 100 if aSize is negative.

Panic condition: USER 101 if aSize is greater than or equal to the supplied value of aMaxSize.

(generated from Symbian Developer Library)

◆ CreateLocal()

IMPORT_C TInt RChunk::CreateLocal ( TInt  aSize,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a local chunk.

The chunk is local to the process creating it; i.e. it is private to the process creating it and is not intended for access by other user processes.

aMaxSize specifies the maximum size of the chunk and aSize specifies the number of bytes to be committed on creation of the chunk. Both values are rounded up to the next nearest processor page boundary value if they are not already on a processor page boundary.

The committed region always starts at the bottom of the reserved region.

By default, ownership of this chunk handle is vested in the current process. Ownership of the chunk handle can be vested in the current thread by passing EOwnerThread as the third parameter to this function.

Parameters
aSizeThe number of bytes committed to this chunk.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 100 if aSize is negative.

Panic condition: USER 101 if aSize is greater than or equal to the supplied value of aMaxSize.

(generated from Symbian Developer Library)

◆ CreateLocalCode()

IMPORT_C TInt RChunk::CreateLocalCode ( TInt  aSize,
TInt  aMaxSize,
TOwnerType  aType = EOwnerProcess 
)

Creates a user writable chunk that is marked by the kernel as containing code.

The chunk is local to the process creating it, i.e. it is private to the process creating it and is not intended for access by other user processes.

On systems using a Harvard cache, this type of chunk removes the need to flush the instruction cache (I-Cache) on a context switch. However, the instruction Translation Look-aside Buffer (ITLB) still needs to be flushed when switching to or from a process with one of these chunks in its address space. Systems with a dynamic branch predictor may also need to flush their branch target buffer when switching from one process using this type of chunk to another.

Parameters
aSizeThe number of bytes committed to this chunk.
aMaxSizeThe maximum size to which the reserved region of this chunk can grow.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

Panic condition: USER 99 if aMaxSize is negative.

Panic condition: USER 100 if aSize is negative.

Panic condition: USER 101 if aSize is greater than or equal to the supplied value of aMaxSize.

(generated from Symbian Developer Library)

◆ Decommit()

IMPORT_C TInt RChunk::Decommit ( TInt  anOffset,
TInt  aSize 
) const

Decommits memory from a disconnected chunk.

TInt pageSize;
HAL::Get(HAL::EMemoryPageSize, pageSize)
Parameters
anOffsetThe offset of the committed region from the base of the chunk's reserved region;
aSizeThe size of the committed region.

Panic condition: USER 160 if anOffset is negative.

Panic condition: USER 161 if aSize is negative.

(generated from Symbian Developer Library)

◆ IsPaged()

IMPORT_C TBool RChunk::IsPaged ( ) const

This can be used to determine whether the data for the chunk is demand paged or not.

(generated from Symbian Developer Library)

◆ IsReadable()

TBool RChunk::IsReadable ( ) const
inline

Tests whether the chunk is mapped into its process address space.

(generated from Symbian Developer Library)

◆ IsWritable()

TBool RChunk::IsWritable ( ) const
inline

Tests whether the chunk mapped into its process address space and is writable.

(generated from Symbian Developer Library)

◆ Lock()

IMPORT_C TInt RChunk::Lock ( TInt  aOffset,
TInt  aSize 
)

Internal technology API.

◆ MaxSize()

IMPORT_C TInt RChunk::MaxSize ( ) const

Gets the maximum size of this chunk.

This maximum size of this chunk is set when the chunk is created.

(generated from Symbian Developer Library)

◆ Open() [1/3]

TInt RChunk::Open ( const TFindChunk &  aFind,
TOwnerType  aType = EOwnerProcess 
)
inline

Opens a handle to the global chunk found using a TFindChunk object.

A TFindChunk object is used to find all chunks whose full names match a specified pattern.

By default, ownership of this chunk handle is vested in the current process, but can be vested in the current thread by passing EOwnerThread as the second parameter to this function.

Parameters
aFindA reference to the TFindChunk object used to find the chunk.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

(generated from Symbian Developer Library)

◆ Open() [2/3]

IMPORT_C TInt RChunk::Open ( RMessagePtr2  aMessage,
TInt  aParam,
TBool  isReadOnly,
TOwnerType  aType = EOwnerProcess 
)

Opens a handle to a chunk using a handle number sent by a client to a server.

This function is called by the server.

Parameters
aMessageThe message pointer.
aParamAn index specifying which of the four message arguments contains the handle number.
isReadOnlyThis is currently not implemented and setting it to ETrue will have no effect. (Intended implementation will be as below: Defines the type of access to the chunk: Specify ETrue if access is limited to read only, otherwise specify EFalse for full read/write access.)
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

(generated from Symbian Developer Library)

◆ Open() [3/3]

IMPORT_C TInt RChunk::Open ( TInt  aArgumentIndex,
TOwnerType  aType = EOwnerProcess 
)

Opens a handle to a chunk using a handle number passed as an environment data item to the child process during the creation of that child process.

Note that this function can only be called successfully once.

RProcess::SetParameter()

Parameters
aArgumentIndexAn index that identifies the slot in the process environment data that contains the handle number. This is a value relative to zero, i.e. 0 is the first item/slot. This can range from 0 to 15.
aTypeAn enumeration whose enumerators define the ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

(generated from Symbian Developer Library)

◆ OpenGlobal()

IMPORT_C TInt RChunk::OpenGlobal ( const TDesC &  aName,
TBool  isReadOnly,
TOwnerType  aType = EOwnerProcess 
)

Opens a handle to a specific named global chunk.

Full read/write access can be allowed or access can be limited to read only.

By default, ownership of this process handle is vested in the current process, but can be vested in the current thread by passing EOwnerThread as the second parameter to this function.

Parameters
aNameA reference to the descriptor containing the name of the chunk to be opened.
isReadOnlyThis is currently not implemented and setting it to ETrue will have no effect. (Intended implementation will be as below: Defines the type of access to the chunk: Specify ETrue if access is limited to read only, otherwise specify EFalse for full read/write access.)
aTypeAn enumeration whose enumerators define ownership of this chunk handle. If not explicitly specified, EOwnerProcess is taken as default.

(generated from Symbian Developer Library)

◆ SetRestrictions()

IMPORT_C TInt RChunk::SetRestrictions ( TUint  aFlags)

Sets or removes restrictions on the ability of the chunk to change.

For example, to adjust, commit etc

RChunk::TRestrictions()

Parameters
aFlagsOne of the values defined by TRestrictions.

(generated from Symbian Developer Library)

◆ Size()

IMPORT_C TInt RChunk::Size ( ) const

Gets the current size of this chunk's committed region.

(generated from Symbian Developer Library)

◆ Top()

IMPORT_C TInt RChunk::Top ( ) const

Gets the offset of the top of the double ended chunk's committed region from the base of the chunk's reserved region.

Note that the highest valid address in a double ended chunk is the the sum of the base of the chunk's reserved region plus the value of Top() - 1.

(generated from Symbian Developer Library)

◆ Unlock()

IMPORT_C TInt RChunk::Unlock ( TInt  aOffset,
TInt  aSize 
)

Internal technology API.

Friends And Related Symbol Documentation

◆ UserHeap

friend class UserHeap
friend

Definition at line 3606 of file e32std.h.


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