This document lists the example code available for each module and collection in the platform.
The following tables are grouped by module and collection. In each table, the left hand column gives a link to the overview for the example. The overviews describe the example's purpose, the APIs it demonstrates, how to build and run it, and they provide a link to download the example's source code.
In most cases, the name in the left hand column is the example's mmp filename. If the example has more than one mmp file, the name of its directory is used. The right hand column gives a summary of the main purpose of the example.
Data Server
Socket Server
Common App Services
Compression Libraries
Generic Open Libraries
Name | Description |
---|---|
Shows accessing the file system using P.I.P.S. |
|
Creates a simple P.I.P.S. DLL and EXE to demonstrate function lookup by name rather than by ordinal. |
|
Shows a P.I.P.S. 'hybrid' application that uses both C and native Symbian C++ APIs. |
|
Shows inter-process communication in P.I.P.S. |
|
Shows simple multi-threading and synchronisation in P.I.P.S. using |
|
Shows the P.I.P.S. Standard C maths library, |
|
Shows various signal use cases as supported in P.I.P.S. |
Open C
Name | Description |
---|---|
Shows file compression/decompression. Huffman , filtered data compression, run length encoding, compress a string given by user |
|
How to handle global variables within the library code. How to solve WSD (Writable Static Data) problem |
|
Send/receive messages using message queue, demonstrated using open C message queue library |
|
Demonstrates solution for Producer/ Consumer Problem using Open C. |
|
Demonstrates string utility using open C libraries |
|
how to redirect stdio to a file. libc library provides freopen API to redirect all standard IOs (namely, stderr, stdin, or stdout). |
Generic Services
Name | Description |
---|---|
Shows how to write a simple data recognizer. |
|
Shows how to schedule and run tasks using the Task Scheduler API. |
Low level Libraries and Frameworks
Name | Description |
---|---|
Shows how to store and restore objects using the clipboard API. |
|
Most basic resource file example, shows how to read a string resource and print it to the console. |
|
Shows how to load data from a resource file into an array. |
|
Shows how to open a single resource file and read a resource from it into a descriptor. |
|
Shows how to open and read from multiple resource files. |
|
Shows how to use a resource reader to read data of various types from a resource file into the data members of a class. |
|
Shows how to use EUser High Level library classes and APIs |
|
Shows how the signature of a resource file is checked before use. |
User Library
Name | Description |
---|---|
Shows the use of asynchronous and synchronous client/server APIs using a logical device driver (LDD) and a physical device driver (PDD). |
|
Shows the basic principles of asynchronous programming by issuing and waiting for completion of a single request. |
|
Shows how a wait loop can be used to identify and handle a completed request. |
|
Shows how the wait loop can deal with multiple asynchronous service providers. |
|
Shows how active objects and an active scheduler can be used to handle asynchronous events, using a timer. |
|
Shows how active objects and an active scheduler can be used to handle asynchronous events, using keyboard input. |
|
Shows how active objects and an active scheduler can be used to handle accept and print keyboard inputs to a console. |
|
Shows how active objects and an active scheduler can be used to handle asynchronous events and long-running services to maintain system responsiveness. |
|
Shows how to construct and use circular buffers holding different types of objects. |
|
Shows a simple client that has a single session with a server. |
|
More complex client/server example, where the server supports multiple subsessions within a session. |
|
Shows the use of the global condition variable IPC mechanism. |
|
Shows the use of the local condition variable IPC mechanism. |
|
Shows date and time handling. |
|
Shows how to handle different types of descriptors. |
|
Shows how to construct and use dynamic arrays. |
|
Shows how to use the flat and segmented buffer classes. |
|
Implements two polymorphic DLLs and shows how to load and use them. |
|
Shows how to use the range checking wrapper class for C++ arrays
( |
|
Shows how to use the hash table APIs. |
|
Shows how to use the lexical analyser, TLex. |
|
Shows how to use singly and doubly linked lists and the delta queue class. |
|
Shows locale-specific representation of currency values and symbols. |
|
Shows how to load a locale DLL and read settings from it. |
|
Shows use of the |
|
As the |
|
As the |
|
Shows the use of the |
|
Shows the use of the cleanup stack and its functions |
|
Shows the use of the cleanup stack and its functions |
|
Shows use of the |
|
Shows use of the |
|
Shows cleanup handling for compound classes. |
|
Shows cleanup handling for compound classes, and avoiding memory leaks. |
|
Shows the two phase construction technique. |
|
Shows how cleanup can be implemented for |
|
As |
|
Shows how to use the cleanup functions |
|
Shows the use of the message queue in interprocess communication. |
|
Shows the Publish and Subscribe IPC mechanism. |
|
Shows how to use the resizable buffer descriptor class RBuf. |
|
Shows how to use the policy server framework. |
|
Shows how to use the single character class, |
|
Shows the use of thread local storage (TLS) in a DLL, that is set and accessed from a separate executable. |
|
Shows the principle of synchronisation using the thread rendezvous technique. |
|
Shows the asynchronous timer class |
|
Shows the differences between a periodic and a heartbeat timer. |
|
Shows how to use semaphores for a multithreading application. |
Name | Description |
FindMe: LBS | How to get the latitude and longitude of a smart phone using LBS |
Multimedia APIs and Frameworks
Name | Description |
---|---|
Shows how to implement encoder and decoder plug-ins for the Image Converter Library. |
|
Shows how to convert between standard graphics formats to and from |
|
Shows how to use the Camera API to capture and control images. |
|
How to play, pause, rewind and fast forward a song |
|
How to play and stop Midi player |
|
How to play a tone and dual tone |
Multimedia Middleware Frameworks
Name | Description |
---|---|
Shows how to use the Multimedia Framework's client audio interfaces to play and record audio. |
|
Shows how to implement a codec plug-in for the Multimedia Framework to convert media data. |
|
Shows how to implement format encoder and decoder plug-ins for the Multimedia Framework. |
|
Shows how to implement sink and source plug-ins for the Multimedia Framework. |
Network Protocols
Name | Description |
---|---|
The engine for the TCP/IP echo client example. |
|
The user interface for the TCP/IP echo client example. |
Network Security
Persistent Storage
Name | Description |
---|---|
Shows how to create and use a database using DBMS. |
|
Shows how to use the SQL API to create and query an SQL database. |
|
How to search an article from the database |
|
How to use DBMS in Symbian os |
|
Shows how to use the central repository to store settings and request notification of changes. |
|
Shows how to persist objects using a direct file store and a root stream. |
|
Shows how to write a network of objects to a permanent file store then read them back in again. |
|
Shows how to create and use a permanent file store. |
|
How to read and write an employee class from or to a file store |
|
How to internalize & externalize user defined data type using stream |
|
Shows how to externalize objects to a single stream in a non-persistent store. |
|
Shows how to write a network of objects to more than one stream in a direct file store, and to defer the loading of an object from the store into memory. |
|
Shows how an object is externalized to a store embedded within a permanent file store. |
|
Shows how to stream a compound object to multiple streams using a store map. |
|
Shows streaming a simple class to and from a single stream. |
|
Shows streaming a compound class to and from a single stream |
PIM Application Services
Name | Description |
---|---|
Shows how to create and use a calendar file. |
|
Shows how to add new contact, find a contact, sort contact, move contact, and read contact field. |
PIM Application Support