// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of "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:
//
// Description:
// Symbian_OS.hrh
// Configuration options for Symbian OS
// This file is managed by the Master Codeline Forum
/** This include is for PREQ2621 */
#include "platform_paths.hrh"
// SYMBIAN_JAVA_NOT_INCLUDED
// For Sphinx and later versions, J2ME will no longer be included in the
// build.
// This #define supports PREQ1791
//
//
/**
@publishedPartner
@released
*/
#define SYMBIAN_JAVA_NOT_INCLUDED
/**
@publishedPartner
@released
SYMBIAN_HCI_API_V2
If SYMBIAN_HCI_API_V2 is defined then the HCI APIs provided in PREQ750
(Bluetooth HCI improvements) will be required for use by a version 2
Bluetooth Stack and a version 2 HCI. These APIs are neither binary nor
source compatible with the previous version 1 HCI APIs. Both the original
version 1 Bluetooth stack and HCI, and the new version 2 Bluetooth stack
and HCI will be built, but both rombuild and the emulator will be
configured to use the version 2 binaries. The version 2 HCI will support
all commands and events listed in Bluetooth v2.0 specification.
If SYMBIAN_HCI_API_V2 is not defined then only the version 1 Bluetooth
stack and HCI will be built and used by rombuild and the emulator.
The version 1 HCI supports most but NOT all commands and events listed
in Bluetooth v2.0 specification.
See BR1613 for more information.
*/
#define SYMBIAN_HCI_API_V2
/**
@publishedAll
@released
__WATCHER_API_V2__
If __WATCHER_API_V2__ is defined then the
watcher framework supports ECOM watcher plugins.
*/
#define __WATCHER_API_V2__
/**
@publishedAll
@released
__HIDE_WATCHER_API_V1__
Hides support APIs for loading non-ECOM watcher plugins. Non-ECOM watcher
plugins are still loaded. The associated define __REMOVE_WATCHER_API_V1__
removes the implementation of the support APIs.
Assumes that __WATCHER_API_V2__ has been defined.
*/
#define __HIDE_WATCHER_API_V1__
#define __REMOVE_WATCHER_API_V1__
/**
SYMBIAN_TIMEZONE_SUPPORT_V1
@publishedAll
@released
When SYMBIAN_TIMEZONE_SUPPORT_V1 is defined the App-services TzClient.dll
module (and accompanying import library) is made available for client
application use.
This #define supports PREQ663
*/
#define SYMBIAN_TIMEZONE_SUPPORT_V1
/**
@publishedAll
@released
SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT
If SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT is defined then
the Multimedia Framework (MMF) can support video playback on
a secondary display. The default screen will be the screen
number in the cone environment.
@see CVideoPlayerUtility
*/
#define SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT
/**
@publishedAll
@released
SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM
If SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM is defined, the Composite
File System allows more than one ROFS partition to be included in
the composite Z: drive.
This #define supports PREQ1085
*/
#define SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM
/**
@publishedPartner
@released
__SECURE_BIN__
When __SECURE_BIN__ is defined, executable files stored as
"data" in the XIP ROM are assumed to be in their data-caged
locations. The presence of this #define does not imply that
data-caging is enforced, and does not imply that binaries have
been relocated to sys\bin.
This #define supports PREQ537 "Platform security - file system layout".
*/
#define __SECURE_BIN__
/**
@publishedAll
@released
SYMBIAN_COREAPPS_API_V2
If SYMBIAN_COREAPPS_API_V2 is defined then new functionality is available within
the Core Apps sub-system (Contacts Model, Agenda Model and World Server) to
support a platform secured OS.
*/
#define SYMBIAN_COREAPPS_API_V2
/**
@publishedPartner
@released
SYMBIAN_APPARC_APPINFO_CACHE
If SYMBIAN_APPARC_APPINFO_CACHE is defined then apparc creates
a file of application information on the first boot, which is
used during subsequent boots for application information.
*/
#define SYMBIAN_APPARC_APPINFO_CACHE
/**
@publishedPartner
@released
SYMBIAN_NETWORKING_IPSEC_IKE_V2
If SYMBIAN_NETWORKING_IPSEC_IKE_V2 is defined, IPSEC will
be able to support Internet Key Exchange version 2 in
addition to IKE v1. This involves a change in the size of
the TPfkeyMsgBase class - see BR1736.1.
Actual support for IKE v2 will depend on the provision
of a suitable plugin to the Key Management Daemon.
This #define supports PREQ1223.
*/
#define SYMBIAN_NETWORKING_IPSEC_IKE_V2
/**
@publishedPartner
@released
SYMBIAN_UIKON_UNIFICATION
When SYMBIAN_UIKON_UNIFICATION is defined, the existing
CEikSrvAppUiBase class is replaced with a customisable class
provided by the System GUI.
This #define supports PREQ819 and PREQ826
*/
#define SYMBIAN_UIKON_UNIFICATION
/**
@publishedAll
@released
__SECURITY_PLATSEC_ARCH__
If this macro is defined, then platform security aware security services
APIs will be present. This includes architectural changes to several
components.
If this macro is not defined, the original version (since 8.0) of the
security services APIs will be present.
The following components are affected:
cryptotokens
certman
filetokens
*/
#define __SECURITY_PLATSEC_ARCH__
/**
SYMBIAN_ECAM_CHUNKAPI
@publishedAll
@released
Specifies that an extended API will be used in the multimedia
camera interface. This has a v2 observer which allows camera data
to be returned without buffer copy, and also allows clients to set
camera access priority
@see CCamera
@see MCameraObserver2
This #define supports PREQ799.
*/
#define SYMBIAN_ECAM_CHUNKAPI
/**
@publishedAll
@released
SYMBIAN_SECURE_ECOM
When SYMBIAN_SECURE_ECOM is not defined, ECOM plugins are discovered by
searching for DLLs in System\libs\plugins, and inferring the name of
the resource file from the UID3 of the DLL.
When SYMBIAN_SECURE_ECOM is defined, ECOM plugins will also be discovered
by searching for resource files in \Resource\Plugins, and inferring the
name of the DLL from the name of the resource file. When platform security
is fully enforced, only this new style of discovery will work.
*/
#define SYMBIAN_SECURE_ECOM
/**
@publishedAll
@released
SYMBIAN_INETPROTUTILS_RFC3986
Description:
If SYMBIAN_INETPROTUTILS_RFC3986 is defined, the Internet
Protocol Utility Library supports RFC 3986, which increases
the set of reserved characters.
@see EscapeUtils::IsExcludedChar
This #define implements BR2009.
*/
#define SYMBIAN_INETPROTUTILS_RFC3986
/**
@publishedPartner
@released
SYMBIAN_FONT_METRICS_V2
If this is defined, then classes which derive from COpenFont (usually
these are part of a font rasterizer implementation) must set the
protected member variables:
iFontAscentOfCapitals
iFontAscentIncAccents
iFontDescent
iFontLineGap
to appropriate values during the creation of a font.
If this macro is not defined then these member variables do not exist.
@see COpenFont
*/
#define SYMBIAN_FONT_METRICS_V2
/**
@publishedAll
@released
__OBEX_USER_DEFINED_HEADERS__
If __OBEX_USER_DEFINED_HEADERS__ is defined then the new API support for extended Headers will be available.
This new support includes USER DEFINED HEADERS and the COUNT header.
If this functionality is compiled out then the old API is available as before.
For more information on see documents shown below.
@see SGL.GT171.097 - Obex Header Extension how to
@see SGL.GT171.095 - Obex Extension Design Document
*/
#define __OBEX_USER_DEFINED_HEADERS__
/**
@publishedPartner
@released
SYMBIAN_CENTREP_NOC
If SYMBIAN_CENTREP_NOC is defined, the Central Repository
includes Notify-Only Client Optimization. This will cause
repositories to be unloaded after a timeout even if the
connection is still open.
This #define supports PREQ1228.
*/
#define SYMBIAN_CENTREP_NOC
/**
@publishedPartner
@released
@since 8.1
SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT
If this is defined, the MHCIEventObserver class must implement
the FlushCompleteEvent virtual function, which will be used by
the link manager to send Flush Complete events up to the stack.
If this macro is not defined, Flush Complete events will be discarded.
@see MHCIEventObserver
@see CHCIFacade
*/
#define SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT
/**
@publishedAll
@released
SYMBIAN_MULTIMEDIA_CODEC_API
If SYMBIAN_MULTIMEDIA_CODEC_API is defined then support is
available for PREQ1024 delivered Processing Unit or
OpenMAX based codecs and Multimedia hardware devices.
*/
#define SYMBIAN_MULTIMEDIA_CODEC_API
/**
@publishedAll
@released
SYMBIAN_MULTIMEDIA_SUBTITLE_SUPPORT
Provides support control the presentation of subtitle and closed captioning text
from video playback controllers in the Multimedia Framework as part of @see CVideoPlayerUtility2.
Note that this support is dependent on the following being present in ROM:
- GCE version of Graphics (migration component)
- GCE version of Videorender (optional component).
- The Subtitle plugin (optional component).
This #define supports PREQ1939
*/
#define SYMBIAN_MULTIMEDIA_SUBTITLE_SUPPORT
/**
@publishedAll
@released
__MESSAGING_API_V2__
If __MESSAGING_API_V2__ is defined then new functionality
is available within the Messaging sub-system to support a
platform secured OS, e.g. the Attachment API.
*/
#define __MESSAGING_API_V2__
#define __HIDE_MESSAGING_API_V1__
#define __REMOVE_MESSAGING_API_V1__
/**
@publishedPartner
@released
SYMBIAN_BOOKMARK_DATABASE
The Bookmark Database is an API used to provide system-wide
storage and management functionality for URI bookmarks.
If defined, this macro indicates that the Bookmark Database
API is present in the platform.
*/
#define SYMBIAN_BOOKMARK_DATABASE
/**
@publishedPartner
@released
SYMBIAN_NETWORKING_UMTSR5
If SYMBIAN_NETWORKING_UMTSR5 is defined support for the QoS
and IMS parameters introduced by Release 5 of the 3GPP
specification will be enabled. This involves a BC break in
TContextConfig - see BR1582.1 for details.
@see TContextConfig
This #define supports PREQ192 and PREQ635.
*/
#define SYMBIAN_NETWORKING_UMTSR5
/**
@publishedPartner
@released
SYMBIAN_NETWORKING_3GPPDEFAULTQOS
If SYMBIAN_NETWORKING_3GPPDEFAULTQOS is defined, support
for QoS modification on the default PDP context will be
enabled via the RSubconnection API.
This #define supports PREQ870.
*/
#define SYMBIAN_NETWORKING_3GPPDEFAULTQOS
/**
SYMBIAN_STAGED_SYSTEM_STARTUP
@publishedPartner
@released
When SYMBIAN_STAGED_SYSTEM_STARTUP is defined, the staged
start-up architecture has been introduced into the OS and
'Start-up State Aware' components can make use of the
architecture.
This #define supports PREQ 810.
*/
#define SYMBIAN_STAGED_SYSTEM_STARTUP
/**
@publishedAll
@released
__HIDE_IPC_V1__
If __HIDE_IPC_V1__ is defined then the deprecated insecure IPC APIs will be removed from various Symbian OS header files. Classes affected include CSession, CServer, RMessage and RMessageptr.
For more information see the document listed below.
@see SMG.SM0005.004 - Platform Security Development for Zephyr
@see CSession
@see CServer
@see RMessage
@see RMessagePtr
*/
#define __HIDE_IPC_V1__
/**
@publishedPartner
@released
SYMBIAN_NETWORKING_DHCPSERVER
If SYMBIAN_NETWORKING_DHCPSERVER is defined, Symbian OS includes a
simplified DHCPv4 server capable of dealing with single client.
This #define provides functionality to support PREQ749.
*/
#define SYMBIAN_NETWORKING_DHCPSERVER
/**
@publishedAll
@released
SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION
This macro removes the trivial encryption APIs that are exported by EUSER.
See BR1320 for more details
*/
#define SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION
/**
@internalTechnology
SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST
Description:
If SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST is defined, the WAP Push
watcher compares the origin of Push messages against URIs in a
"White list" and "Black list".
This #define supports PREQ1505
*/
#define SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST
/**
@publishedPartner
@released
SYMBIAN_FLEXIBLE_ALARM
When this macro is defined, Calendar Interim API, Alarm server and UIKON
Alert Server will support additional functionality.
- Extra data can be attached to calendar alarm and allow UI app
to retrieve the associated data.
- The Alarm server can send multiple expired alarms to Alert Server without
waiting for the previous alarm acknowledged first
- A Resource file can be used to configure alarm play intervals and durations,
or to disable alarm sound control.
This #define supports PREQ1118
*/
#define SYMBIAN_FLEXIBLE_ALARM
/**
@publishedPartner
@released
SYMBIAN_PKCS12
If SYMBIAN_PKCS12 is defined, the PKCS#12 Key Derivation
Algorithm is supplied.
This #define supports PREQ1054.
*/
#define SYMBIAN_PKCS12
/**
@publishedAll
@released
SYMBIAN_MMF_AUTOPAUSE_RESUME
This #define enables extra features in the MMF APIs for auto pause
and resume of audio streams.
*/
#define SYMBIAN_MMF_AUTOPAUSE_RESUME
/**
@publishedAll
@released
__SECURE_BACKUP__
If __SECURE_BACKUP__ is defined, the Secure Backup server replaces
the use of SCRemFs for backup and restore, changing the backup protocol.
Applications which have private data need to provide additional backup
registration files, and may use Publish & Subscribe to receive
notification of backup requests.
This #define supports PREQ716 - Provide support for secure backup and
restore for licensee PC Connectivity software
*/
#define __SECURE_BACKUP__
/**
@publishedAll
@released
SYMBIAN_NETWORKING_REMOVE_RGENERIC
If this macro is defined the deprecated APIs RGenericAgent,
RNif, RNifMonitor and Nifman are removed. All of these APIs,
exported by NIFMAN, have been deprecated and replaced by
the RConnection API exported by ESOCK.
@see Break request BR1070
*/
#define SYMBIAN_NETWORKING_REMOVE_RGENERIC
/**
@publishedPartner
@released 9.0
SYMBIAN_NETWORKING_RSUBCONNECTION
If SYMBIAN_NETWORKING_RSUBCONNECTION is defined, the RQosChannel API is
removed, and the RSubConnection API exported by ESOCK must be used instead.
This #define supports PREQ 26.
*/
#define SYMBIAN_NETWORKING_RSUBCONNECTION
/**
@publishedAll
@released
SYMBIAN_HIDE_COREAPPS_API_V1
If SYMBIAN_HIDE_COREAPPS_API_V1 is defined then the insecure CoreApps APIs
will be removed from various Symbian OS header files. Components affected are
Contacts Model, Agenda Model and World Server.
The related define SYMBIAN_REMOVE_COREAPPS_API_V1 removes the underlying implementations,
causing a binary compatibility break to match the source compatibility break.
*/
#define SYMBIAN_HIDE_COREAPPS_API_V1
#define SYMBIAN_REMOVE_COREAPPS_API_V1
/**
@publishedAll
@released
__UI_FRAMEWORKS_V2__
If __UI_FRAMEWORKS_V2__ is defined then PlatSec aware UI Frameworks API's will be available.
The following frameworks will be affected:
Applications
File Recognizers
Data Recognizers
Notifiers
Control Panel Plugins
Feps
App-initialization (CEikLibrary)
Converters
Error-Resolving
*/
#define __UI_FRAMEWORKS_V2__
#define SYMBIAN_HIDE_UI_FRAMEWORKS_V1
#define SYMBIAN_REMOVE_UI_FRAMEWORKS_V1
/**
@internalAll
__BC_FUTURE_PROOFING__
Support for the implementation of PREQ743 "Introduction of interface
robustness patterns to support future binary compatibility".
*/
#define __BC_FUTURE_PROOFING__
/**
@publishedPartner
@released
SYMBIAN_TELEPHONY_USAT5
If SYMBIAN_TELEPHONY_USAT5 is defined then support for 3GPP
Release 5 (U)SAT will be enabled.
@see RSat::TCallControlV5
This #define supports PREQ1234.
*/
#define SYMBIAN_TELEPHONY_USAT5
/**
SYMBIAN_GENERIC_SYSTEM_STARTUP
@publishedPartner
@released
This #define enables the generic start-up architecture in
which the System Starter process is responsible for the
controlled startup of the system.
The #define supports PREQ808 and PREQ809.
*/
#define SYMBIAN_GENERIC_SYSTEM_STARTUP
/**
@publishedAll
@released
SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE
If this macro is defined, then the Bluetooth stack reconfigures to take
advantage of security mechanisms in Publish and Subscribe. Any other
components requiring reconfiguration to make use of Publish and Subscribe
can also use this macro.
*/
#define SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE
/**
@publishedAll
@released
SYMBIAN_SECURITY_CAF_RFILE_HANDLE
If SYMBIAN_SECURITY_CAF_RFILE_HANDLE is defined then it enables the Content Access
Framework to read from files passed to it as an open RFile handles instead of CAF
opening the file itself. This allows files stored in a data caged directory to be
read by CAF.
*/
#define SYMBIAN_SECURITY_CAF_RFILE_HANDLE
/**
@publishedAll
@released
__JAVACUSTOMINSTALL__
If __JAVACUSTOMINSTALL__ is defined then an additional UI callback is made after MIDlet
installation has succeeded or failed. This callback is intended for information only and the
information passed can be licensee customised. The intention would be that the device user
can use this information to diagnose install problems in conjunction with network operators.
If this #define is not present then the callback is not present and is not called.
For more information on see documents shown below.
@see SGL.GT0188.253 CDMA Java MIDlet Installer Component Design
*/
#define __JAVACUSTOMINSTALL__
/**
@publishedAll
@released
SYMBIAN_MDF_API_V2
This macro selects the Symbian OS 9.x phase of development in
the Media Device Framework API, including changes to enable
MDF Video Decoder Hardware devices to support applications,
streaming and demux.
@see CMMFVideoPlayHwDevice
*/
#define SYMBIAN_MDF_API_V2
/**
@publishedPartner
@released
SYMBIAN_SMS_REL6_SUPPORT
SMS Release 6 support is defined in the 3GPP specifications
(3GPP TS 23.040 V6.5.0 and 3GPP TS 23.038 V6.1.0).
If defined, this macro indicates that Symbian OS SMS APIs
shall support Release 6 functionality.
*/
#define SYMBIAN_SMS_REL6_SUPPORT
/**
@publishedPartner
@released
SYMBIAN_SWI_POST_INSTALL_REVOCATION
When SYMBIAN_SWI_POST_INSTALL_REVOCATION is defined,
support for the SWI post install revocation service is enabled.
This #define supports PREQ919
*/
#define SYMBIAN_SWI_POST_INSTALL_REVOCATION
/**
@publishedPartner
@released
SYMBIAN_TELEPHONY_IMS
If SYMBIAN_TELEPHONY_IMS is defined then IMS related APIs are included
in Telephony components.
This #define supports PREQ61.
*/
#define SYMBIAN_TELEPHONY_IMS
/**
@publishedPartner
@released
SYMBIAN_IGNORE_BIN_TARGETPATH
When SYMBIAN_IGNORE_BIN_TARGETPATH is defined the TARGETPATH keyword in MMP files is ignored for executables.
Executables for the emulator instead get built to the default location.
e.g. \epoc32\release\winscw\udeb
*/
#define SYMBIAN_IGNORE_BIN_TARGETPATH
/**
@publishedAll
@released
SYMBIAN_COMMS_REPOSITORY
Comms data is now stored in the Central Repository rather than the DBMS server.
A new module, CommsDat.dll, replaces Commdb.dll as the interface for comms data stored on a device.
CommsDat has a different API to Commdb, but provides equivalent functionality.
There is no longer an SQL API for access to Comms Data.
Commdb tools have been migrated for use with CommsDat
Commdb is deprecated and should not be used, though it remains as a temporary BC shim on top of CommsDat.
*/
#define SYMBIAN_COMMS_REPOSITORY
/**
@publishedAll
@released
SYMBIAN_VARIABLE_BITRATE_CODEC
If SYMBIAN_VARIABLE_BITRATE_CODEC is defined then
CMMFSwCodecWrapper based audio hardware devices in the
Multimedia Framework (MMF) can support variable bitrate codecs.
@see CMMFSwCodecWrapper
*/
#define SYMBIAN_VARIABLE_BITRATE_CODEC
/**
@publishedAll
@released
__SECURE_TELEPHONY__
If __SECURE_TELEPHONY__ is defined, all Platform Security functionality
within the Telephony subsystem will be enabled.
If __SECURE_TELEPHONY__ is not defined, no Platform Security functionality
within the Telephony subsystem is enabled.
*/
#define __SECURE_TELEPHONY__
/**
@publishedPartner
@released
SYMBIAN_CAF_V2
The SYMBIAN_CAF_V2 flag indicates the CAF API v2 is present.
CAF v2 supports files containing multiple content objects, which requires
a change of API for CAF agents: agents written for CAF v1 will not compile
against CAF v2. See BR.1219.2 for migration information.
This #define supports PREQ780.
*/
#define SYMBIAN_CAF_V2
/**
SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION
@publishedPartner
@released
This macro enables a consolidation phase in the ROM building
process to generate additional metadata for each ROM drive.
The metadata describes the content and structure of the ROM
conveniently filtered for any component that requires it.
Components supply metadata with the "spidata" BUILDROM keyword.
This macro supports PREQ806 and other requirements that
eliminate run-time scanning of ROM content.
*/
#define SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION
/**
@publishedPartner
@released
SYMBIAN_BLUETOOTH_ESCO_ENABLED
Enable support for Bluetooth eSCO synchronous links.
Defining this macro extends the interface to CHCIBase to support
the Synchronous connection commands added in Bluetooth 1.2.
*/
#define SYMBIAN_BLUETOOTH_ESCO_ENABLED
/**
@publishedPartner
@released
SYMBIAN_SECURE_MIDLET_INSTALL
If SYMBIAN_SECURE_MIDLET_INSTALL is defined then the Java MIDlet
Installer supports installation under Platform Security policies,
using the interface published by security\JavaMIDletInstaller.
If SYMBIAN_SECURE_MIDLET_INSTALL is not defined then Java MIDlet
installation is achieved through the security\appinst interfaces.
*/
#define SYMBIAN_SECURE_MIDLET_INSTALL
/**
@publishedAll
@released
SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2
If SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2 is defined then
the following additional features will be available in CONE.
1) Functions to set and get the background of a control.
2) Functions to add components to a compound control in a simpler way.
3) Hooks for the support of layout managers.
4) A component that will provide fonts and cache them for easier use
of these fonts by controls.
@see CCoeControl
*/
#define SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2
/**
@publishedAll
@released
SYMBIAN_CNTMODEL_V2
If SYMBIAN_CNTMODEL_V2 is defined, clients of the
Contacts Model can exploit the efficiency improvements
introduced by PREQ811, e.g. efficient use of transactions.
This #define supports PREQ811
*/
#define SYMBIAN_CNTMODEL_V2
/**
@publishedAll
@released
SYMBIAN_COREAPPS_PLUGIN_API_V2
If SYMBIAN_COREAPPS_PLUGIN_API_V2 is defined then Ecom solely is used as loading
mechanism.The legacy plugin loading mechanism is used otherwise.
*/
#define SYMBIAN_COREAPPS_PLUGIN_API_V2
/**
@internalAll
DO_NOT_USE_THIS_MACRO
If DO_NOT_USE_THIS_MACRO is defined, assume the Cedar platform.
If DO_NOT_USE_THIS_MACRO is not defined, assume the Beech platform.
This macro was originally introduced as a stopgap measure, to
identify differences between Symbian OS v7.0s and Symbian OS v8.0b
which were not specifically to do with the change from Kernel
Architecture 1 to Kernel Architecture 2.
This macro will be deprecated when a suitable alternative is provided.
*/
#ifndef DO_NOT_USE_THIS_MACRO
#define DO_NOT_USE_THIS_MACRO
#endif
/**
@publishedPartner
@released
SYMBIAN_C32ROOT_API_V2
Strengthens the C32Root API and extends it to include
configuration of queue length for bindings.
This #define supports PREQ318.
*/
#define SYMBIAN_C32ROOT_API_V2
/**
@publishedAll
@released
__SECURE_API__
Hides unsecure APIs. Many of these have been replaced by Secure variants
but some are no longer available in a Secure platform.
e.g.
@see User::RenameThread
@see User::CommandLine
*/
#define __SECURE_API__
#define SYMBIAN_REMOVE_INSECURE_API
/**
@publishedAll
@released
__CNF_FORMAT_V2__
If __CNF_FORMAT_V2__ is defined, assume that Epoccnf.pl generates
files in version 2 of the CNF format, and that both versions 1
and 2 of this file format can be read by Conarc.
If __CNF_FORMAT_V2__ is not defined, assume that Epoccnf.pl
generates files in version 1 of the CNF format, and that only
version 1 of this file format can be read by Conarc.
*/
#define __CNF_FORMAT_V2__
/**
@publishedPartner
@released
SYMBIAN_SUPPORT_LINKED_FONTS
If SYMBIAN_SUPPORT_LINKED_FONTS is defined then APIs are provided
to create 'linked' font instances which combine glyph sets from
multiple existing font glyph sets.
@see CLinkedTypefaceElement
@see CLinkedTypefaceSpecification
This #define supports PREQ1431.
*/
#define SYMBIAN_SUPPORT_LINKED_FONTS
/**
@publishedPartner
@released
SYMBIAN_SECURE_DBMS
When SYMBIAN_SECURE_DBMS is defined, support for secure
shared databases is enabled within DBMS.
When not defined, all secure-shared-database-specific APIs
take the form of dummy implementations which return KErrNone.
*/
#define SYMBIAN_SECURE_DBMS
/**
@publishedAll
@released
SYMBIAN_ASSUME_SECURE_DATA
When this macro is defined, all data files are assumed to be in their secure
locations, and all code which provided backward compatibility for the
insecure locations is removed. For example, ICL extended resource files
will not be loaded from System\Libs\Plugins, only from \Resource\ICL.
This macro only makes sense if __SECURE_DATA__ is defined.
*/
#define SYMBIAN_ASSUME_SECURE_DATA
/**
@publishedAll
@deprecated
@since 8.0
__KEYSTORE_API_V2__
*/
#define __KEYSTORE_API_V2__
/**
@publishedAll
@released
__SECURE_DATA__
When __SECURE_DATA__ is defined, public read-only files are
assumed to be in their data-caged locations. The presence of
this #define does not imply that data-caging is enforced, and
does not imply that binaries have been relocated to sys\bin.
This #define supports PREQ537 "Platform security - file system layout".
*/
#define __SECURE_DATA__
/**
@publishedAll
@released
SYMBIAN_NETWORKING_PLATSEC
If SYMBIAN_NETWORKING_PLATSEC is defined, additional platform security
related functionality in enabled in the Comms-Infras and Networking
subsystems (e.g. API policing).
*/
#define SYMBIAN_NETWORKING_PLATSEC
/**
@publishedAll
@released
__CONDITIONS_SCHEDULES_VALID__
If __CONDITIONS_SCHEDULES_VALID__ is defined then the Task Scheduler component
supports creating persistent schedules based on a set of conditions and a
timeout. The schedule is run when either all the conditions are met or the
timeout is reached.
This functionality is part of PREQ694 - PREQ 694 - Automatic sending of SMS on
network reconnection.
*/
#define __CONDITIONS_SCHEDULES_VALID__
/**
@internalComponent
__LEAVE_EQUALS_THROW__
If __LEAVE_EQUALS_THROW__ is defined, User::Leave() and TRAP() are
implemented in terms of C++ exceptions where the compiler supports this.
If __LEAVE_EQUALS_THROW__ is not defined, the legacy Symbian exception
mechanism is used instead.
Support for C++ exceptions by the compiler is indicated by the
internal macro __SUPPORT_CPP_EXCEPTIONS__ supplied by the tools.
Where this macro is not present, __LEAVE_EQUALS_THROW__ is automatically
undefined.
This macro supports PREQ519 "Implement User::Leave() in terms of throw()".
*/
#define __LEAVE_EQUALS_THROW__
/**
@publishedAll
@released
__BLUETOOTH_API_V2__
If __BLUETOOTH_API_V2__ is defined assume that version 2 of the bluetooth
subsystem will be built. This is binary compatible with version 1 for all
published-all APIs but is not source compatible. Users of classes defined
in BTDevice.h and BTManClient.h may need to make source changes.
The BTRegistry.dll is removed, users should link instead against BTManClient.lib.
The APIs provided by that DLL were classified as published-partner.
@see CBTDevice
@see SGL.GT172.103 - Bluetooth Compatibility Specification
If __BLUETOOTH_API_V2__ is not defined then version 1 of the bluetooth subsystem
will be built.
*/
#define __BLUETOOTH_API_V2__
/**
@publishedAll
@released
__BLUETOOTH_HCI_ALLOWS_AFH__
If __BLUETOOTH_HCI_ALLOWS_AFH__ is defined the HCI interface will require the Adaptive Frequency Hopping CHCIBase pure virtual functions to be implemented in any derived class in Licensee produced host controller interface (HCI) code.
If this is not defined no AFH commands may be sent to the host controller, and no AFH events will be received from the host controller.
The APIs provided by the HCI DLL were classified as published-partner.
@see CHCIBase
@see MHCIEventObserver
*/
#define __BLUETOOTH_HCI_ALLOWS_AFH__
/**
@publishedAll
@released
EKA2
If EKA2 is defined, assume Kernel Architecture 2.
If EKA2 is not defined, assume Kernel Architecture 1
Kernel Architecture 2 is a defining property of the Cedar platform.
Kernel Architecture 1 is a defining property of the Beech platform.
*/
#ifndef EKA2
#define EKA2
#endif
/**
@publishedPartner
@released
SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1
When SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1 is defined a new EColor16MA
display mode is available, having an alpha channel. The alpha support
is tailored to the needs of wserv server-side, although some alpha
support will also be available to client applications.
This #define supports PREQ915.
*/
#define SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1
/**
@publishedPartner
@released
__SECURE_SOFTWARE_INSTALL__
When __SECURE_SOFTWARE_INSTALL__ is defined, the Software
Install APIs are replaced with versions appropriate to
the Secure Platform.
This #define supports PREQ56 "Software install enhancements"
*/
#define __SECURE_SOFTWARE_INSTALL__
/**
@publishedPartner
@released
SYMBIAN_ESOCK_V3
If SYMBIAN_ESOCK_V3 is defined, the socket server allows protocol
families to run in individual threads to protect one protocol family
from the behaviour of another. The allocation of protocol families to
threads is determined by a naming convention on the ESK files.
This #define supports PREQ318.
*/
#define SYMBIAN_ESOCK_V3
/**
@publishedAll
@released
SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES
If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is defined, threads at
priority SystemServer/More (i.e. process priorities EPriorityFileServer,
EPriorityWindowServer or EPrioritySupervisor with relative thread priority
EPriorityMore) are mapped to absolute priority 23, equal to the highest
priority available to normal applications. This lowers the Window Server
and File Server priorities so application threads can timeslice with them,
benefitting audio and other pseudo real-time applications.
If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is not defined, these system server
priorities remain at 24, preempting all normal user application threads.
This #define supports PREQ955, and BR1821.
*/
#define SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES
/**
@publishedAll
@deprecated
@since 8.0
SYMBIAN_CRYPTO
*/
#define SYMBIAN_CRYPTO
/**
@internalAll
SYMBIAN_J2ME_USE_CALENDAR
Internal macro - do not use outside Symbian code.
*/
#define SYMBIAN_J2ME_USE_CALENDAR
/**
@publishedPartner
@released
SYMBIAN_CENREPNOTIFIERHANDLER
If SYMBIAN_CENREPNOTIFIERHANDLER is defined, the Central
Repository notifier handler is present.
@see CCenRepNotifyHandler
@see MCenRepNotifyHandlerCallback
This #define supports PREQ1802.
*/
#define SYMBIAN_CENREPNOTIFIERHANDLER
/**
@publishedAll
@released
SYMBIAN_BAFL_SYSUTIL
If SYMBIAN_BAFL_SYSUTIL is defined, the bafl sysutil.dll is present,
providing APIs for obtaining system version information and
APIs for monitoring free disk space.
@see SysUtil::GetSWVersion
@see SysUtil::DiskSpaceBelowCriticalLevelL
This #define supports PREQ1802.
*/
#define SYMBIAN_BAFL_SYSUTIL
/**
@publishedPartner
@released
SYMBIAN_BAFL_ACTIVITYMGR
If SYMBIAN_BAFL_ACTIVITYMGR is defined, the bafl activitymgr.dll is
presentand provides an API that allows the client to take action at the
start and/or end of a period of user inactivity.
@see CUserActivityManager::Start
This #define supports PREQ1802.
*/
#define SYMBIAN_BAFL_ACTIVITYMGR
/**
@publishedPartner
@released
SYMBIAN_CLIENTPROV_V2
If SYMBIAN_CLIENTPROV_V2 is defined then the client provisioning
documents will be pushed to Inbox by default, and a new API is
added to submit the documents from Inbox back to CPAgent.
@see RCpMsvDocInputSession
This is a source and binary compatibility break: see BR2092.
This #define supports PREQ1664
*/
#define SYMBIAN_CLIENTPROV_V2
/**
@publishedPartner
@released
SYMBIAN_CRYPTOSPI
The SYMBIAN_CRYPTOSPI flag indicates that the Crypto SPI is present.
Crypto SPI (Service Provider Interface) supports licensee-pluggable
cryptographic algorithms (e.g. for enabling hardware acceleration),
and also allows for future extensibility of the cryptography
interfaces (e.g. for supporting future hashes and ciphers and
to support non-extractable private keys).
This #define supports PREQ57.
*/
#define SYMBIAN_CRYPTOSPI
/**
@publishedPartner
@released
SYMBIAN_C32_SERCOMMS_V2
Description:
If SYMBIAN_C32_SERCOMMS_V2 is defined, the Comms Server allows grouped CSYs
to get loaded into individual threads in order to avoid CSY blocking.
The allocation of CSYs to threads is determined by naming convention from
the configurator/INI file.
This #define supports PREQ890
*/
#define SYMBIAN_C32_SERCOMMS_V2
/**
@publishedPartner
@released
SYMBIAN_DEVMAN_BEARER_CONFIGURABLE
If SYMBIAN_DEVMAN_BEARER_CONFIGURABLE is defined then the
device management support for network bearers can configured
using the resource file 'dmnapddf.rss'
This #define supports CR1011
*/
#define SYMBIAN_DEVMAN_BEARER_CONFIGURABLE
/**
@publishedPartner
@released
SYMBIAN_NETWORKING_DHCP_MSG_HEADERS
If SYMBIAN_NETWORKING_DHCP_MSG_HEADERS is defined, the
Symbian OS DHCPv4 daemon supports retrieval of
DHCP message header fields and also 'Parameter Request List'
in the DHCP request message to the remote DHCP server is
configurable.
This #define supports PREQ1647 and PREQ1648
*/
#define SYMBIAN_NETWORKING_DHCP_MSG_HEADERS
/**
@publishedAll
@released
SYMBIAN_DRM_3RD_PARTY_PLAYBACK
If SYMBIAN_DRM_3RD_PARTY_PLAYBACK is defined, the Multimedia Framework
supports the playback of DRM-protected content by processes which do not
have the DRM capability.
@see RMMFController
This #define supports CR1058.
*/
#define SYMBIAN_DRM_3RD_PARTY_PLAYBACK
/**
@publishedAll
@released
SYMBIAN_USE_MMF_RUF_RECOGNIZER
If SYMBIAN_USE_MMF_RUF_RECOGNIZER is defined, the MMF recognizer is able to
recognize formats such as MPEG4, MPEG2, AAC and Divx.
*/
#define SYMBIAN_USE_MMF_RUF_RECOGNIZER
/**
@publishedPartner
@released
SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS
If SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS is defined, the Symbian JPEG
codec implements the PREQ1630 ICL API extensions.
@see CImageDecoder::SetClippingRectL
@see CImageDecoder::GetDestinationSize
@see CImageDecoder::PrepareL
@see CImageDecoder::OperationL
@see CImageDecoder::ScalerL
@see CImageDecoder::BlockStreamerL
@see CImageEncoder::PrepareL
@see CImageEncoder::OperationL
@see CImageEncoder::BlockStreamerL
This #define supports PREQ1630.
*/
#define SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS
/**
@publishedPartner
@released
SYMBIAN_LFFS_SIBLEY_NORFLASH
If SYMBIAN_LFFS_SIBLEY_NORFLASH is defined support for LFFS on
Intel Sibley NOR flash is enabled.
This #define supports PREQ912 and involves a BC break in the
parameter list for DMediaDriverFlash::Caps() - see BR1680 for details.
*/
#define SYMBIAN_LFFS_SIBLEY_NORFLASH
/**
@publishedPartner
@released
SYMBIAN_LOCATION_PRIVACY_V2
If SYMBIAN_LOCATION_PRIVACY_V2 is defined, the Symbian LBS sub-system
includes support for the advanced privacy dialogs and standalone
privacy components.
This #define supports PREQ1660.
*/
#define SYMBIAN_LOCATION_PRIVACY_V2
/**
@publishedPartner
@released
SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER
If SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER is defined, the Media Device
Framework (MDF) will use the RSoundSc sound driver interface.
If this macro is not defined, MDF will use the older RMdaDevSound interface.
BR2079 gives further details of the migration needed by customers who
are using the Symbian reference DevSound with their own implementation
of RMdaDevSound.
@see RMdaDevSound
@see RSoundSc
*/
#define SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER
/**
@publishedPartner
@released
SYMBIAN_MESSAGESTORE_USING_SQLDB
If SYMBIAN_MESSAGESTORE_USING_SQLDB is defined then messaging server
uses the SQLite database to store message index data.
*/
#define SYMBIAN_MESSAGESTORE_USING_SQLDB
/**
@publishedAll
@released
SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS
If SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS is defined, new
APIs are provided in cone.lib and ws32.lib which allow
applications to draw to multiple displays simultaneously and
react to a change of the active display.
This #define supports PREQ1227
@see CCoeEnv::ScreenDevice
@see CScreenItem
*/
#define SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS
/**
@publishedPartner
@released
SYMBIAN_POWER_RESOURCE_MANAGER_API
If SYMBIAN_POWER_RESOURCE_MANAGER_API is defined, the Power Resource
Manager is available.
@see PowerResourceManager
@see DPowerResourceController
This #define supports PREQ1398.
*/
#define SYMBIAN_POWER_RESOURCE_MANAGER_API
/**
@publishedAll
@released
SYMBIAN_PROCESS_MONITORING_AND_STARTUP
If defined, the System Startup architecture supports dynamic startup
for after market applications, and provides the SysMon process to
monitor critical system processes.
@see DscStore::Connect
@see ERestartOS
This define supports PREQ871 and PREQ1089.
*/
#define SYMBIAN_PROCESS_MONITORING_AND_STARTUP
/**
@publishedAll
@released
SYMBIAN_TUNER_RDS_ANNOUNCEMENT
If SYMBIAN_TUNER_RDS_ANNOUNCEMENT is defined, the RDS Tuner API
is provided, allowing applications to be notified if the radio
is retuned to another station in order to listen to an announcement.
@see MMMRdsTunerUtilityImpl
@see MMMRdsAnnouncementObserver2
@see CMMRdsTunerUtility
This #define supports CR1097.
*/
#define SYMBIAN_TUNER_RDS_ANNOUNCEMENT
/**
@publishedAll
@released
SYMBIAN_USER_PROMPT_SERVICE
If SYMBIAN_USER_PROMPT_SERVICE is defined, the User Prompt
Service is available, allowing system servers to prompt the
user to make a security decision about a request from a client
application, e.g. "Allow application X to send an SMS message?"
@see RupSubsession::Authorise
This #define is associated with PREQ1262.
*/
#define SYMBIAN_USER_PROMPT_SERVICE
/**
@publishedPartner
@released
SYMBIAN_MULTIMEDIA_MUF
If SYMBIAN_MULTIMEDIA_MUF is defined, then the PREQ1823 Multimedia
Metadata Utility Framework is delivered in to the OS.
@see CMetaDataClientUtility
@see CMUFParserType
@see MMUFObserver
@see CMetaDataFieldsArray
@see CMetaDataFieldItem
@see CMetaDataParser
This #define supports PREQ1823.
*/
#define SYMBIAN_MULTIMEDIA_MUF
/**
@publishedAll
@released
SYMBIAN_MBUFMANAGER_V2
SYMBIAN_MBUFMANAGER_V2 make several changes in
the CMBufManager including multiple sized RMBuf's.
This #define supports REQ7857, REQ7860, REQ7864, REQ8585, REQ8586
developed as part of PREQ1248.
These changes introduces a BR-2242.
*/
#define SYMBIAN_MBUFMANAGER_V2
/**
@publishedPartner
@released
SYMBIAN_FEATURE_MANAGER
If SYMBIAN_FEATURE_MANAGER is defined then the Feature Registry
functionality is implemented via the Feature Manager, with
corresponding changes in the ROM building tools.
This #define supports PREQ1645
*/
#define SYMBIAN_FEATURE_MANAGER
/**
@publishedAll
@released
SYMBIAN_BUILD_GCE
If SYMBIAN_BUILD_GCE is defined, the Surface Manager and Graphics
Composition Engine APIs are available at build time.
@see RWindowBase::SetBackgroundSurface
@see RSurfaceManager
@see RSurfaceUpdateSession
Note that the Surface Manager and GCE executables are optional,
and will not be present in the ROM or the emulator unless
appropriately configured.
This #define supports PREQ1007 and PREQ1019
*/
#define SYMBIAN_BUILD_GCE
/**
@publishedAll
@released
SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY
If SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY is defined
then the comms-infras framework supports the management plane
with the RCommsManager API providing support for connection
selection, bearer mobility and other functionality.
This #define supports PREQ 1060 and PREQ 399.
*/
#define SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY
/**
@publishedPartner
@released
SYMBIAN_CAF_STREAMING
If SYMBIAN_CAF_STREAMING is defined then CAF provides support for
streamed broadcast protection standards, such as DVB-H or OMA DRM BCAST.
This #define supports PREQ782
*/
#define SYMBIAN_CAF_STREAMING
/**
@publishedPartner
@released
SYMBIAN_ENABLE_USB_OTG_HOST
If SYMBIAN_ENABLE_USB_OTG_HOST is defined, executables related
to USB Host and USB OTG will be built in addition to the
existing support for USB Client.
These additional components are necessary to enable building a
ROM incorporating USB Client, Host and OTG functionality.
This #define supports PREQ1782
*/
#define SYMBIAN_ENABLE_USB_OTG_HOST
/**
@publishedPartner
@released
SYMBIAN_MULTIMEDIA_A3FDEVSOUND
If SYMBIAN_MULTIMEDIA_A3FDEVSOUND is defined, the PREQ1540 DevSound API is
present in the Advanced Audio Adaptation Framework
This #define supports PREQ1540.
*/
#define SYMBIAN_MULTIMEDIA_A3FDEVSOUND
/**
@publishedAll
@released
SYMBIAN_OS_EXCLUDE_DMCPDS
When this macro is enabled, OMA dataSync, Device Management and Client Provisioning protocol
implementations will be excluded.
This #define supports PREQ2474.
*/
#define SYMBIAN_OS_EXCLUDE_DMCPDS
/**
@publishedPartner
@released
SYMBIAN_USB_RNDIS
If SYMBIAN_USB_RNDIS is defined, SYMBIAN OS will provide USB Remote NDIS class (this affects Bluetooth PAN as well).
This #define supports PREQ1872.
*/
#define SYMBIAN_USB_RNDIS
/**
@publishedPartner
@released
SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
If SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW is defined, TCP protocol will set the Receive window size according to the underlying bearer (ex. GPRS, WiFi, etc)
and the window size will change as the bearer changes or the modulation of the bearer changes.
#define supports PREQ1854.
*/
#define SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
/**
@internalAll
@released
SYMBIAN_ALARM_REPEAT_EXTENSIONS
If SYMBIAN_ALARM_REPEAT_EXTENSIONS is defined then the client APIs delivered by PREQ2069 will be avilable.
These APIs introduce an additional alarm repeat definition and a new alarm expiry behaviour.
#define supports PREQ2069.
*/
#define SYMBIAN_ALARM_REPEAT_EXTENSIONS
/**
@publishedPartner
SYMBIAN_BAFL_MULTIPARTPARSER
If SYMBIAN_BAFL_MULTIPARTPARSER is defined then the BAFL
component provides the MultipartParser.dll functionality.
This #define supports PREQ2051.
*/
#define SYMBIAN_BAFL_MULTIPARTPARSER
/**
@internalAll
@released
SYMBIAN_CENTREP_SUPPORT_MULTIROFS
If SYMBIAN_CENTREP_SUPPORT_MULTIROFS is defined, centralrepository client
will be able to define keyspaces that are composed of multiple files in different ROFS layers.
This #define supports PREQ2112
*/
#define SYMBIAN_CENTREP_SUPPORT_MULTIROFS
/**
@publishedPartner
@released
SYMBIAN_DNS_PROXY
If SYMBIAN_DNS_PROXY is defined, SYMBIAN OS will provide DNS Proxy Service.
This define supports PREQ1684.
*/
#define SYMBIAN_DNS_PROXY
/**
@publishedPartner
@released
SYMBIAN_DNS_PUNYCODE
If SYMBIAN_DNS_PUNYCODE is defined, this will enable punycode conversion
functionality in the system. If SYMBIAN_DNS_PUNYCODE is enabled, then the DND
can resolve the International Domain Names also. As per the requirement, application
can use this punycode conversion.
This define supports PREQ2296.
*/
#define SYMBIAN_DNS_PUNYCODE
/**
@publishedAll
SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
Enables the File Server Client side API for large file access (file size greater than 2GB - 1).
Enables the configurable part of File Server side to support large files.
This #define supports PREQ1725
*/
#define SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
/**
@publishedPartner
@released
SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
If SYMBIAN_ENABLE_FAT_DIRECTORY_OPT is defined, a size-configurable
Leaf Directory Name Caching and optimisations to file creation operations
is enabled to improve performance of locating leaf directories and
file creation on FAT volumes.
This #define supports PREQ1885.
*/
#define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
/**
@publishedAll
@released
SYMBIAN_EUSERHL
EUserHl generic usability library
This #define supports PREQ2177
*/
#define SYMBIAN_EUSERHL
/**
@publishedPartner
SYMBIAN_LOCATION_BTGPSCONFIG
Allows applications that use the LBS subsystem to automatically utilize the best Bluetooth GPS positioning source
available (rather than be manually configured to a particular Bluetooth GPS device)
*/
#define SYMBIAN_LOCATION_BTGPSCONFIG
/**
@publishedAll
@released
SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH
If SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH is defined then the client
side of messaging server provides enhanced search capabilities.
*/
#define SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH
/**
@publishedPartner
@released
SYMBIAN_NETWORKING_ADDRESS_PROVISION
If SYMBIAN_NETWORKING_ADDRESS_PROVISION is defined, this will enable
the DHCP server to provide IP address to the client based on its
hardware address, this hardware address is provisioned by the
application which is loading the DHCP server. Also NAPT will
forward any packets to the uplink only if the source address is
provisioned.
This define supports PREQ1872.
*/
#define SYMBIAN_NETWORKING_ADDRESS_PROVISION
/**
@internalComponent
SYMBIAN_OE_LIBRT
If SYMBIAN_OE_LIBRT is defined, the open environment component will be extended to include the
Symbian OS port of the latest version of librt ("realtime") open source library.
This #define supports PREQ1974
*/
#define SYMBIAN_OE_LIBRT
/**
@internalComponent
SYMBIAN_OE_POSIX_SIGNALS
If SYMBIAN_OE_POSIX_SIGNALS is enabled, the libc component will use POSIX signals emulation.
This #define supports PREQ1579
*/
#define SYMBIAN_OE_POSIX_SIGNALS
/**
@publishedPartner
SYMBIAN_SDP_IPSEC_VOIP_SUPPORT
If SYMBIAN_SDP_IPSEC_VOIP_SUPPORT is defined, then PREQ1853 APIs enable use of the cipher based MAC evaluation
and psuedo random generation algorithms (AES-XCBC-MAC-96 and AES-XCBC-PRF-128 respectively) through a new MAC
interface introduced in the CryptoSpi framework.
Tbis #define supports PREQ1853
*/
#define SYMBIAN_SDP_IPSEC_VOIP_SUPPORT
/**
@internalAll
@released
SYMBIAN_SKIPPED_CALENDAR_ALARMS
If SYMBIAN_SKIPPED_CALENDAR_ALARMS is present then the alarm server shall
persist details of missed calendar alarms and clients shall be able to
retrieve the list of missed calendar alarms from the Alarm server client API.
This supports PREQ2088.
*/
#define SYMBIAN_SKIPPED_CALENDAR_ALARMS
/**
@internalTechnology
SYMBIAN_SSM_FLEXIBLE_MERGE
When SYMBIAN_SSM_FLEXIBLE_MERGE is enabled then flexible merging
of startup command lists based on priority is supported.
This define supports PREQ1871.
*/
#define SYMBIAN_SSM_FLEXIBLE_MERGE
/**
@internalAll
SYMBIAN_SSM_GRACEFUL_SHUTDOWN
If SYMBIAN_SSM_GRACEFUL_SHUTDOWN is defined, this will enable
Staged Shutdown of the device, which allows definition of
a policy to specify the order for notifying registered
components of shutdown, allowing them to perform any necessary
tasks before the device completes its shutdown.
This define supports PREQ2326.
*/
#define SYMBIAN_SSM_GRACEFUL_SHUTDOWN
/**
@publishedPartner
@released
SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING
If SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING is defined then
the TCP/IP stack shall support explictly bound sockets.
If a socket is explicitly bound and a packet arrives on an interface
that the socket isn't bound to, then the packet should be dropped.
This define supports PREQ2279.
*/
#define SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING
/**
@publishedAll
SYMBIAN_SWI_RUN_ON_INSTALL_COMPLETE
This new Macro will enable the support for new run option for SIS files . When executables/files inside
SIS file marked with this new run option, they will be executed at the end of the successful installation.
This #define supports PREQ2264, CR1544
*/
#define SYMBIAN_SWI_RUN_ON_INSTALL_COMPLETE
/**
@publishedPartner
@released
SYMBIAN_SYSTEM_STATE_MANAGEMENT
If SYMBIAN_SYSTEM_STATE_MANAGEMENT is defined, this will enable
the System State Management Architecture, which supports the
concept of system states (including startup, normal operation,
shutdown, and failure) and associated behaviour, and facilitates
the transitioning between them according to licensee-defined
policies and procedures.
This define supports PREQ1871.
*/
#define SYMBIAN_SYSTEM_STATE_MANAGEMENT
/**
@internalAll
SYMBIAN_WRITABLE_DATA_PAGING
This System Wide Define will be used to issue a warning when a rom is built that enables data paging on a
version of the OS for which data paging is not warranted.
This #define supports PREQ1954
*/
#define SYMBIAN_WRITABLE_DATA_PAGING
/**
@publishedPartner
@released
SYMBIAN_ZERO_COPY_NETWORKING
If SYMBIAN_ZERO_COPY_NETWORKING is defined the Comms Stack switches from using single memory pool overseen
by MBufManager to multiple, HW specific pools. With SYMBIAN_ZERO_COPY_NETWORKING defined link-level flows
can avoid copying data when communicating with the respective HW drivers.
This #define supports PREQ2106.
*/
#define SYMBIAN_ZERO_COPY_NETWORKING
/**
@publishedpartner
@released
SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS
This macro is supported only in the wserv_nga configuration.
If SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS is enabled,
- code changes for supporting Qt effects in graphics window server will be enabled.
- the layer region optimizer and surface placement will no longer work.
This #define supports PREQ2669.
*/
#define SYMBIAN_GRAPHICS_WSERV_QT_EFFECTS
/**
@publishedPartner
SYMBIAN_DISTINCT_LOCALE_MODEL
When this macro is enabled, new locale model will be enabled, three distinct locale dlls will replace the old single locale dll.
*/
#define SYMBIAN_DISTINCT_LOCALE_MODEL
/**
@publishedPartner
@released
SYMBIAN_ENABLE_SPLIT_HEADERS
When this is not defined, header files, that have been split, #include the extra header files to disable the source break. When this is defined, the headers have been fully split and the source break is enabled.
This #define supports PREQ2740 and other splitting "mixed" header file PREQs.
*/
#define SYMBIAN_ENABLE_SPLIT_HEADERS
/**
@publishedAll
@released
SYMBIAN_OE_LIBSTDCPP
If SYMBIAN_OE_LIBSTDCPP is defined, the open environment component will be extended to include the standard new and delete operators, and STDxxx targets will be linked against stdnew.lib for ARM builds, while other targets will be linked against scppnwdl.lib for Emulator builds.
This #define supports PREQ1184
*/
#define SYMBIAN_OE_LIBSTDCPP
/**
@internalComponent
SYMBIAN_OE_LARGE_FILE_SUPPORT
If SYMBIAN_OE_LARGE_FILE_SUPPORT is enabled, code changes for supporting Large files ( >2GB) will be built into libc.
This will be enabled from Symbian OS Emin onwards.
*/
#define SYMBIAN_OE_LARGE_FILE_SUPPORT
/**
@internalComponent
SYMBIAN_OE_ENHANCED_LOCALE_SUPPORT
If SYMBIAN_OE_ENHANCED_LOCALE_SUPPORT is enabled, code changes for aligning OE locale support with native locales will be built into libc and libstdcppv5.
This will be enabled from Symbian OS Emin onwards.
This #define supports PREQ1440
*/
#define SYMBIAN_OE_ENHANCED_LOCALE_SUPPORT
/**
@publishedAll
@released
SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK
SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK toggles the support for the Software Component Registry (SCR),
Software Installation Framework (SIF) and Software Transaction Services (STS).
The components are built if and only if this macro is defined.
This macro supports REQ 415-7310: Universal Software Install Framework
*/
#define SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK
/**
@publishedPartner
@released
SYMBIAN_E32_ATOMIC_API
If SYMBIAN_E32_ATOMIC_API is defined the header file e32atomics.h is available
and should be used in preference to hand-coding ARM atomic instructions.
*/
#define SYMBIAN_E32_ATOMIC_API