symbianosbld/cedarutils/inc/Symbian_OS_tb92sf.hrh
branchRCL_3
changeset 20 bae7f55f6ef7
equal deleted inserted replaced
19:c39e182aa37c 20:bae7f55f6ef7
       
     1 // Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 // Symbian_OS.hrh
       
    15 // Configuration options for Symbian OS
       
    16 // This file is managed by the Master Codeline Forum
       
    17 
       
    18 /** This include is for PREQ2621 */
       
    19 #include "platform_paths.hrh"
       
    20 
       
    21 // SYMBIAN_JAVA_NOT_INCLUDED
       
    22 // For Sphinx and later versions, J2ME will no longer be included in the 
       
    23 // build.  
       
    24 // This #define supports PREQ1791
       
    25 // 
       
    26 //
       
    27 
       
    28 /**
       
    29  @publishedPartner
       
    30  @released
       
    31 */
       
    32 #define SYMBIAN_JAVA_NOT_INCLUDED
       
    33    
       
    34 /**
       
    35 @publishedPartner
       
    36 @released
       
    37 
       
    38 SYMBIAN_HCI_API_V2
       
    39                     
       
    40 If SYMBIAN_HCI_API_V2 is defined then the HCI APIs provided in PREQ750 
       
    41 (Bluetooth HCI improvements) will be required for use by a version 2 
       
    42 Bluetooth Stack and a version 2 HCI. These APIs are neither binary nor 
       
    43 source compatible with the previous version 1 HCI APIs. Both the original 
       
    44 version 1  Bluetooth stack and HCI, and the new version 2 Bluetooth stack 
       
    45 and HCI will be built, but both rombuild and the emulator will be 
       
    46 configured to use the version 2 binaries. The version 2 HCI will support 
       
    47 all commands and events listed in Bluetooth v2.0 specification.
       
    48 
       
    49 If SYMBIAN_HCI_API_V2 is not defined then only the version 1 Bluetooth 
       
    50 stack and HCI will be built and used by rombuild and the emulator.
       
    51 The version 1 HCI supports most but NOT all commands and events listed 
       
    52 in Bluetooth v2.0 specification.
       
    53 
       
    54 See BR1613 for more information.
       
    55 */
       
    56 #define SYMBIAN_HCI_API_V2
       
    57 
       
    58 /**
       
    59 @publishedAll
       
    60 @released
       
    61 
       
    62 __WATCHER_API_V2__
       
    63 
       
    64 If __WATCHER_API_V2__ is defined then the 
       
    65 watcher framework supports ECOM watcher plugins.
       
    66 */
       
    67 #define __WATCHER_API_V2__
       
    68 
       
    69 /**
       
    70 @publishedAll
       
    71 @released
       
    72 
       
    73 __HIDE_WATCHER_API_V1__
       
    74 
       
    75 Hides support APIs for loading non-ECOM watcher plugins. Non-ECOM watcher 
       
    76 plugins are still loaded. The associated define __REMOVE_WATCHER_API_V1__
       
    77 removes the implementation of the support APIs.
       
    78 
       
    79 Assumes that __WATCHER_API_V2__ has been defined.
       
    80 */
       
    81 #define __HIDE_WATCHER_API_V1__
       
    82 #define __REMOVE_WATCHER_API_V1__
       
    83 
       
    84 /**
       
    85 SYMBIAN_TIMEZONE_SUPPORT_V1
       
    86 
       
    87 @publishedAll
       
    88 @released
       
    89 
       
    90 When SYMBIAN_TIMEZONE_SUPPORT_V1 is defined the App-services TzClient.dll 
       
    91 module (and accompanying import library) is made available for client 
       
    92 application use.
       
    93 
       
    94 This #define supports PREQ663
       
    95 */
       
    96 #define SYMBIAN_TIMEZONE_SUPPORT_V1
       
    97 
       
    98 /** 
       
    99 @publishedAll
       
   100 @released
       
   101 
       
   102 SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT
       
   103 
       
   104 If SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT is defined then 
       
   105 the Multimedia Framework (MMF) can support video playback on 
       
   106 a secondary display. The default screen will be the screen 
       
   107 number in the cone environment.
       
   108 
       
   109 @see CVideoPlayerUtility
       
   110 */
       
   111 #define SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT
       
   112 
       
   113 /**
       
   114 @publishedAll
       
   115 @released
       
   116 
       
   117 SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM
       
   118 
       
   119 If  SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM is defined, the Composite
       
   120 File System allows more than one ROFS partition to be included in
       
   121 the composite Z: drive.
       
   122 
       
   123 This #define supports PREQ1085
       
   124 */
       
   125 #define SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM
       
   126 
       
   127 /**
       
   128 @publishedPartner
       
   129 @released
       
   130 
       
   131 __SECURE_BIN__
       
   132 
       
   133 When __SECURE_BIN__ is defined, executable files stored as
       
   134 "data" in the XIP ROM are assumed to be in their data-caged 
       
   135 locations. The presence of this #define does not imply that 
       
   136 data-caging is enforced, and does not imply that binaries have 
       
   137 been relocated to sys\bin.
       
   138 
       
   139 This #define supports PREQ537 "Platform security - file system layout".
       
   140 */
       
   141 #define __SECURE_BIN__
       
   142 
       
   143 /**
       
   144 @publishedAll
       
   145 @released
       
   146 
       
   147 SYMBIAN_COREAPPS_API_V2
       
   148 
       
   149 If SYMBIAN_COREAPPS_API_V2 is defined then new functionality is available within 
       
   150 the Core Apps sub-system (Contacts Model, Agenda Model and World Server) to 
       
   151 support a platform secured OS.
       
   152 */
       
   153 #define SYMBIAN_COREAPPS_API_V2
       
   154 
       
   155 /**
       
   156 @publishedPartner
       
   157 @released
       
   158 
       
   159 SYMBIAN_APPARC_APPINFO_CACHE
       
   160 
       
   161 If SYMBIAN_APPARC_APPINFO_CACHE is defined then apparc creates 
       
   162 a file of application information on the first boot, which is 
       
   163 used during subsequent boots for application information.
       
   164 */
       
   165 #define SYMBIAN_APPARC_APPINFO_CACHE
       
   166 
       
   167 /**
       
   168 @publishedPartner
       
   169 @released
       
   170 
       
   171 SYMBIAN_NETWORKING_IPSEC_IKE_V2
       
   172 
       
   173 If SYMBIAN_NETWORKING_IPSEC_IKE_V2 is defined, IPSEC will 
       
   174 be able to support Internet Key Exchange version 2 in 
       
   175 addition to IKE v1. This involves a change in the size of 
       
   176 the TPfkeyMsgBase class - see BR1736.1.
       
   177 
       
   178 Actual support for IKE v2 will depend on the provision 
       
   179 of a suitable plugin to the Key Management Daemon.
       
   180 
       
   181 This #define supports PREQ1223.
       
   182 */
       
   183 #define SYMBIAN_NETWORKING_IPSEC_IKE_V2
       
   184 
       
   185 /**
       
   186 @publishedPartner
       
   187 @released
       
   188 
       
   189 SYMBIAN_UIKON_UNIFICATION
       
   190 
       
   191 When SYMBIAN_UIKON_UNIFICATION is defined, the existing 
       
   192 CEikSrvAppUiBase class is replaced with a customisable class
       
   193 provided by the System GUI. 
       
   194 
       
   195 This #define supports PREQ819 and PREQ826
       
   196 */
       
   197 #define SYMBIAN_UIKON_UNIFICATION
       
   198 
       
   199 /**
       
   200 @publishedAll
       
   201 @released
       
   202 
       
   203 __SECURITY_PLATSEC_ARCH__
       
   204 
       
   205 If this macro is defined, then platform security aware security services 
       
   206 APIs will be present.  This includes architectural changes to several 
       
   207 components.
       
   208 
       
   209 If this macro is not defined, the original version (since 8.0) of the 
       
   210 security services APIs will be present. 
       
   211 
       
   212 The following components are affected:
       
   213   cryptotokens
       
   214   certman
       
   215   filetokens
       
   216 
       
   217 */
       
   218 #define __SECURITY_PLATSEC_ARCH__
       
   219 
       
   220 /**
       
   221 SYMBIAN_ECAM_CHUNKAPI
       
   222 
       
   223 @publishedAll
       
   224 @released
       
   225 
       
   226 Specifies that an extended API will be used in the multimedia 
       
   227 camera interface. This has a v2 observer which allows camera data 
       
   228 to be returned without buffer copy, and also allows clients to set 
       
   229 camera access priority
       
   230 
       
   231 @see CCamera
       
   232 @see MCameraObserver2
       
   233 
       
   234 This #define supports PREQ799.
       
   235 */
       
   236 #define SYMBIAN_ECAM_CHUNKAPI
       
   237 
       
   238 /**
       
   239 @publishedAll
       
   240 @released
       
   241 
       
   242 SYMBIAN_SECURE_ECOM
       
   243 
       
   244 When SYMBIAN_SECURE_ECOM is not defined, ECOM plugins are discovered by 
       
   245 searching for DLLs in System\libs\plugins, and inferring the name of 
       
   246 the resource file from the UID3 of the DLL.
       
   247 
       
   248 When SYMBIAN_SECURE_ECOM is defined, ECOM plugins will also be discovered
       
   249 by searching for resource files in \Resource\Plugins, and inferring the
       
   250 name of the DLL from the name of the resource file. When platform security
       
   251 is fully enforced, only this new style of discovery will work.
       
   252 */
       
   253 #define SYMBIAN_SECURE_ECOM
       
   254 
       
   255 /**
       
   256 @publishedAll
       
   257 @released
       
   258 
       
   259 SYMBIAN_INETPROTUTILS_RFC3986
       
   260 
       
   261 Description:
       
   262 If SYMBIAN_INETPROTUTILS_RFC3986 is defined, the Internet 
       
   263 Protocol Utility Library supports RFC 3986, which increases 
       
   264 the set of reserved characters.
       
   265 
       
   266 @see EscapeUtils::IsExcludedChar
       
   267 
       
   268 This #define implements BR2009.
       
   269 */
       
   270 #define SYMBIAN_INETPROTUTILS_RFC3986
       
   271 
       
   272 /**
       
   273 @publishedPartner
       
   274 @released
       
   275 
       
   276 SYMBIAN_FONT_METRICS_V2 
       
   277 
       
   278 If this is defined, then classes which derive from COpenFont (usually 
       
   279 these are part of a font rasterizer implementation) must set the 
       
   280 protected member variables:
       
   281 iFontAscentOfCapitals
       
   282 iFontAscentIncAccents
       
   283 iFontDescent
       
   284 iFontLineGap
       
   285 to appropriate values during the creation of a font. 
       
   286 If this macro is not defined then these member variables do not exist.
       
   287 
       
   288 @see COpenFont
       
   289 */
       
   290 #define SYMBIAN_FONT_METRICS_V2
       
   291 
       
   292 /**
       
   293 @publishedAll
       
   294 @released
       
   295 
       
   296 __OBEX_USER_DEFINED_HEADERS__
       
   297 
       
   298 If __OBEX_USER_DEFINED_HEADERS__ is defined then the new API support for extended Headers will be available.
       
   299 This new support includes USER DEFINED HEADERS and the COUNT header.
       
   300 If this functionality is compiled out then the old API is available as before.
       
   301 For more information on see documents shown below.
       
   302 
       
   303 @see SGL.GT171.097 - Obex Header Extension how to
       
   304 @see SGL.GT171.095 - Obex Extension Design Document
       
   305 */
       
   306 #define __OBEX_USER_DEFINED_HEADERS__
       
   307 
       
   308 /**
       
   309 @publishedPartner
       
   310 @released
       
   311 
       
   312 SYMBIAN_CENTREP_NOC
       
   313 
       
   314 If SYMBIAN_CENTREP_NOC is defined, the Central Repository 
       
   315 includes Notify-Only Client Optimization. This will cause 
       
   316 repositories to be unloaded after a timeout even if the 
       
   317 connection is still open.
       
   318 
       
   319 This #define supports PREQ1228. 
       
   320 */
       
   321 #define SYMBIAN_CENTREP_NOC
       
   322 
       
   323 /**
       
   324 @publishedPartner
       
   325 @released
       
   326 @since 8.1
       
   327 
       
   328 SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT 
       
   329 
       
   330 If this is defined, the MHCIEventObserver class must implement
       
   331 the FlushCompleteEvent virtual function, which will be used by 
       
   332 the link manager to send Flush Complete events up to the stack. 
       
   333 If this macro is not defined, Flush Complete events will be discarded.
       
   334 
       
   335 @see MHCIEventObserver
       
   336 @see CHCIFacade
       
   337 */
       
   338 #define SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT
       
   339 
       
   340 /**
       
   341 @publishedAll
       
   342 @released
       
   343 
       
   344 SYMBIAN_MULTIMEDIA_CODEC_API
       
   345 
       
   346 If SYMBIAN_MULTIMEDIA_CODEC_API is defined then support is 
       
   347 available for PREQ1024 delivered Processing Unit or 
       
   348 OpenMAX based codecs and Multimedia hardware devices.
       
   349 */
       
   350 #define SYMBIAN_MULTIMEDIA_CODEC_API
       
   351 /** 
       
   352 @publishedAll
       
   353 @released
       
   354 
       
   355 
       
   356 SYMBIAN_MULTIMEDIA_SUBTITLE_SUPPORT 
       
   357 
       
   358 Provides support control the presentation of subtitle and closed captioning text
       
   359 from video playback controllers in the Multimedia Framework as part of @see CVideoPlayerUtility2.
       
   360 Note that this support is dependent on the following being present in ROM: 
       
   361 - GCE version of Graphics (migration component)
       
   362 - GCE version of Videorender (optional component).
       
   363 - The Subtitle plugin (optional component). 
       
   364 
       
   365 This #define supports PREQ1939 
       
   366 */ 
       
   367 #define SYMBIAN_MULTIMEDIA_SUBTITLE_SUPPORT
       
   368 
       
   369 /**
       
   370 @publishedAll
       
   371 @released
       
   372 
       
   373 __MESSAGING_API_V2__
       
   374 
       
   375 If __MESSAGING_API_V2__ is defined then new functionality 
       
   376 is available within the Messaging sub-system to support a 
       
   377 platform secured OS, e.g. the Attachment API.
       
   378 */
       
   379 #define __MESSAGING_API_V2__
       
   380 #define __HIDE_MESSAGING_API_V1__
       
   381 #define __REMOVE_MESSAGING_API_V1__
       
   382 
       
   383 /**
       
   384 @publishedPartner
       
   385 @released
       
   386 
       
   387 SYMBIAN_BOOKMARK_DATABASE
       
   388 
       
   389 The Bookmark Database is an API used to provide system-wide 
       
   390 storage and management functionality for URI bookmarks. 
       
   391 If defined, this macro indicates that the Bookmark Database 
       
   392 API is present in the platform.
       
   393 */
       
   394 #define SYMBIAN_BOOKMARK_DATABASE
       
   395 
       
   396 /**
       
   397 @publishedPartner
       
   398 @released
       
   399 
       
   400 SYMBIAN_NETWORKING_UMTSR5
       
   401 
       
   402 If SYMBIAN_NETWORKING_UMTSR5 is defined support for the QoS 
       
   403 and IMS parameters introduced by Release 5 of the 3GPP 
       
   404 specification will be enabled. This involves a BC break in 
       
   405 TContextConfig - see BR1582.1 for details.
       
   406 
       
   407 @see TContextConfig
       
   408 
       
   409 This #define supports PREQ192 and PREQ635.
       
   410 */
       
   411 #define SYMBIAN_NETWORKING_UMTSR5
       
   412 
       
   413 /**
       
   414 @publishedPartner
       
   415 @released
       
   416 
       
   417 SYMBIAN_NETWORKING_3GPPDEFAULTQOS
       
   418 
       
   419 If SYMBIAN_NETWORKING_3GPPDEFAULTQOS is defined, support 
       
   420 for QoS modification on the default PDP context will be 
       
   421 enabled via the RSubconnection API.
       
   422 
       
   423 This #define supports PREQ870.
       
   424 */
       
   425 #define SYMBIAN_NETWORKING_3GPPDEFAULTQOS
       
   426 
       
   427 
       
   428 /**
       
   429 SYMBIAN_STAGED_SYSTEM_STARTUP
       
   430 
       
   431 @publishedPartner
       
   432 @released
       
   433 
       
   434 When SYMBIAN_STAGED_SYSTEM_STARTUP is defined, the staged 
       
   435 start-up architecture has been introduced into the OS and 
       
   436 'Start-up State Aware' components can make use of the 
       
   437 architecture.
       
   438 
       
   439 This #define supports PREQ 810.
       
   440 */
       
   441 #define SYMBIAN_STAGED_SYSTEM_STARTUP
       
   442 
       
   443 /**
       
   444 @publishedAll
       
   445 @released
       
   446 
       
   447 __HIDE_IPC_V1__
       
   448 
       
   449 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.
       
   450 
       
   451 For more information see the document listed below.
       
   452 
       
   453 @see SMG.SM0005.004 - Platform Security Development for Zephyr
       
   454 @see CSession
       
   455 @see CServer
       
   456 @see RMessage
       
   457 @see RMessagePtr
       
   458 */
       
   459 #define __HIDE_IPC_V1__
       
   460 
       
   461 /**
       
   462 @publishedPartner
       
   463 @released
       
   464 
       
   465 SYMBIAN_NETWORKING_DHCPSERVER
       
   466 
       
   467 If SYMBIAN_NETWORKING_DHCPSERVER is defined, Symbian OS includes a
       
   468 simplified DHCPv4 server capable of dealing with single client.
       
   469 
       
   470 This #define provides functionality to support PREQ749.
       
   471 */
       
   472 #define SYMBIAN_NETWORKING_DHCPSERVER
       
   473 
       
   474 /**  
       
   475 @publishedAll 
       
   476 @released
       
   477 
       
   478 SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION
       
   479 
       
   480 This macro removes the trivial encryption APIs that are exported by EUSER. 
       
   481 
       
   482 See BR1320 for more details
       
   483 
       
   484 */
       
   485 #define SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION
       
   486 
       
   487 /**
       
   488 @internalTechnology
       
   489 
       
   490 SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST
       
   491 
       
   492 Description:
       
   493 If SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST is defined, the WAP Push
       
   494 watcher compares the origin of Push messages against URIs in a
       
   495 "White list" and "Black list".
       
   496 
       
   497 This #define supports PREQ1505
       
   498 */
       
   499 #define SYMBIAN_WAPPUSH_WHITELIST_BLACKLIST
       
   500 
       
   501 /**
       
   502 @publishedPartner
       
   503 @released
       
   504 
       
   505 SYMBIAN_FLEXIBLE_ALARM
       
   506 
       
   507 When this macro is defined, Calendar Interim API, Alarm server and UIKON 
       
   508 Alert Server will support additional functionality.
       
   509 - Extra data can be attached to calendar alarm and allow UI app 
       
   510 to retrieve the associated data.
       
   511 - The Alarm server can send multiple expired alarms to Alert Server without 
       
   512 waiting for the previous alarm acknowledged first
       
   513 - A Resource file can be used to configure alarm play intervals and durations, 
       
   514 or to disable alarm sound control.
       
   515 
       
   516 This #define supports PREQ1118
       
   517 */
       
   518 #define SYMBIAN_FLEXIBLE_ALARM
       
   519 
       
   520 /**
       
   521 @publishedPartner
       
   522 @released
       
   523 
       
   524 SYMBIAN_PKCS12
       
   525 
       
   526 If SYMBIAN_PKCS12 is defined, the PKCS#12 Key Derivation 
       
   527 Algorithm is supplied.
       
   528 
       
   529 This #define supports PREQ1054. 
       
   530 */
       
   531 #define SYMBIAN_PKCS12
       
   532 
       
   533 /**
       
   534 @publishedAll
       
   535 @released
       
   536 
       
   537 SYMBIAN_MMF_AUTOPAUSE_RESUME
       
   538 
       
   539 This #define enables extra features in the MMF APIs for auto pause 
       
   540 and resume of audio streams.
       
   541 */
       
   542 #define SYMBIAN_MMF_AUTOPAUSE_RESUME
       
   543 
       
   544 /**
       
   545 @publishedAll
       
   546 @released
       
   547 
       
   548 __SECURE_BACKUP__
       
   549 
       
   550 If __SECURE_BACKUP__ is defined, the Secure Backup server replaces
       
   551 the use of SCRemFs for backup and restore, changing the backup protocol.
       
   552 Applications which have private data need to provide additional backup 
       
   553 registration files, and may use Publish & Subscribe to receive 
       
   554 notification of backup requests.
       
   555 
       
   556 This #define supports PREQ716 - Provide support for secure backup and 
       
   557 restore for licensee PC Connectivity software 
       
   558 */
       
   559 #define __SECURE_BACKUP__
       
   560 
       
   561 /** 
       
   562 @publishedAll
       
   563 @released
       
   564 
       
   565 SYMBIAN_NETWORKING_REMOVE_RGENERIC
       
   566 
       
   567 If this macro is defined the deprecated APIs RGenericAgent, 
       
   568 RNif, RNifMonitor and Nifman are removed. All of these APIs, 
       
   569 exported by NIFMAN, have been deprecated and replaced by 
       
   570 the RConnection API exported by ESOCK.
       
   571 
       
   572 @see Break request BR1070 
       
   573 */ 
       
   574 #define SYMBIAN_NETWORKING_REMOVE_RGENERIC
       
   575 
       
   576 /**
       
   577 @publishedPartner
       
   578 @released 9.0
       
   579 
       
   580 SYMBIAN_NETWORKING_RSUBCONNECTION
       
   581 
       
   582 If SYMBIAN_NETWORKING_RSUBCONNECTION is defined, the RQosChannel API is
       
   583 removed, and the RSubConnection API exported by ESOCK must be used instead.
       
   584 
       
   585 This #define supports PREQ 26.
       
   586 */ 
       
   587 #define SYMBIAN_NETWORKING_RSUBCONNECTION
       
   588 
       
   589 /**
       
   590 @publishedAll
       
   591 @released
       
   592 
       
   593 SYMBIAN_HIDE_COREAPPS_API_V1
       
   594 
       
   595 If SYMBIAN_HIDE_COREAPPS_API_V1 is defined then the insecure CoreApps APIs
       
   596 will be removed from various Symbian OS header files. Components affected are 
       
   597 Contacts Model, Agenda Model and World Server.
       
   598 
       
   599 The related define SYMBIAN_REMOVE_COREAPPS_API_V1 removes the underlying implementations,
       
   600 causing a binary compatibility break to match the source compatibility break.
       
   601 */
       
   602 #define SYMBIAN_HIDE_COREAPPS_API_V1
       
   603 #define SYMBIAN_REMOVE_COREAPPS_API_V1
       
   604 
       
   605 /**
       
   606 @publishedAll
       
   607 @released
       
   608 
       
   609 __UI_FRAMEWORKS_V2__
       
   610 
       
   611 If __UI_FRAMEWORKS_V2__ is defined then PlatSec aware UI Frameworks API's will be available. 
       
   612 The following frameworks will be affected:
       
   613 
       
   614 Applications 
       
   615 File Recognizers
       
   616 Data Recognizers
       
   617 Notifiers
       
   618 Control Panel Plugins
       
   619 Feps
       
   620 App-initialization (CEikLibrary)
       
   621 Converters
       
   622 Error-Resolving
       
   623 */
       
   624 #define __UI_FRAMEWORKS_V2__
       
   625 #define SYMBIAN_HIDE_UI_FRAMEWORKS_V1
       
   626 #define SYMBIAN_REMOVE_UI_FRAMEWORKS_V1
       
   627 
       
   628 /**
       
   629 @internalAll
       
   630 
       
   631 __BC_FUTURE_PROOFING__
       
   632 
       
   633 Support for the implementation of PREQ743 "Introduction of interface 
       
   634 robustness patterns to support future binary compatibility".
       
   635 */
       
   636 #define __BC_FUTURE_PROOFING__
       
   637 
       
   638 /** 
       
   639 @publishedPartner 
       
   640 @released
       
   641 
       
   642 SYMBIAN_TELEPHONY_USAT5 
       
   643 
       
   644 If SYMBIAN_TELEPHONY_USAT5 is defined then support for 3GPP 
       
   645 Release 5 (U)SAT will be enabled. 
       
   646 
       
   647 @see RSat::TCallControlV5
       
   648 
       
   649 This #define supports PREQ1234.
       
   650 */ 
       
   651 #define SYMBIAN_TELEPHONY_USAT5
       
   652 
       
   653 /**
       
   654 SYMBIAN_GENERIC_SYSTEM_STARTUP
       
   655 
       
   656 @publishedPartner
       
   657 @released
       
   658 
       
   659 This #define enables the generic start-up architecture in
       
   660 which the System Starter process is responsible for the
       
   661 controlled startup of the system. 
       
   662 
       
   663 The #define supports PREQ808 and PREQ809.
       
   664 */
       
   665 #define SYMBIAN_GENERIC_SYSTEM_STARTUP
       
   666 
       
   667 /**
       
   668 @publishedAll
       
   669 @released
       
   670 
       
   671 SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE
       
   672 
       
   673 If this macro is defined, then the Bluetooth stack reconfigures to take
       
   674 advantage of security mechanisms in Publish and Subscribe. Any other
       
   675 components requiring reconfiguration to make use of Publish and Subscribe
       
   676 can also use this macro.
       
   677 
       
   678 */
       
   679 #define SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE
       
   680 
       
   681 /**
       
   682 @publishedAll
       
   683 @released
       
   684 
       
   685 SYMBIAN_SECURITY_CAF_RFILE_HANDLE
       
   686 
       
   687 If SYMBIAN_SECURITY_CAF_RFILE_HANDLE is defined then it enables the Content Access 
       
   688 Framework to read from files passed to it as an open RFile handles instead of CAF 
       
   689 opening the file itself. This allows files stored in a data caged directory to be 
       
   690 read by CAF.  
       
   691 
       
   692 */
       
   693 #define SYMBIAN_SECURITY_CAF_RFILE_HANDLE
       
   694 
       
   695 /**
       
   696 @publishedAll
       
   697 @released
       
   698 
       
   699 __JAVACUSTOMINSTALL__
       
   700 
       
   701 If __JAVACUSTOMINSTALL__ is defined then an additional UI callback is made after MIDlet
       
   702 installation has succeeded or failed. This callback is intended for information only and the 
       
   703 information passed can be licensee customised. The intention would be that the device user
       
   704 can use this information to diagnose install problems in conjunction with network operators.
       
   705 If this #define is not present then the callback is not present and is not called.
       
   706 For more information on see documents shown below.
       
   707 
       
   708 @see SGL.GT0188.253 CDMA Java MIDlet Installer Component Design
       
   709 */
       
   710 #define __JAVACUSTOMINSTALL__
       
   711 
       
   712 /**  
       
   713 @publishedAll 
       
   714 @released
       
   715 
       
   716 SYMBIAN_MDF_API_V2 
       
   717 
       
   718 This macro selects the Symbian OS 9.x phase of development in 
       
   719 the Media Device Framework API, including changes to enable 
       
   720 MDF Video Decoder Hardware devices to support applications, 
       
   721 streaming and demux.
       
   722 
       
   723 @see CMMFVideoPlayHwDevice
       
   724 */ 
       
   725 #define SYMBIAN_MDF_API_V2
       
   726 
       
   727 /**
       
   728 @publishedPartner
       
   729 @released
       
   730 
       
   731 SYMBIAN_SMS_REL6_SUPPORT
       
   732 
       
   733 SMS Release 6 support is defined in the 3GPP specifications
       
   734 (3GPP TS 23.040 V6.5.0 and 3GPP TS 23.038 V6.1.0).
       
   735 If defined, this macro indicates that Symbian OS SMS APIs
       
   736 shall support Release 6 functionality.
       
   737 */
       
   738 #define SYMBIAN_SMS_REL6_SUPPORT
       
   739 
       
   740 /**
       
   741 @publishedPartner
       
   742 @released
       
   743 
       
   744 SYMBIAN_SWI_POST_INSTALL_REVOCATION
       
   745 
       
   746 When SYMBIAN_SWI_POST_INSTALL_REVOCATION is defined, 
       
   747 support for the SWI post install revocation service is enabled.
       
   748 
       
   749 This #define supports PREQ919
       
   750 */
       
   751 #define SYMBIAN_SWI_POST_INSTALL_REVOCATION
       
   752 
       
   753 /**
       
   754 @publishedPartner
       
   755 @released
       
   756 
       
   757 SYMBIAN_TELEPHONY_IMS
       
   758 
       
   759 If SYMBIAN_TELEPHONY_IMS is defined then IMS related APIs are included 
       
   760 in Telephony components.
       
   761 
       
   762 This #define supports PREQ61.
       
   763 */
       
   764 #define SYMBIAN_TELEPHONY_IMS
       
   765 
       
   766 /**
       
   767 @publishedPartner
       
   768 @released
       
   769 
       
   770 SYMBIAN_IGNORE_BIN_TARGETPATH
       
   771 
       
   772 When SYMBIAN_IGNORE_BIN_TARGETPATH is defined the TARGETPATH keyword in MMP files is ignored for executables. 
       
   773 Executables for the emulator instead get built to the default location.
       
   774 e.g. \epoc32\release\winscw\udeb
       
   775 */
       
   776 #define SYMBIAN_IGNORE_BIN_TARGETPATH
       
   777 
       
   778 /**
       
   779 @publishedAll 
       
   780 @released
       
   781 
       
   782 SYMBIAN_COMMS_REPOSITORY
       
   783 
       
   784 Comms data is now stored in the Central Repository rather than the DBMS server.  
       
   785 A new module, CommsDat.dll, replaces Commdb.dll as the interface for comms data stored on a device. 
       
   786 CommsDat has a different API to Commdb, but provides equivalent functionality. 
       
   787 There is no longer an SQL API for access to Comms Data. 
       
   788 Commdb tools have been migrated for use with CommsDat 
       
   789 Commdb is deprecated and should not be used, though it remains as a temporary BC shim on top of CommsDat.   
       
   790 */
       
   791 #define SYMBIAN_COMMS_REPOSITORY
       
   792 
       
   793 /**
       
   794 @publishedAll
       
   795 @released
       
   796 
       
   797 SYMBIAN_VARIABLE_BITRATE_CODEC
       
   798 
       
   799 If SYMBIAN_VARIABLE_BITRATE_CODEC is defined then 
       
   800 CMMFSwCodecWrapper based audio hardware devices in the 
       
   801 Multimedia Framework (MMF) can support variable bitrate codecs.
       
   802 
       
   803 @see CMMFSwCodecWrapper
       
   804 */
       
   805 #define SYMBIAN_VARIABLE_BITRATE_CODEC
       
   806 
       
   807 /**
       
   808 @publishedAll
       
   809 @released
       
   810 
       
   811 __SECURE_TELEPHONY__
       
   812 
       
   813 If __SECURE_TELEPHONY__ is defined, all Platform Security functionality 
       
   814 within the Telephony subsystem will be enabled.
       
   815 If __SECURE_TELEPHONY__ is not defined, no Platform Security functionality 
       
   816 within the Telephony subsystem is enabled.
       
   817 */
       
   818 #define __SECURE_TELEPHONY__
       
   819 
       
   820 /**
       
   821 @publishedPartner
       
   822 @released
       
   823 
       
   824 SYMBIAN_CAF_V2
       
   825 
       
   826 The SYMBIAN_CAF_V2 flag indicates the CAF API v2 is present. 
       
   827 CAF v2 supports files containing multiple content objects, which requires 
       
   828 a change of API for CAF agents: agents written for CAF v1 will not compile
       
   829 against CAF v2. See BR.1219.2 for migration information.
       
   830 
       
   831 This #define supports PREQ780.
       
   832 */
       
   833 #define SYMBIAN_CAF_V2
       
   834 
       
   835 /**
       
   836 SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION
       
   837 
       
   838 @publishedPartner
       
   839 @released
       
   840 
       
   841 This macro enables a consolidation phase in the ROM building 
       
   842 process to generate additional metadata for each ROM drive.  
       
   843 The metadata describes the content and structure of the ROM 
       
   844 conveniently filtered for any component that requires it.
       
   845 
       
   846 Components supply metadata with the "spidata" BUILDROM keyword.
       
   847 
       
   848 This macro supports PREQ806 and other requirements that 
       
   849 eliminate run-time scanning of ROM content.
       
   850 */
       
   851 #define SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION
       
   852 
       
   853 /**
       
   854 @publishedPartner
       
   855 @released
       
   856 
       
   857 SYMBIAN_BLUETOOTH_ESCO_ENABLED
       
   858 
       
   859 Enable support for Bluetooth eSCO synchronous links.  
       
   860 Defining this macro extends the interface to CHCIBase to support 
       
   861 the Synchronous connection commands added in Bluetooth 1.2.
       
   862 */
       
   863 #define SYMBIAN_BLUETOOTH_ESCO_ENABLED
       
   864 
       
   865 /**
       
   866 @publishedPartner
       
   867 @released
       
   868 
       
   869 SYMBIAN_SECURE_MIDLET_INSTALL
       
   870 
       
   871 If SYMBIAN_SECURE_MIDLET_INSTALL is defined then the Java MIDlet 
       
   872 Installer supports installation under Platform Security policies, 
       
   873 using the interface published by security\JavaMIDletInstaller.
       
   874 
       
   875 If SYMBIAN_SECURE_MIDLET_INSTALL is not defined then Java MIDlet 
       
   876 installation is achieved through the security\appinst interfaces.
       
   877 */
       
   878 #define SYMBIAN_SECURE_MIDLET_INSTALL
       
   879 
       
   880 /**
       
   881 @publishedAll
       
   882 @released
       
   883 
       
   884 SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2
       
   885 
       
   886 If SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2 is defined then 
       
   887 the following additional features will be available in CONE.
       
   888 1) Functions to set and get the background of a control.
       
   889 2) Functions to add components to a compound control in a simpler way.
       
   890 3) Hooks for the support of layout managers.
       
   891 4) A component that will provide fonts and cache them for easier use 
       
   892    of these fonts by controls.
       
   893 
       
   894 @see CCoeControl
       
   895 */
       
   896 #define SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2
       
   897 
       
   898 /**
       
   899 @publishedAll
       
   900 @released
       
   901 
       
   902 SYMBIAN_CNTMODEL_V2
       
   903 
       
   904 If SYMBIAN_CNTMODEL_V2 is defined, clients of the
       
   905 Contacts Model can exploit the efficiency improvements
       
   906 introduced by PREQ811, e.g. efficient use of transactions. 
       
   907 
       
   908 This #define supports PREQ811
       
   909 */
       
   910 #define SYMBIAN_CNTMODEL_V2
       
   911 
       
   912 /**
       
   913 @publishedAll
       
   914 @released
       
   915 
       
   916 SYMBIAN_COREAPPS_PLUGIN_API_V2
       
   917 
       
   918 If SYMBIAN_COREAPPS_PLUGIN_API_V2 is defined then  Ecom solely is used as loading 
       
   919 mechanism.The legacy plugin loading mechanism is used otherwise.
       
   920 */
       
   921 #define SYMBIAN_COREAPPS_PLUGIN_API_V2
       
   922 
       
   923 /**
       
   924 @internalAll
       
   925 
       
   926 DO_NOT_USE_THIS_MACRO
       
   927 
       
   928 If DO_NOT_USE_THIS_MACRO is defined, assume the Cedar platform.
       
   929 If DO_NOT_USE_THIS_MACRO is not defined, assume the Beech platform.
       
   930 
       
   931 This macro was originally introduced as a stopgap measure, to
       
   932 identify differences between Symbian OS v7.0s and Symbian OS v8.0b
       
   933 which were not specifically to do with the change from Kernel
       
   934 Architecture 1 to Kernel Architecture 2.
       
   935 
       
   936 This macro will be deprecated when a suitable alternative is provided.
       
   937 */
       
   938 #ifndef DO_NOT_USE_THIS_MACRO
       
   939 #define DO_NOT_USE_THIS_MACRO
       
   940 #endif
       
   941 
       
   942 /** 
       
   943 @publishedPartner
       
   944 @released
       
   945 
       
   946 SYMBIAN_C32ROOT_API_V2
       
   947 
       
   948 Strengthens the C32Root API and extends it to include 
       
   949 configuration of queue length for bindings. 
       
   950 
       
   951 This #define supports PREQ318.
       
   952 */
       
   953 #define SYMBIAN_C32ROOT_API_V2
       
   954 
       
   955 /**
       
   956 @publishedAll
       
   957 @released
       
   958 
       
   959 __SECURE_API__
       
   960 
       
   961 Hides unsecure APIs. Many of these have been replaced by Secure variants 
       
   962 but some are no longer available in a Secure platform.
       
   963 
       
   964 e.g.
       
   965 
       
   966 @see User::RenameThread
       
   967 @see User::CommandLine
       
   968 
       
   969 */
       
   970 #define __SECURE_API__
       
   971 #define SYMBIAN_REMOVE_INSECURE_API
       
   972 
       
   973 /**
       
   974 @publishedAll
       
   975 @released
       
   976 
       
   977 __CNF_FORMAT_V2__
       
   978 
       
   979 If __CNF_FORMAT_V2__ is defined, assume that Epoccnf.pl generates
       
   980 files in version 2 of the CNF format, and that both versions 1
       
   981 and 2 of this file format can be read by Conarc.
       
   982 If __CNF_FORMAT_V2__ is not defined, assume that Epoccnf.pl
       
   983 generates files in version 1 of the CNF format, and that only
       
   984 version 1 of this file format can be read by Conarc.
       
   985 */
       
   986 #define __CNF_FORMAT_V2__
       
   987 
       
   988 /** 
       
   989 @publishedPartner 
       
   990 @released
       
   991 
       
   992 SYMBIAN_SUPPORT_LINKED_FONTS 
       
   993 
       
   994 If SYMBIAN_SUPPORT_LINKED_FONTS is defined then APIs are provided 
       
   995 to create 'linked' font instances which combine glyph sets from 
       
   996 multiple existing font glyph sets.
       
   997 
       
   998 @see CLinkedTypefaceElement
       
   999 @see CLinkedTypefaceSpecification
       
  1000 
       
  1001 This #define supports PREQ1431.
       
  1002 */ 
       
  1003 #define SYMBIAN_SUPPORT_LINKED_FONTS
       
  1004 
       
  1005 /**
       
  1006 @publishedPartner
       
  1007 @released
       
  1008 
       
  1009 SYMBIAN_SECURE_DBMS
       
  1010 
       
  1011 When SYMBIAN_SECURE_DBMS is defined, support for secure 
       
  1012 shared databases is enabled within DBMS.  
       
  1013 When not defined, all secure-shared-database-specific APIs 
       
  1014 take the form of dummy implementations which return KErrNone.
       
  1015 */
       
  1016 #define SYMBIAN_SECURE_DBMS
       
  1017 
       
  1018 /**
       
  1019 @publishedAll
       
  1020 @released
       
  1021 
       
  1022 SYMBIAN_ASSUME_SECURE_DATA
       
  1023 
       
  1024 When this macro is defined, all data files are assumed to be in their secure
       
  1025 locations, and all code which provided backward compatibility for the
       
  1026 insecure locations is removed. For example, ICL extended resource files
       
  1027 will not be loaded from System\Libs\Plugins, only from \Resource\ICL.
       
  1028 
       
  1029 This macro only makes sense if __SECURE_DATA__ is defined.
       
  1030 */
       
  1031 #define SYMBIAN_ASSUME_SECURE_DATA
       
  1032 
       
  1033 /**
       
  1034 @publishedAll
       
  1035 @deprecated
       
  1036 @since 8.0
       
  1037 
       
  1038 __KEYSTORE_API_V2__
       
  1039 
       
  1040 */
       
  1041 #define __KEYSTORE_API_V2__
       
  1042 
       
  1043 /**
       
  1044 @publishedAll
       
  1045 @released
       
  1046 
       
  1047 __SECURE_DATA__
       
  1048 
       
  1049 When __SECURE_DATA__ is defined, public read-only files are
       
  1050 assumed to be in their data-caged locations. The presence of
       
  1051 this #define does not imply that data-caging is enforced, and
       
  1052 does not imply that binaries have been relocated to sys\bin.
       
  1053 
       
  1054 This #define supports PREQ537 "Platform security - file system layout".
       
  1055 */
       
  1056 #define __SECURE_DATA__
       
  1057 
       
  1058 /**
       
  1059 @publishedAll
       
  1060 @released
       
  1061 
       
  1062 SYMBIAN_NETWORKING_PLATSEC
       
  1063 
       
  1064 If SYMBIAN_NETWORKING_PLATSEC is defined, additional platform security 
       
  1065 related functionality in enabled in the Comms-Infras and Networking 
       
  1066 subsystems (e.g. API policing).
       
  1067 */
       
  1068 #define SYMBIAN_NETWORKING_PLATSEC
       
  1069 
       
  1070 /**
       
  1071 @publishedAll
       
  1072 @released
       
  1073 
       
  1074 __CONDITIONS_SCHEDULES_VALID__
       
  1075 
       
  1076 If __CONDITIONS_SCHEDULES_VALID__ is defined then the Task Scheduler component 
       
  1077 supports creating persistent schedules based on a set of conditions and a 
       
  1078 timeout. The schedule is run when either all the conditions are met or the 
       
  1079 timeout is reached.
       
  1080 
       
  1081 This functionality is part of PREQ694 - PREQ 694 - Automatic sending of SMS on
       
  1082 network reconnection.
       
  1083 */
       
  1084 #define __CONDITIONS_SCHEDULES_VALID__
       
  1085 
       
  1086 /**
       
  1087 @internalComponent
       
  1088 
       
  1089 __LEAVE_EQUALS_THROW__
       
  1090 
       
  1091 If __LEAVE_EQUALS_THROW__ is defined, User::Leave() and TRAP() are 
       
  1092 implemented in terms of C++ exceptions where the compiler supports this.
       
  1093 If __LEAVE_EQUALS_THROW__ is not defined, the legacy Symbian exception 
       
  1094 mechanism is used instead.
       
  1095 
       
  1096 Support for C++ exceptions by the compiler is indicated by the 
       
  1097 internal macro __SUPPORT_CPP_EXCEPTIONS__ supplied by the tools.  
       
  1098 Where this macro is not present, __LEAVE_EQUALS_THROW__ is automatically 
       
  1099 undefined.
       
  1100 
       
  1101 This macro supports PREQ519 "Implement User::Leave() in terms of throw()".
       
  1102 */
       
  1103 #define __LEAVE_EQUALS_THROW__
       
  1104 
       
  1105 /**
       
  1106 @publishedAll
       
  1107 @released
       
  1108 
       
  1109 __BLUETOOTH_API_V2__
       
  1110 
       
  1111 If __BLUETOOTH_API_V2__ is defined assume that version 2 of the bluetooth
       
  1112 subsystem will be built.  This is binary compatible with version 1 for all
       
  1113 published-all APIs but is not source compatible.  Users of classes defined
       
  1114 in BTDevice.h and BTManClient.h may need to make source changes.
       
  1115 
       
  1116 The BTRegistry.dll is removed, users should link instead against BTManClient.lib.
       
  1117 The APIs provided by that DLL were classified as published-partner.
       
  1118 
       
  1119 @see CBTDevice
       
  1120 @see SGL.GT172.103 - Bluetooth Compatibility Specification
       
  1121 
       
  1122 If __BLUETOOTH_API_V2__ is not defined then version 1 of the bluetooth subsystem
       
  1123 will be built.
       
  1124 
       
  1125 */
       
  1126 #define __BLUETOOTH_API_V2__
       
  1127 
       
  1128 /**
       
  1129 @publishedAll
       
  1130 @released
       
  1131 
       
  1132 __BLUETOOTH_HCI_ALLOWS_AFH__
       
  1133 
       
  1134 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. 
       
  1135 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. 
       
  1136 The APIs provided by the HCI DLL were classified as published-partner.
       
  1137 
       
  1138 @see CHCIBase
       
  1139 @see MHCIEventObserver
       
  1140 
       
  1141 */
       
  1142 #define __BLUETOOTH_HCI_ALLOWS_AFH__
       
  1143 
       
  1144 /**
       
  1145 @publishedAll
       
  1146 @released
       
  1147 
       
  1148 EKA2
       
  1149 
       
  1150 If EKA2 is defined, assume Kernel Architecture 2.
       
  1151 If EKA2 is not defined, assume Kernel Architecture 1
       
  1152 
       
  1153 Kernel Architecture 2 is a defining property of the Cedar platform.
       
  1154 Kernel Architecture 1 is a defining property of the Beech platform.
       
  1155 */
       
  1156 #ifndef EKA2
       
  1157 #define EKA2
       
  1158 #endif
       
  1159 
       
  1160 /**
       
  1161 @publishedPartner
       
  1162 @released
       
  1163 
       
  1164 SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1
       
  1165 
       
  1166 When SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1 is defined a new EColor16MA 
       
  1167 display mode is available, having an alpha channel. The alpha support 
       
  1168 is tailored to the needs of wserv server-side, although some alpha 
       
  1169 support will also be available to client applications.
       
  1170 
       
  1171 This #define supports PREQ915.
       
  1172 */
       
  1173 #define SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1
       
  1174 
       
  1175 /**
       
  1176 @publishedPartner
       
  1177 @released
       
  1178 
       
  1179 __SECURE_SOFTWARE_INSTALL__
       
  1180 
       
  1181 When __SECURE_SOFTWARE_INSTALL__ is defined, the Software
       
  1182 Install APIs are replaced with versions appropriate to
       
  1183 the Secure Platform.
       
  1184 
       
  1185 This #define supports PREQ56 "Software install enhancements"
       
  1186 */
       
  1187 #define __SECURE_SOFTWARE_INSTALL__
       
  1188 
       
  1189 /**
       
  1190 @publishedPartner
       
  1191 @released
       
  1192 
       
  1193 SYMBIAN_ESOCK_V3
       
  1194 
       
  1195 If SYMBIAN_ESOCK_V3 is defined, the socket server allows protocol 
       
  1196 families to run in individual threads to protect one protocol family 
       
  1197 from the behaviour of another. The allocation of protocol families to
       
  1198 threads is determined by a naming convention on the ESK files.
       
  1199 
       
  1200 This #define supports PREQ318.
       
  1201 */
       
  1202 #define SYMBIAN_ESOCK_V3
       
  1203 
       
  1204 /**
       
  1205 @publishedAll
       
  1206 @released
       
  1207 
       
  1208 SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES
       
  1209 
       
  1210 If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is defined, threads at 
       
  1211 priority SystemServer/More (i.e. process priorities EPriorityFileServer, 
       
  1212 EPriorityWindowServer or EPrioritySupervisor with relative thread priority 
       
  1213 EPriorityMore) are mapped to absolute priority 23, equal to the highest 
       
  1214 priority available to normal applications. This lowers the Window Server 
       
  1215 and File Server priorities so application threads can timeslice with them, 
       
  1216 benefitting audio and other pseudo real-time applications.
       
  1217 
       
  1218 If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is not defined, these system server 
       
  1219 priorities remain at 24, preempting all normal user application threads.
       
  1220 
       
  1221 This #define supports PREQ955, and BR1821.
       
  1222 */
       
  1223 #define SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES
       
  1224 
       
  1225 /**
       
  1226 @publishedAll
       
  1227 @deprecated
       
  1228 @since 8.0
       
  1229 
       
  1230 SYMBIAN_CRYPTO
       
  1231 
       
  1232 */
       
  1233 #define SYMBIAN_CRYPTO
       
  1234 
       
  1235 /**
       
  1236 @internalAll
       
  1237 SYMBIAN_J2ME_USE_CALENDAR
       
  1238                 
       
  1239 Internal macro - do not use outside Symbian code.
       
  1240 */
       
  1241 #define SYMBIAN_J2ME_USE_CALENDAR
       
  1242 
       
  1243 
       
  1244 /**
       
  1245 @publishedPartner
       
  1246 @released
       
  1247 
       
  1248 SYMBIAN_CENREPNOTIFIERHANDLER
       
  1249 
       
  1250 If SYMBIAN_CENREPNOTIFIERHANDLER is defined, the Central 
       
  1251 Repository notifier handler is present.
       
  1252 
       
  1253 @see CCenRepNotifyHandler
       
  1254 @see MCenRepNotifyHandlerCallback
       
  1255 
       
  1256 This #define supports PREQ1802. 
       
  1257 */
       
  1258 #define SYMBIAN_CENREPNOTIFIERHANDLER
       
  1259 
       
  1260 
       
  1261 /**
       
  1262 @publishedAll
       
  1263 @released
       
  1264 
       
  1265 SYMBIAN_BAFL_SYSUTIL
       
  1266  
       
  1267 If SYMBIAN_BAFL_SYSUTIL is defined, the bafl sysutil.dll is present, 
       
  1268 providing APIs for obtaining system version information and 
       
  1269 APIs for monitoring free disk space.
       
  1270 
       
  1271 @see SysUtil::GetSWVersion
       
  1272 @see SysUtil::DiskSpaceBelowCriticalLevelL
       
  1273 
       
  1274 This #define supports PREQ1802.
       
  1275 */
       
  1276 #define SYMBIAN_BAFL_SYSUTIL
       
  1277 
       
  1278 
       
  1279 /**
       
  1280 @publishedPartner
       
  1281 @released
       
  1282 
       
  1283 SYMBIAN_BAFL_ACTIVITYMGR
       
  1284  
       
  1285 If SYMBIAN_BAFL_ACTIVITYMGR is defined, the bafl activitymgr.dll is 
       
  1286 presentand provides an API that allows the client to take action at the 
       
  1287 start and/or end of a period of user inactivity.
       
  1288 
       
  1289 @see CUserActivityManager::Start
       
  1290 
       
  1291 This #define supports PREQ1802.
       
  1292 */
       
  1293 #define SYMBIAN_BAFL_ACTIVITYMGR
       
  1294 
       
  1295 
       
  1296 /**
       
  1297 @publishedPartner
       
  1298 @released
       
  1299 
       
  1300 SYMBIAN_CLIENTPROV_V2
       
  1301 
       
  1302 If SYMBIAN_CLIENTPROV_V2 is defined then the client provisioning
       
  1303 documents will be pushed to Inbox by default, and a new API is
       
  1304 added to submit the documents from Inbox back to CPAgent.
       
  1305 
       
  1306 @see RCpMsvDocInputSession
       
  1307 
       
  1308 This is a source and binary compatibility break: see BR2092.
       
  1309 
       
  1310 This #define supports PREQ1664
       
  1311 */
       
  1312 #define SYMBIAN_CLIENTPROV_V2
       
  1313 
       
  1314 
       
  1315  /**
       
  1316 @publishedPartner
       
  1317 @released
       
  1318 
       
  1319 SYMBIAN_CRYPTOSPI
       
  1320 
       
  1321 The SYMBIAN_CRYPTOSPI flag indicates that the Crypto SPI is present.
       
  1322 Crypto SPI (Service Provider Interface) supports licensee-pluggable 
       
  1323 cryptographic algorithms (e.g. for enabling hardware acceleration), 
       
  1324 and also allows for future extensibility of the cryptography 
       
  1325 interfaces (e.g. for supporting future hashes and ciphers and 
       
  1326 to support non-extractable private keys). 
       
  1327 
       
  1328 This #define supports PREQ57.
       
  1329 */
       
  1330 #define SYMBIAN_CRYPTOSPI
       
  1331 
       
  1332 
       
  1333 /**
       
  1334 @publishedPartner 
       
  1335 @released
       
  1336 
       
  1337 SYMBIAN_C32_SERCOMMS_V2
       
  1338 
       
  1339 Description: 
       
  1340 If SYMBIAN_C32_SERCOMMS_V2 is defined, the Comms Server allows grouped CSYs
       
  1341 to get loaded into individual threads in order to avoid CSY blocking. 
       
  1342 The allocation of CSYs to threads is determined by naming convention from 
       
  1343 the configurator/INI file. 
       
  1344 This #define supports PREQ890
       
  1345 
       
  1346 */
       
  1347 #define SYMBIAN_C32_SERCOMMS_V2
       
  1348 
       
  1349 
       
  1350 /**
       
  1351 @publishedPartner
       
  1352 @released
       
  1353 
       
  1354 SYMBIAN_DEVMAN_BEARER_CONFIGURABLE
       
  1355 
       
  1356 If SYMBIAN_DEVMAN_BEARER_CONFIGURABLE is defined then the 
       
  1357 device management support for network bearers can configured 
       
  1358 using the resource file 'dmnapddf.rss'
       
  1359 
       
  1360 This #define supports CR1011
       
  1361 */
       
  1362 #define SYMBIAN_DEVMAN_BEARER_CONFIGURABLE
       
  1363 
       
  1364 
       
  1365 /**
       
  1366 @publishedPartner
       
  1367 @released
       
  1368 
       
  1369 SYMBIAN_NETWORKING_DHCP_MSG_HEADERS
       
  1370 
       
  1371 If SYMBIAN_NETWORKING_DHCP_MSG_HEADERS is defined, the 
       
  1372 Symbian OS DHCPv4 daemon supports retrieval of 
       
  1373 DHCP message header fields and also 'Parameter Request List' 
       
  1374 in the DHCP request message to the remote DHCP server is 
       
  1375 configurable.
       
  1376 
       
  1377 This #define supports PREQ1647 and PREQ1648
       
  1378 */
       
  1379 #define SYMBIAN_NETWORKING_DHCP_MSG_HEADERS
       
  1380 
       
  1381 
       
  1382 
       
  1383 /** 
       
  1384 @publishedAll
       
  1385 @released
       
  1386 
       
  1387 SYMBIAN_DRM_3RD_PARTY_PLAYBACK
       
  1388 
       
  1389 If SYMBIAN_DRM_3RD_PARTY_PLAYBACK is defined, the Multimedia Framework
       
  1390 supports the playback of DRM-protected content by processes which do not 
       
  1391 have the DRM capability.
       
  1392 
       
  1393 @see RMMFController
       
  1394 
       
  1395 This #define supports CR1058.
       
  1396 */
       
  1397 #define SYMBIAN_DRM_3RD_PARTY_PLAYBACK
       
  1398 
       
  1399 
       
  1400 /**
       
  1401 @publishedAll
       
  1402 @released
       
  1403 
       
  1404 SYMBIAN_USE_MMF_RUF_RECOGNIZER
       
  1405 
       
  1406 If SYMBIAN_USE_MMF_RUF_RECOGNIZER is defined, the MMF recognizer is able to 
       
  1407 recognize formats such as MPEG4, MPEG2, AAC and Divx.
       
  1408 */
       
  1409 #define SYMBIAN_USE_MMF_RUF_RECOGNIZER
       
  1410 
       
  1411 
       
  1412 /** 
       
  1413 @publishedPartner 
       
  1414 @released
       
  1415 
       
  1416 SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS 
       
  1417 
       
  1418 If SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS is defined, the Symbian JPEG 
       
  1419 codec implements the PREQ1630 ICL API extensions. 
       
  1420 
       
  1421 @see CImageDecoder::SetClippingRectL
       
  1422 @see CImageDecoder::GetDestinationSize
       
  1423 @see CImageDecoder::PrepareL
       
  1424 @see CImageDecoder::OperationL
       
  1425 @see CImageDecoder::ScalerL
       
  1426 @see CImageDecoder::BlockStreamerL
       
  1427 @see CImageEncoder::PrepareL
       
  1428 @see CImageEncoder::OperationL
       
  1429 @see CImageEncoder::BlockStreamerL
       
  1430 
       
  1431 This #define supports PREQ1630. 
       
  1432 */
       
  1433 #define SYMBIAN_ENABLE_1630_JPEG_EXTENSIONS
       
  1434 
       
  1435 /**
       
  1436 @publishedPartner
       
  1437 @released
       
  1438 
       
  1439 SYMBIAN_LFFS_SIBLEY_NORFLASH
       
  1440 
       
  1441 If SYMBIAN_LFFS_SIBLEY_NORFLASH is defined support for LFFS on 
       
  1442 Intel Sibley NOR flash is enabled.
       
  1443 
       
  1444 This #define supports PREQ912 and involves a BC break in the 
       
  1445 parameter list for DMediaDriverFlash::Caps() - see BR1680 for details.
       
  1446 */
       
  1447 #define SYMBIAN_LFFS_SIBLEY_NORFLASH
       
  1448 
       
  1449  /** 
       
  1450 @publishedPartner 
       
  1451 @released
       
  1452 
       
  1453 SYMBIAN_LOCATION_PRIVACY_V2 
       
  1454 
       
  1455 If SYMBIAN_LOCATION_PRIVACY_V2 is defined, the Symbian LBS sub-system 
       
  1456 includes support for the advanced privacy dialogs and standalone 
       
  1457 privacy components.
       
  1458 
       
  1459 This #define supports PREQ1660. 
       
  1460 */
       
  1461 #define SYMBIAN_LOCATION_PRIVACY_V2
       
  1462 
       
  1463 
       
  1464 /** 
       
  1465 @publishedPartner 
       
  1466 @released
       
  1467 
       
  1468 SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER
       
  1469 	
       
  1470 If SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER is defined, the Media Device
       
  1471 Framework (MDF) will use the RSoundSc sound driver interface.
       
  1472 If this macro is not defined, MDF will use the older RMdaDevSound interface.
       
  1473 
       
  1474 BR2079 gives further details of the migration needed by customers who 
       
  1475 are using the Symbian reference DevSound with their own implementation
       
  1476 of RMdaDevSound.
       
  1477 
       
  1478 @see RMdaDevSound
       
  1479 @see RSoundSc
       
  1480 */
       
  1481 #define SYMBIAN_MDF_SHAREDCHUNK_SOUNDDRIVER
       
  1482 
       
  1483 
       
  1484 /**
       
  1485 @publishedPartner
       
  1486 @released
       
  1487 
       
  1488 SYMBIAN_MESSAGESTORE_USING_SQLDB
       
  1489 
       
  1490 If SYMBIAN_MESSAGESTORE_USING_SQLDB is defined then messaging server
       
  1491 uses the SQLite database to store message index data.
       
  1492 */
       
  1493 #define SYMBIAN_MESSAGESTORE_USING_SQLDB
       
  1494 
       
  1495 
       
  1496 /**
       
  1497 @publishedAll
       
  1498 @released
       
  1499 
       
  1500 SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS 
       
  1501 
       
  1502 If SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS is defined, new
       
  1503 APIs are provided in cone.lib and ws32.lib which allow 
       
  1504 applications to draw to multiple displays simultaneously and 
       
  1505 react to a change of the active display.
       
  1506 
       
  1507 This #define supports PREQ1227
       
  1508 
       
  1509 @see CCoeEnv::ScreenDevice
       
  1510 @see CScreenItem
       
  1511 */
       
  1512 #define SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS
       
  1513 
       
  1514 
       
  1515 /** 
       
  1516 @publishedPartner 
       
  1517 @released
       
  1518 
       
  1519 SYMBIAN_POWER_RESOURCE_MANAGER_API 
       
  1520 
       
  1521 If SYMBIAN_POWER_RESOURCE_MANAGER_API is defined, the Power Resource 
       
  1522 Manager is available. 
       
  1523 
       
  1524 @see PowerResourceManager 
       
  1525 @see DPowerResourceController 
       
  1526 
       
  1527 This #define supports PREQ1398. 
       
  1528 */
       
  1529 #define SYMBIAN_POWER_RESOURCE_MANAGER_API
       
  1530 
       
  1531 
       
  1532 /**
       
  1533 @publishedAll
       
  1534 @released
       
  1535 
       
  1536 SYMBIAN_PROCESS_MONITORING_AND_STARTUP
       
  1537 
       
  1538 If defined, the System Startup architecture supports dynamic startup
       
  1539 for after market applications, and provides the SysMon process to
       
  1540 monitor critical system processes.
       
  1541 
       
  1542 @see DscStore::Connect
       
  1543 @see ERestartOS
       
  1544 
       
  1545 This define supports PREQ871 and PREQ1089.
       
  1546 */
       
  1547 #define SYMBIAN_PROCESS_MONITORING_AND_STARTUP
       
  1548 
       
  1549 
       
  1550 /** 
       
  1551 @publishedAll 
       
  1552 @released
       
  1553 
       
  1554 SYMBIAN_TUNER_RDS_ANNOUNCEMENT 
       
  1555 
       
  1556 If SYMBIAN_TUNER_RDS_ANNOUNCEMENT is defined, the RDS Tuner API 
       
  1557 is provided, allowing applications to be notified if the radio
       
  1558 is retuned to another station in order to listen to an announcement.  
       
  1559 
       
  1560 @see MMMRdsTunerUtilityImpl 
       
  1561 @see MMMRdsAnnouncementObserver2 
       
  1562 @see CMMRdsTunerUtility 
       
  1563 
       
  1564 This #define supports CR1097. 
       
  1565 */
       
  1566 #define SYMBIAN_TUNER_RDS_ANNOUNCEMENT
       
  1567 
       
  1568 
       
  1569 /** 
       
  1570 @publishedAll
       
  1571 @released
       
  1572 
       
  1573 SYMBIAN_USER_PROMPT_SERVICE
       
  1574 
       
  1575 If SYMBIAN_USER_PROMPT_SERVICE is defined, the User Prompt 
       
  1576 Service is available, allowing system servers to prompt the 
       
  1577 user to make a security decision about a request from a client 
       
  1578 application, e.g. "Allow application X to send an SMS message?" 
       
  1579 
       
  1580 @see RupSubsession::Authorise 
       
  1581 
       
  1582 This #define is associated with PREQ1262.
       
  1583 */ 
       
  1584 #define SYMBIAN_USER_PROMPT_SERVICE
       
  1585 
       
  1586 
       
  1587 
       
  1588 /** 
       
  1589 @publishedPartner 
       
  1590 @released
       
  1591 
       
  1592 SYMBIAN_MULTIMEDIA_MUF 
       
  1593 
       
  1594 If SYMBIAN_MULTIMEDIA_MUF is defined, then the PREQ1823 Multimedia 
       
  1595 Metadata Utility Framework is delivered in to the OS.
       
  1596 
       
  1597 @see CMetaDataClientUtility
       
  1598 @see CMUFParserType
       
  1599 @see MMUFObserver
       
  1600 @see CMetaDataFieldsArray
       
  1601 @see CMetaDataFieldItem
       
  1602 @see CMetaDataParser
       
  1603 
       
  1604 This #define supports PREQ1823. 
       
  1605 */
       
  1606 #define SYMBIAN_MULTIMEDIA_MUF
       
  1607 
       
  1608 
       
  1609 /**
       
  1610 @publishedAll
       
  1611 @released
       
  1612 
       
  1613 SYMBIAN_MBUFMANAGER_V2
       
  1614 
       
  1615 
       
  1616 SYMBIAN_MBUFMANAGER_V2 make several changes in 
       
  1617 the CMBufManager including multiple sized RMBuf's.
       
  1618 This #define supports REQ7857, REQ7860, REQ7864, REQ8585, REQ8586
       
  1619 developed as part of PREQ1248.
       
  1620 These changes introduces a BR-2242.
       
  1621 */
       
  1622 #define	SYMBIAN_MBUFMANAGER_V2
       
  1623 
       
  1624 
       
  1625 /**
       
  1626 @publishedPartner
       
  1627 @released
       
  1628 
       
  1629 SYMBIAN_FEATURE_MANAGER
       
  1630 
       
  1631 If SYMBIAN_FEATURE_MANAGER is defined then the Feature Registry 
       
  1632 functionality is implemented via the Feature Manager, with
       
  1633 corresponding changes in the ROM building tools.
       
  1634 
       
  1635 This #define supports PREQ1645
       
  1636 */
       
  1637 #define SYMBIAN_FEATURE_MANAGER
       
  1638 
       
  1639 
       
  1640 /**
       
  1641 @publishedAll
       
  1642 @released
       
  1643 
       
  1644 SYMBIAN_BUILD_GCE
       
  1645 
       
  1646 If SYMBIAN_BUILD_GCE is defined, the Surface Manager and Graphics 
       
  1647 Composition Engine APIs are available at build time.
       
  1648 
       
  1649 @see RWindowBase::SetBackgroundSurface
       
  1650 @see RSurfaceManager
       
  1651 @see RSurfaceUpdateSession
       
  1652 
       
  1653 Note that the Surface Manager and GCE executables are optional, 
       
  1654 and will not be present in the ROM or the emulator unless 
       
  1655 appropriately configured.
       
  1656 
       
  1657 This #define supports PREQ1007 and PREQ1019
       
  1658 */
       
  1659 #define SYMBIAN_BUILD_GCE
       
  1660 
       
  1661 
       
  1662 /** 
       
  1663 @publishedAll 
       
  1664 @released
       
  1665 
       
  1666 SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY 
       
  1667 
       
  1668 If SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY is defined 
       
  1669 then the comms-infras framework supports the management plane 
       
  1670 with the RCommsManager API providing support for connection 
       
  1671 selection, bearer mobility and other functionality.
       
  1672 
       
  1673 This #define supports PREQ 1060 and PREQ 399. 
       
  1674 */
       
  1675 #define SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY
       
  1676 
       
  1677 /**
       
  1678 @publishedPartner
       
  1679 @released
       
  1680 
       
  1681 SYMBIAN_CAF_STREAMING
       
  1682 
       
  1683 If SYMBIAN_CAF_STREAMING is defined then CAF provides support for 
       
  1684 streamed broadcast protection standards, such as DVB-H or OMA DRM BCAST.
       
  1685 
       
  1686 This #define supports PREQ782
       
  1687 */
       
  1688 #define SYMBIAN_CAF_STREAMING
       
  1689 
       
  1690 
       
  1691 /** 
       
  1692 @publishedPartner
       
  1693 @released
       
  1694 
       
  1695 SYMBIAN_ENABLE_USB_OTG_HOST
       
  1696 
       
  1697 If SYMBIAN_ENABLE_USB_OTG_HOST is defined, executables related 
       
  1698 to USB Host and USB OTG will be built in addition to the 
       
  1699 existing support for USB Client.
       
  1700 
       
  1701 These additional components are necessary to enable building a 
       
  1702 ROM incorporating USB Client, Host and OTG functionality.
       
  1703 
       
  1704 This #define supports PREQ1782
       
  1705 */			
       
  1706 #define SYMBIAN_ENABLE_USB_OTG_HOST
       
  1707 
       
  1708 /** 
       
  1709 @publishedPartner
       
  1710 @released
       
  1711 
       
  1712 SYMBIAN_MULTIMEDIA_A3FDEVSOUND 
       
  1713 
       
  1714 If SYMBIAN_MULTIMEDIA_A3FDEVSOUND is defined, the PREQ1540 DevSound API is 
       
  1715 present in the Advanced Audio Adaptation Framework
       
  1716 
       
  1717 This #define supports PREQ1540. 
       
  1718 */
       
  1719 #define SYMBIAN_MULTIMEDIA_A3FDEVSOUND 
       
  1720 
       
  1721 /**
       
  1722 @publishedAll
       
  1723 @released
       
  1724 
       
  1725 SYMBIAN_OS_EXCLUDE_DMCPDS
       
  1726 
       
  1727 When this macro is enabled, OMA dataSync, Device Management and Client Provisioning protocol 
       
  1728 implementations will be excluded.
       
  1729 
       
  1730 This #define supports PREQ2474.
       
  1731 */	
       
  1732 #define SYMBIAN_OS_EXCLUDE_DMCPDS
       
  1733 
       
  1734 /**
       
  1735 @publishedPartner
       
  1736 @released
       
  1737 
       
  1738 SYMBIAN_USB_RNDIS
       
  1739 		
       
  1740 If SYMBIAN_USB_RNDIS is defined, SYMBIAN OS will provide USB Remote NDIS class (this affects Bluetooth PAN as well).
       
  1741 
       
  1742 This #define supports PREQ1872.
       
  1743 */
       
  1744 #define SYMBIAN_USB_RNDIS
       
  1745 
       
  1746 /**
       
  1747 @internalAll
       
  1748 @released
       
  1749 
       
  1750 SYMBIAN_ALARM_REPEAT_EXTENSIONS
       
  1751 If SYMBIAN_ALARM_REPEAT_EXTENSIONS is defined then the client APIs delivered by PREQ2069 will be avilable.
       
  1752 These APIs introduce an additional alarm repeat definition and a new alarm expiry behaviour. 
       
  1753 
       
  1754 #define supports PREQ2069.
       
  1755 */
       
  1756 #define SYMBIAN_ALARM_REPEAT_EXTENSIONS
       
  1757 
       
  1758 /** 
       
  1759 @publishedPartner 
       
  1760 
       
  1761 SYMBIAN_BAFL_MULTIPARTPARSER 
       
  1762 
       
  1763 If SYMBIAN_BAFL_MULTIPARTPARSER is defined then the BAFL 
       
  1764 component provides the MultipartParser.dll functionality. 
       
  1765 
       
  1766 This #define supports PREQ2051. 
       
  1767 */
       
  1768 #define SYMBIAN_BAFL_MULTIPARTPARSER
       
  1769 
       
  1770 /**
       
  1771 @internalAll
       
  1772 @released
       
  1773 
       
  1774 SYMBIAN_CENTREP_SUPPORT_MULTIROFS
       
  1775 
       
  1776 If SYMBIAN_CENTREP_SUPPORT_MULTIROFS is defined, centralrepository client
       
  1777 will be able to define keyspaces that are composed of multiple files in different ROFS layers.
       
  1778 
       
  1779 This #define supports PREQ2112
       
  1780 */
       
  1781 #define SYMBIAN_CENTREP_SUPPORT_MULTIROFS
       
  1782 
       
  1783 /**
       
  1784 @publishedPartner
       
  1785 @released
       
  1786 
       
  1787 SYMBIAN_DNS_PROXY
       
  1788 
       
  1789 If SYMBIAN_DNS_PROXY is defined, SYMBIAN OS will provide DNS Proxy Service.
       
  1790 
       
  1791 This define supports PREQ1684.
       
  1792 */
       
  1793 #define SYMBIAN_DNS_PROXY
       
  1794 
       
  1795 /**
       
  1796 @publishedPartner
       
  1797 @released
       
  1798 
       
  1799 SYMBIAN_DNS_PUNYCODE
       
  1800 
       
  1801 If SYMBIAN_DNS_PUNYCODE is defined, this will enable punycode conversion 
       
  1802 functionality in the system. If SYMBIAN_DNS_PUNYCODE is enabled, then the DND 
       
  1803 can resolve the International Domain Names also. As per the requirement, application 
       
  1804 can use this punycode conversion.
       
  1805 
       
  1806 This define supports PREQ2296.
       
  1807 */
       
  1808 #define SYMBIAN_DNS_PUNYCODE
       
  1809 
       
  1810 /**
       
  1811 @publishedAll
       
  1812 
       
  1813 SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
       
  1814 
       
  1815 Enables the File Server Client side API for large file access (file size greater than 2GB - 1).
       
  1816 Enables the configurable part of File Server side to support large files.
       
  1817 
       
  1818 This #define supports PREQ1725
       
  1819 */
       
  1820 #define SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
       
  1821 
       
  1822 /**
       
  1823 @publishedPartner
       
  1824 @released
       
  1825 
       
  1826 SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
       
  1827 
       
  1828 If SYMBIAN_ENABLE_FAT_DIRECTORY_OPT is defined, a size-configurable
       
  1829 Leaf Directory Name Caching and optimisations to file creation operations
       
  1830 is enabled to improve performance of locating leaf directories and
       
  1831 file creation on FAT volumes.
       
  1832 
       
  1833 This #define supports PREQ1885.
       
  1834 */
       
  1835 #define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
       
  1836 
       
  1837 /** 
       
  1838 @publishedAll
       
  1839 @released
       
  1840 
       
  1841 SYMBIAN_EUSERHL
       
  1842 
       
  1843 EUserHl generic usability library
       
  1844 
       
  1845 This #define supports PREQ2177
       
  1846 */
       
  1847 #define SYMBIAN_EUSERHL
       
  1848 
       
  1849 /**
       
  1850 @publishedPartner
       
  1851 SYMBIAN_LOCATION_BTGPSCONFIG
       
  1852 
       
  1853 Allows applications that use the LBS subsystem to automatically utilize the best Bluetooth GPS positioning source
       
  1854 available (rather than be manually configured to a particular Bluetooth GPS device)
       
  1855 
       
  1856 */
       
  1857 #define SYMBIAN_LOCATION_BTGPSCONFIG
       
  1858 
       
  1859 /**
       
  1860 @publishedAll
       
  1861 @released
       
  1862 
       
  1863 SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH
       
  1864 
       
  1865 If SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH is defined then the client 
       
  1866 side of  messaging server provides enhanced search capabilities.
       
  1867 */
       
  1868 #define SYMBIAN_MESSAGESTORE_ENHANCED_SEARCH
       
  1869 
       
  1870 /** 
       
  1871 @publishedPartner 
       
  1872 @released 
       
  1873 
       
  1874 SYMBIAN_NETWORKING_ADDRESS_PROVISION 
       
  1875 
       
  1876 If SYMBIAN_NETWORKING_ADDRESS_PROVISION is defined, this will enable 
       
  1877 the DHCP server to provide IP address to the client based on its 
       
  1878 hardware address, this hardware address is provisioned by the 
       
  1879 application which is loading the DHCP server. Also NAPT will 
       
  1880 forward any packets to the uplink only if the source address is 
       
  1881 provisioned. 
       
  1882 
       
  1883 This define supports PREQ1872. 
       
  1884 */
       
  1885 #define SYMBIAN_NETWORKING_ADDRESS_PROVISION
       
  1886 
       
  1887 /**
       
  1888 
       
  1889 @internalComponent
       
  1890 
       
  1891 SYMBIAN_OE_LIBRT
       
  1892 
       
  1893 If SYMBIAN_OE_LIBRT is defined, the open environment component will be extended to include the 
       
  1894 Symbian OS port of the latest version of librt ("realtime") open source library. 
       
  1895 
       
  1896 This #define supports PREQ1974
       
  1897 
       
  1898 */
       
  1899 #define SYMBIAN_OE_LIBRT
       
  1900 
       
  1901 /**
       
  1902 
       
  1903 @internalComponent
       
  1904 
       
  1905 SYMBIAN_OE_POSIX_SIGNALS
       
  1906 
       
  1907 If SYMBIAN_OE_POSIX_SIGNALS is enabled, the libc component will use POSIX signals emulation.
       
  1908 
       
  1909 This #define supports PREQ1579
       
  1910 
       
  1911 */
       
  1912 #define SYMBIAN_OE_POSIX_SIGNALS
       
  1913 
       
  1914 /**
       
  1915 @publishedPartner
       
  1916 
       
  1917 SYMBIAN_SDP_IPSEC_VOIP_SUPPORT
       
  1918 
       
  1919 If SYMBIAN_SDP_IPSEC_VOIP_SUPPORT is defined, then PREQ1853 APIs enable use of the cipher based MAC evaluation 
       
  1920 and psuedo random generation algorithms (AES-XCBC-MAC-96 and AES-XCBC-PRF-128 respectively) through a new MAC
       
  1921 interface introduced in the CryptoSpi framework.
       
  1922 
       
  1923 Tbis #define supports PREQ1853
       
  1924 */
       
  1925 #define SYMBIAN_SDP_IPSEC_VOIP_SUPPORT
       
  1926 
       
  1927 /**
       
  1928 @internalAll
       
  1929 @released
       
  1930 
       
  1931 SYMBIAN_SKIPPED_CALENDAR_ALARMS
       
  1932 
       
  1933 If SYMBIAN_SKIPPED_CALENDAR_ALARMS is present then the alarm server shall
       
  1934 persist details of missed calendar alarms and clients shall be able to 
       
  1935 retrieve the list of missed calendar alarms from the Alarm server client API.
       
  1936 
       
  1937 This supports PREQ2088.
       
  1938 */
       
  1939 #define SYMBIAN_SKIPPED_CALENDAR_ALARMS
       
  1940 
       
  1941 /** 
       
  1942 @internalTechnology
       
  1943 
       
  1944 SYMBIAN_SSM_FLEXIBLE_MERGE 
       
  1945 
       
  1946 When SYMBIAN_SSM_FLEXIBLE_MERGE is enabled then flexible merging 
       
  1947 of startup command lists based on priority is supported.
       
  1948 
       
  1949 This define supports PREQ1871.
       
  1950 */
       
  1951 #define SYMBIAN_SSM_FLEXIBLE_MERGE
       
  1952 
       
  1953 /** 
       
  1954 @internalAll 
       
  1955 
       
  1956 SYMBIAN_SSM_GRACEFUL_SHUTDOWN 
       
  1957 
       
  1958 If SYMBIAN_SSM_GRACEFUL_SHUTDOWN is defined, this will enable
       
  1959 Staged Shutdown of the device,	which allows definition of
       
  1960 a policy to specify the order for notifying registered
       
  1961 components of shutdown, allowing them to perform any necessary
       
  1962 tasks before the device completes its shutdown.
       
  1963 
       
  1964 This define supports PREQ2326.
       
  1965 */
       
  1966 #define SYMBIAN_SSM_GRACEFUL_SHUTDOWN
       
  1967 
       
  1968 /**
       
  1969 @publishedPartner
       
  1970 @released
       
  1971 
       
  1972 SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING
       
  1973 
       
  1974 If SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING is defined then
       
  1975 the TCP/IP stack shall support explictly bound sockets.
       
  1976 If a socket is explicitly bound and a packet arrives on an interface
       
  1977 that the socket isn't bound to, then the packet should be dropped.
       
  1978 
       
  1979 This define supports PREQ2279.
       
  1980 */
       
  1981 #define SYMBIAN_STRICT_EXPLICIT_SOCKET_BINDING
       
  1982 
       
  1983 /**
       
  1984 @publishedAll
       
  1985 
       
  1986 SYMBIAN_SWI_RUN_ON_INSTALL_COMPLETE
       
  1987 
       
  1988 This new Macro will enable the support for new run option for SIS files . When executables/files inside 
       
  1989 SIS file marked with this new run option, they will be executed at the end of the successful installation.
       
  1990 
       
  1991 This #define supports PREQ2264, CR1544
       
  1992 */
       
  1993 #define SYMBIAN_SWI_RUN_ON_INSTALL_COMPLETE
       
  1994 
       
  1995 /** 
       
  1996 @publishedPartner
       
  1997 @released
       
  1998 
       
  1999 SYMBIAN_SYSTEM_STATE_MANAGEMENT 
       
  2000 
       
  2001 If SYMBIAN_SYSTEM_STATE_MANAGEMENT is defined, this will enable 
       
  2002 the System State Management Architecture, which supports the 
       
  2003 concept of system states (including startup, normal operation, 
       
  2004 shutdown, and failure) and associated behaviour, and facilitates 
       
  2005 the transitioning between them according to licensee-defined 
       
  2006 policies and procedures.
       
  2007 
       
  2008 This define supports PREQ1871.
       
  2009 */
       
  2010 #define SYMBIAN_SYSTEM_STATE_MANAGEMENT
       
  2011 
       
  2012 /**
       
  2013 @internalAll
       
  2014 
       
  2015 SYMBIAN_WRITABLE_DATA_PAGING
       
  2016 
       
  2017 This System Wide Define will be used to issue a warning when a rom is built that enables data paging on a 
       
  2018 version of the OS for which data paging is not warranted.
       
  2019 
       
  2020 This #define supports PREQ1954
       
  2021 */
       
  2022 #define SYMBIAN_WRITABLE_DATA_PAGING
       
  2023 
       
  2024 /**
       
  2025 @publishedPartner
       
  2026 @released
       
  2027 
       
  2028 SYMBIAN_ZERO_COPY_NETWORKING
       
  2029 
       
  2030 If SYMBIAN_ZERO_COPY_NETWORKING is defined the Comms Stack switches from using single memory pool overseen
       
  2031 by MBufManager to multiple, HW specific pools. With SYMBIAN_ZERO_COPY_NETWORKING defined link-level flows
       
  2032 can avoid copying data when communicating with the respective HW drivers.
       
  2033 
       
  2034 This #define supports PREQ2106.
       
  2035 */
       
  2036 #define SYMBIAN_ZERO_COPY_NETWORKING
       
  2037 
       
  2038 /** 
       
  2039 @publishedPartner 
       
  2040 @released
       
  2041 
       
  2042 SYMBIAN_ENABLE_SPLIT_HEADERS
       
  2043 
       
  2044 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.
       
  2045 
       
  2046 This #define supports PREQ2740 and other splitting "mixed" header file PREQs. 
       
  2047 */
       
  2048 
       
  2049 #define SYMBIAN_ENABLE_SPLIT_HEADERS
       
  2050 
       
  2051 /**
       
  2052 @publishedAll
       
  2053 @released
       
  2054 
       
  2055 SYMBIAN_OE_LIBSTDCPP
       
  2056 
       
  2057 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.
       
  2058 
       
  2059 This #define supports PREQ1184
       
  2060 */
       
  2061 #define SYMBIAN_OE_LIBSTDCPP
       
  2062 
       
  2063 /**
       
  2064 @publishedPartner
       
  2065 @released
       
  2066 
       
  2067 SYMBIAN_E32_ATOMIC_API
       
  2068 
       
  2069 If SYMBIAN_E32_ATOMIC_API is defined the header file e32atomics.h is available
       
  2070 and should be used in preference to hand-coding ARM atomic instructions.
       
  2071 */
       
  2072 #define SYMBIAN_E32_ATOMIC_API
       
  2073 /**
       
  2074 @internalAll
       
  2075 
       
  2076 SYMBIAN_GRAPHICS_FIXNATIVEORIENTATION
       
  2077 
       
  2078 If SYMBIAN_GRAPHICS_FIXNATIVEORIENTATION is enabled, the Orientation Independent Windows feature is enabled.
       
  2079 */
       
  2080 #define SYMBIAN_GRAPHICS_FIXNATIVEORIENTATION
       
  2081 /** 
       
  2082 @publishedPartner
       
  2083  @released
       
  2084  
       
  2085  SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
       
  2086  
       
  2087 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)
       
  2088  and the window size will change as the bearer changes or the modulation of the bearer changes.
       
  2089   #define supports PREQ1854.
       
  2090  
       
  2091 */
       
  2092 #define SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW
       
  2093 
       
  2094 /**
       
  2095 @internalAll
       
  2096 
       
  2097 SYMBIAN_EMULATOR_SUPPORTS_PERPROCESS_WSD
       
  2098 
       
  2099 If SYMBIAN_EMULATOR_SUPPORTS_PERPROCESS_WSD is enabled, Symbian emulator will have support for per-(emulated) process writable static data.
       
  2100 */
       
  2101 #define SYMBIAN_EMULATOR_SUPPORTS_PERPROCESS_WSD
       
  2102