diff -r 000000000000 -r 89d6a7a84779 Symbian3/SDK/Source/GUID-E189B0C0-AAB5-5472-996B-91043DE0B6D4.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-E189B0C0-AAB5-5472-996B-91043DE0B6D4.dita Thu Jan 21 18:18:20 2010 +0000 @@ -0,0 +1,41 @@ + + + + + +Package +Buffers OverviewAllows any value type (a T class) to be encapsulated as a descriptor, +for the purpose of inter-thread data transfer. +
Architectural relationships

The Client/Server API +expects data that is to be passed between threads to be encapsulated in a +descriptor. Package buffers provide a generic way for the thread providing +the data to do this. The thread receiving the data extracts the original data +from the package.

APIs with client/server architectures, such as telephony +and Messaging, define specialised package buffer types that encapsulate the +particular data types that they require to pass between threads.

+
Description

The API has two key concepts: package +buffer descriptor, and package pointer descriptor.

+
Package buffer descriptor

The package buffer descriptor +creates a new instance of the type to encapsulate and stores it within the +descriptor. The interface allows a reference to the encapsulated object to +be obtained, so that it can be accessed and modified.

The package buffer +descriptor interface is provided by TPckgBuf.

+
Package pointer descriptor

The package pointer +descriptor refers to an already existing object. It is otherwise used in a +similar way to the package buffer descriptor.

The package pointer descriptor +interface is provided by TPckgC for const objects, and TPckg for +non-const objects.

+
+ +Client/Server +Overview + +Using Descriptors + +
\ No newline at end of file