Symbian3/SDK/Source/GUID-772DFFA1-4BBC-516F-909D-47CB773760F5.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
child 13 48780e181b38
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-772DFFA1-4BBC-516F-909D-47CB773760F5" xml:lang="en"><title>Packages
as type-safe descriptors</title><shortdesc>Describes the package function to transfer data in correct structure. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>Descriptors are often used as the basis of data transfer within Symbian
platform. For example, inter-thread data transfer is specified in terms of
transferring data from a descriptor valid in the context of one thread, to
a descriptor valid in the context of another.</p>
<p>Data to be transferred almost always has a well defined structure and it
is important that the receiver of the data has some guarantee that the correct
structure has been passed. This is type safety.</p>
<p>A package <i>is</i> a descriptor and also acts as a wrapper around it.
It allows objects and data structures to be represented by descriptors in
a type safe way. Objects are either contained within a modifiable buffer descriptor
or are represented by pointer descriptors.</p>
<p>A package class is templated, the template parameter being the type of
the object represented. The use of a template provides the required type safety.</p>
</conbody><related-links>
<link>
<desc><xref href="GUID-79BAF19D-F003-5468-9C01-6E918B06C36D.dita">Descriptor concepts</xref></desc>
</link>
</related-links></concept>