Forum Nokia
Nokia Connecting People

Login Register

 

Home: Resources: Tools And SDKs: Open C/C++ Plug-ins for S60 3rd Edition: Features

Open C/C++ Plug-ins for S60 3rd Edition: Features

The Open C/C++ Plug-ins for S60 3rd Edition provides a plug-in for S60 3rd Edition SDKs, for Symbian OS, for C++, and others for S60 3rd Edition devices.

These plug-ins provide headers and libraries to enable development of Open C/C++ applications, application engines, and middleware on a PC and for the execution of Open C/C++ applications and middleware on S60 3rd Edition devices. The plug-in package also includes documentation and example applications.

What is the Open C/C++ SDK Plug-in for S60 3rd Edition SDKs, for Symbian OS, for C++?

The Open C/C++ SDK Plug-in for S60 3rd Edition SDKs, for Symbian OS, for C++ installs all the Open C/C++ components into a selected S60 3rd Edition SDK. Once installed, the headers and libraries required for applications development are available, along with the Open C/C++ runtime plug-ins for S60 3rd Edition devices, example applications, and documentation.

What are the Open C/C++ Runtime Plug-ins for S60 3rd Edition devices?

The Open C/C++ Runtime Plug-ins for S60 3rd Edition devices provide all the headers and libraries required to execute software written using the Open C/C++ APIs on S60 3rd Edition devices. The runtime plug-ins are delivered as Symbian Installation System (SIS) files. These SIS files can be installed independently on a device to enable on-device testing or included in application packages to provide a single installable package to mobile consumers.

What are the Open C libraries?

The Open C libraries provide a set of standard C APIs that have been selected to enable the easy porting of standard C applications to S60, as well as the development of application engines and middleware.

Library Description Source Function coverage (%)*
libc A set of Standard C libraries providing standard input/output routines, database routines, bit operators, string operators, character tests and character operators, DES encryption routines, storage allocation, time functions, and signal handling. FreeBSD 47
libpthread IEEE Std 1003.1c (POSIX) is the standard interface for implementing multiple threads of execution within a traditional user process. The library includes APIs for thread creation and destruction, an interface to the thread scheduler to establish thread-scheduling parameters, and mutex and condition variables to provide mechanisms for the programmer to synchronize access to shared process resources. FreeBSD 60
libm Arithmetical and mathematical functions that operate according to the Standard C library. FreeBSD 42
libdl This library provides APIs that load DLLs. FreeBSD 100
libz The zlib compression library provides in-memory compression and decompression functions, including integrity checks of the uncompressed data. zlib 100
libcrypt Cryptography libraries that contain functions for encrypting blocks of data, messages, and password hashing. OpenSSL 100
libcrypto This library provides services that are used by the OpenSSL implementations of SSL, TLS, and S/MIME, and have also been used to implement SSH, OpenPGP, and other cryptographic standards. OpenSSL 77
libglib This general-purpose utility library provides, for example, many useful data types, macros, type conversions, string utilities, file utilities, and a main-loop abstraction. It works on many UNIX-like platforms, Microsoft Windows, OS/2, and BeOS. GNOME 77
libssl The OpenSSL Secure Sockets Layer library implements SSL 2.0/3.0 and TLS 1.0 protocols. OpenSSL 86

*The percentage of functions of the full libraries included in Open C.

What are the Open C++ libraries?

The Open C++ libraries provide a set of standard C++ APIs for the development of application engines and middleware.

Library Description Source Function coverage (%)*
IOStreams IOStreams provides input/output functionality within the standard C++ libraries. IOStreams is the C++ counterpart of the standard C stdio.h library. IOStreams uses an abstraction called streams for handling input and output operations on sequences of characters. STLPort 100
STL

STL provides a set of well-structured generic C++ components that work together seamlessly. Of the library’s many components, the principal ones are the following:

  • Algorithm is used to define computational procedures.
  • Container is used to manage a set of memory locations.
  • Iterator provides a means for an algorithm to traverse through a container.
  • Function object encapsulates a function in an object for use by other components.
  • Adaptor can adapt a component to provide a different interface.
STLPort 100
Boost

The Boost libraries provide a portable, efficient C++ source library that works well with the standard C++ library. The Boost libraries supported are:

  • Smart pointers provide objects that store pointers to dynamically allocated (heap) objects. Six different smart pointers are provided: scoped_ptr, scoped_array, shared_ptr, shared_array, weak_ptr, and intrusive_ptr.
  • Containers are generic data structures capable of holding many different types of data. The containers supported by the library are the following: array, dynamic_bitset, graph, multi_array, multi_index, pointer container, property map, and variant.
  • Math provides special math-template functions.
Boost 100

*The percentage of functions of the full libraries included in Open C++.

What are the Real-Time Graphics and Audio (RGA) APIs?

RGA includes APIs that allow developers to create applications with rich audio and 2D graphics for selected S60 3rd Edition devices. These can be used to create any application that requires a rich UI, but they are particularly useful in the creation of games. The libraries consist of the following:

  • Graphics APIs provide features for drawing text, bitmap manipulation, screen drawing, and adjusting the display.
  • Multimedia APIs provide for audio playback, recording, and mixing of MIDI, and compress audio, such as MP3. In addition, APIs are provided to play video, access a device’s camera, and manipulate a device's lights.
  • Utility APIs enable applications to determine a device's keyboard layout and receive keyboard input, determine a device's features and status, set and modify Calendar alerts and to-do reminders, change the active-theme and idle-screen wallpaper, use programmable timers, access the device's vibrate function, and dynamically load code to memory at runtime.

The RGA APIs are available for use in the following S60 3rd Edition devices:

  • Nokia 6290 multimedia computer.
  • Nokia E70 messaging device.
  • Nokia N73 multimedia computer.
  • Nokia N76 multimedia computer.
  • Nokia N81 multimedia computer.
  • Nokia N82 multimedia computer.
  • Nokia N93 multimedia computer.
  • Nokia N93i multimedia computer.
  • Nokia N95 multimedia computer.
  • Nokia N95 8GB multimedia computer.

What example applications are included in the Open C/C++ SDK plug-in?

In total, 25 example applications are included in the Open C/C++ SDK plug-in: 12 Open C examples, 6 Open C++ examples, and 7 RGA examples. These examples provide a comprehensive introduction to the key Open C/C++ APIs, covering everything from handling global variables to recording and playing back audio.

What documentation is delivered in the Open C/C++ SDK plug-in?

The Open C/C++ SDK plug-in includes a Developer Guide and API reference for each set of APIs. The documentation is available as a stand-alone compiled HTML help file and a Carbide.c++ help plug-in.

Where can I get more information on the contents of the Open C/C++ Plug-ins package?

For more information, download the Open C/C++ Plug-ins for S60 3rd Edition Data Sheet »

Back to top

Learn how to
download applications

java symbian_os s60 maemo c++

Community highlights

Discussion thread of the week

S60 5th Ed UI Touch and Sensors

Champion of the month

Xiaotian Chen
Read more about
Xiaotian on the
Champions web site.

Newsletter sign up

Privacy policy   Archives

Press

Events

Forum Nokia feed

  • Latest devices
  • Latest documents
  • Latest tools
  • Latest blog entries

Terms & Conditions | Privacy policy | Site map | Developer feedback | © Nokia 2008


RDF Facets:


qdcZcoverageQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX
qdcZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ
qdcZtypeQUqfnTypeZE52esourceQ
qdcZtypeQUqfnTypeZWebpageQ
qdcZtypeQUqmarsZManagedE52esourceQ
qdcZtypeQUqwebZInformationE52esourceQ
qdcZtypeQUqwebZPageQ
qdcZtypeQUqrdfsZE52esourceQ
qfnZdistributionQUxhttpE3AE2FE2FforumE2EnokiaE2EcomE2FX
qfnZtypeQUqfnTypeZE52esourceQ
qfnZtypeQUqfnTypeZWebpageQ
qfnZtypeQUqmarsZManagedE52esourceQ
qfnZtypeQUqwebZInformationE52esourceQ
qfnZtypeQUqwebZPageQ
qfnZtypeQUqrdfsZE52esourceQ
qmarsZlanguageQUxhttpE3AE2FE2FswE2EnokiaE2EcomE2FlanguageE2D1E2FenX
qrdfZtypeQUqfnZE45E78cludedFromGeneralE4CistingsQ
qrdfZtypeQUqfnTypeZE52esourceQ
qrdfZtypeQUqfnTypeZWebpageQ
qrdfZtypeQUqmarsZManagedE52esourceQ
qrdfZtypeQUqwebZInformationE52esourceQ
qrdfZtypeQUqwebZPageQ
qrdfZtypeQUqrdfsZE52esourceQ