test_hrh.hrh 31 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225
  1. /*
  2. * Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
  3. * All rights reserved.
  4. * This component and the accompanying materials are made available
  5. * under the terms of the License "Eclipse Public License v1.0"
  6. * which accompanies this distribution, and is available
  7. * at the URL "http://www.eclipse.org/legal/epl-v10.html".
  8. *
  9. * Initial Contributors:
  10. * Nokia Corporation - initial contribution.
  11. *
  12. * Contributors:
  13. *
  14. * Description:
  15. * test_hrh.hrh (base on Symbian_OS_v9.4.hrh)
  16. *
  17. */
  18. #include <subdir/test_hrh_include.h>
  19. /**
  20. @publishedAll
  21. EKA2
  22. If EKA2 is defined, assume Kernel Architecture 2.
  23. If EKA2 is not defined, assume Kernel Architecture 1
  24. Kernel Architecture 2 is a defining property of the Cedar platform.
  25. Kernel Architecture 1 is a defining property of the Beech platform.
  26. */
  27. #ifndef EKA2
  28. #define EKA2
  29. #endif
  30. /**
  31. @publishedAll
  32. @deprecated
  33. @since 8.0
  34. SYMBIAN_CRYPTO
  35. */
  36. #define SYMBIAN_CRYPTO
  37. /**
  38. @publishedAll
  39. __CNF_FORMAT_V2__
  40. If __CNF_FORMAT_V2__ is defined, assume that Epoccnf.pl generates
  41. files in version 2 of the CNF format, and that both versions 1
  42. and 2 of this file format can be read by Conarc.
  43. If __CNF_FORMAT_V2__ is not defined, assume that Epoccnf.pl
  44. generates files in version 1 of the CNF format, and that only
  45. version 1 of this file format can be read by Conarc.
  46. */
  47. #define __CNF_FORMAT_V2__
  48. /**
  49. @publishedAll
  50. @deprecated
  51. @since 8.0
  52. __KEYSTORE_API_V2__
  53. */
  54. #define __KEYSTORE_API_V2__
  55. /**
  56. @publishedAll
  57. __BLUETOOTH_API_V2__
  58. If __BLUETOOTH_API_V2__ is defined assume that version 2 of the bluetooth
  59. subsystem will be built. This is binary compatible with version 1 for all
  60. published-all APIs but is not source compatible. Users of classes defined
  61. in BTDevice.h and BTManClient.h may need to make source changes.
  62. The BTRegistry.dll is removed, users should link instead against BTManClient.lib.
  63. The APIs provided by that DLL were classified as published-partner.
  64. @see CBTDevice
  65. @see SGL.GT172.103 - Bluetooth Compatibility Specification
  66. If __BLUETOOTH_API_V2__ is not defined then version 1 of the bluetooth subsystem
  67. will be built.
  68. */
  69. #define __BLUETOOTH_API_V2__
  70. /**
  71. @publishedAll
  72. __OBEX_USER_DEFINED_HEADERS__
  73. If __OBEX_USER_DEFINED_HEADERS__ is defined then the new API support for extended Headers will be available.
  74. This new support includes USER DEFINED HEADERS and the COUNT header.
  75. If this functionality is compiled out then the old API is available as before.
  76. For more information on see documents shown below.
  77. @see SGL.GT171.097 - Obex Header Extension how to
  78. @see SGL.GT171.095 - Obex Extension Design Document
  79. */
  80. #define __OBEX_USER_DEFINED_HEADERS__
  81. /**
  82. @publishedAll
  83. __HIDE_IPC_V1__
  84. 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.
  85. For more information see the document listed below.
  86. @see SMG.SM0005.004 - Platform Security Development for Zephyr
  87. @see CSession
  88. @see CServer
  89. @see RMessage
  90. @see RMessagePtr
  91. */
  92. #define __HIDE_IPC_V1__
  93. /**
  94. @internalAll
  95. DO_NOT_USE_THIS_MACRO
  96. If DO_NOT_USE_THIS_MACRO is defined, assume the Cedar platform.
  97. If DO_NOT_USE_THIS_MACRO is not defined, assume the Beech platform.
  98. This macro was originally introduced as a stopgap measure, to
  99. identify differences between Symbian OS v7.0s and Symbian OS v8.0b
  100. which were not specifically to do with the change from Kernel
  101. Architecture 1 to Kernel Architecture 2.
  102. This macro will be deprecated when a suitable alternative is provided.
  103. */
  104. #ifndef DO_NOT_USE_THIS_MACRO
  105. #define DO_NOT_USE_THIS_MACRO
  106. #endif
  107. /**
  108. @publishedAll
  109. __CONDITIONS_SCHEDULES_VALID__
  110. If __CONDITIONS_SCHEDULES_VALID__ is defined then the Task Scheduler component
  111. supports creating persistent schedules based on a set of conditions and a
  112. timeout. The schedule is run when either all the conditions are met or the
  113. timeout is reached.
  114. This functionality is part of PREQ694 - PREQ 694 - Automatic sending of SMS on
  115. network reconnection.
  116. */
  117. #define __CONDITIONS_SCHEDULES_VALID__
  118. /**
  119. @publishedAll
  120. __JAVACUSTOMINSTALL__
  121. If __JAVACUSTOMINSTALL__ is defined then an additional UI callback is made after MIDlet
  122. installation has succeeded or failed. This callback is intended for information only and the
  123. information passed can be licensee customised. The intention would be that the device user
  124. can use this information to diagnose install problems in conjunction with network operators.
  125. If this #define is not present then the callback is not present and is not called.
  126. For more information on see documents shown below.
  127. @see SGL.GT0188.253 CDMA Java MIDlet Installer Component Design
  128. */
  129. #define __JAVACUSTOMINSTALL__
  130. /**
  131. @publishedAll
  132. __UI_FRAMEWORKS_V2__
  133. If __UI_FRAMEWORKS_V2__ is defined then PlatSec aware UI Frameworks API's will be available.
  134. The following frameworks will be affected:
  135. Applications
  136. File Recognizers
  137. Data Recognizers
  138. Notifiers
  139. Control Panel Plugins
  140. Feps
  141. App-initialization (CEikLibrary)
  142. Converters
  143. Error-Resolving
  144. */
  145. #define __UI_FRAMEWORKS_V2__
  146. #define SYMBIAN_HIDE_UI_FRAMEWORKS_V1
  147. #define SYMBIAN_REMOVE_UI_FRAMEWORKS_V1
  148. /**
  149. @publishedAll
  150. __BLUETOOTH_HCI_ALLOWS_AFH__
  151. 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.
  152. 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.
  153. The APIs provided by the HCI DLL were classified as published-partner.
  154. @see CHCIBase
  155. @see MHCIEventObserver
  156. */
  157. #define __BLUETOOTH_HCI_ALLOWS_AFH__
  158. /**
  159. @publishedAll
  160. __MESSAGING_API_V2__
  161. If __MESSAGING_API_V2__ is defined then new functionality
  162. is available within the Messaging sub-system to support a
  163. platform secured OS, e.g. the Attachment API.
  164. */
  165. #define __MESSAGING_API_V2__
  166. #define __HIDE_MESSAGING_API_V1__
  167. #define __REMOVE_MESSAGING_API_V1__
  168. /**
  169. @internalAll
  170. __BC_FUTURE_PROOFING__
  171. Support for the implementation of PREQ743 "Introduction of interface
  172. robustness patterns to support future binary compatibility".
  173. */
  174. #define __BC_FUTURE_PROOFING__
  175. /**
  176. @publishedAll
  177. __SECURE_DATA__
  178. When __SECURE_DATA__ is defined, public read-only files are
  179. assumed to be in their data-caged locations. The presence of
  180. this #define does not imply that data-caging is enforced, and
  181. does not imply that binaries have been relocated to sys\bin.
  182. This #define supports PREQ537 "Platform security - file system layout".
  183. */
  184. #define __SECURE_DATA__
  185. /**
  186. @publishedPartner
  187. __SECURE_BIN__
  188. When __SECURE_BIN__ is defined, executable files stored as
  189. "data" in the XIP ROM are assumed to be in their data-caged
  190. locations. The presence of this #define does not imply that
  191. data-caging is enforced, and does not imply that binaries have
  192. been relocated to sys\bin.
  193. This #define supports PREQ537 "Platform security - file system layout".
  194. */
  195. #define __SECURE_BIN__
  196. /**
  197. @publishedAll
  198. __SECURE_TELEPHONY__
  199. If __SECURE_TELEPHONY__ is defined, all Platform Security functionality
  200. within the Telephony subsystem will be enabled.
  201. If __SECURE_TELEPHONY__ is not defined, no Platform Security functionality
  202. within the Telephony subsystem is enabled.
  203. */
  204. #define __SECURE_TELEPHONY__
  205. /**
  206. @publishedAll
  207. SYMBIAN_NETWORKING_PLATSEC
  208. If SYMBIAN_NETWORKING_PLATSEC is defined, additional platform security
  209. related functionality in enabled in the Comms-Infras and Networking
  210. subsystems (e.g. API policing).
  211. */
  212. #define SYMBIAN_NETWORKING_PLATSEC
  213. /**
  214. @publishedAll
  215. __WATCHER_API_V2__
  216. If __WATCHER_API_V2__ is defined then the
  217. watcher framework supports ECOM watcher plugins.
  218. */
  219. #define __WATCHER_API_V2__
  220. /**
  221. @publishedAll
  222. SYMBIAN_COREAPPS_API_V2
  223. If SYMBIAN_COREAPPS_API_V2 is defined then new functionality is available within
  224. the Core Apps sub-system (Contacts Model, Agenda Model and World Server) to
  225. support a platform secured OS.
  226. */
  227. #define SYMBIAN_COREAPPS_API_V2
  228. /**
  229. @publishedAll
  230. SYMBIAN_COREAPPS_PLUGIN_API_V2
  231. If SYMBIAN_COREAPPS_PLUGIN_API_V2 is defined then Ecom solely is used as loading
  232. mechanism.The legacy plugin loading mechanism is used otherwise.
  233. */
  234. #define SYMBIAN_COREAPPS_PLUGIN_API_V2
  235. /**
  236. @PublishedPartner
  237. SYMBIAN_SECURE_DBMS
  238. When SYMBIAN_SECURE_DBMS is defined, support for secure
  239. shared databases is enabled within DBMS.
  240. When not defined, all secure-shared-database-specific APIs
  241. take the form of dummy implementations which return KErrNone.
  242. */
  243. #define SYMBIAN_SECURE_DBMS
  244. /**
  245. @publishedPartner
  246. __SECURE_SOFTWARE_INSTALL__
  247. When __SECURE_SOFTWARE_INSTALL__ is defined, the Software
  248. Install APIs are replaced with versions appropriate to
  249. the Secure Platform.
  250. This #define supports PREQ56 "Software install enhancements"
  251. */
  252. #define __SECURE_SOFTWARE_INSTALL__
  253. /**
  254. @publishedAll
  255. __SECURITY_PLATSEC_ARCH__
  256. If this macro is defined, then platform security aware security services
  257. APIs will be present. This includes architectural changes to several
  258. components.
  259. If this macro is not defined, the original version (since 8.0) of the
  260. security services APIs will be present.
  261. The following components are affected:
  262. cryptotokens
  263. certman
  264. filetokens
  265. */
  266. #define __SECURITY_PLATSEC_ARCH__
  267. /**
  268. @publishedAll
  269. SYMBIAN_SECURE_ECOM
  270. When SYMBIAN_SECURE_ECOM is not defined, ECOM plugins are discovered by
  271. searching for DLLs in System\libs\plugins, and inferring the name of
  272. the resource file from the UID3 of the DLL.
  273. When SYMBIAN_SECURE_ECOM is defined, ECOM plugins will also be discovered
  274. by searching for resource files in \Resource\Plugins, and inferring the
  275. name of the DLL from the name of the resource file. When platform security
  276. is fully enforced, only this new style of discovery will work.
  277. @see common\generic\syslibs\documentation\syslibs_functional_specification.doc
  278. */
  279. #define SYMBIAN_SECURE_ECOM
  280. /**
  281. @publishedAll
  282. SYMBIAN_SECURITY_CAF_RFILE_HANDLE
  283. If SYMBIAN_SECURITY_CAF_RFILE_HANDLE is defined then it enables the Content Access
  284. Framework to read from files passed to it as an open RFile handles instead of CAF
  285. opening the file itself. This allows files stored in a data caged directory to be
  286. read by CAF.
  287. */
  288. #define SYMBIAN_SECURITY_CAF_RFILE_HANDLE
  289. /**
  290. @publishedPartner
  291. SYMBIAN_C32ROOT_API_V2
  292. Strengthens the C32Root API and extends it to include
  293. configuration of queue length for bindings.
  294. This #define supports PREQ318.
  295. */
  296. #define SYMBIAN_C32ROOT_API_V2
  297. /**
  298. @publishedPartner
  299. SYMBIAN_ESOCK_V3
  300. If SYMBIAN_ESOCK_V3 is defined, the socket server allows protocol
  301. families to run in individual threads to protect one protocol family
  302. from the behaviour of another. The allocation of protocol families to
  303. threads is determined by a naming convention on the ESK files.
  304. This #define supports PREQ318.
  305. */
  306. #define SYMBIAN_ESOCK_V3
  307. /**
  308. @publishedPartner
  309. SYMBIAN_UIKON_UNIFICATION
  310. When SYMBIAN_UIKON_UNIFICATION is defined, the existing
  311. CEikSrvAppUiBase class is replaced with a customisable class
  312. provided by the System GUI.
  313. This #define supports PREQ819 and PREQ826
  314. */
  315. #define SYMBIAN_UIKON_UNIFICATION
  316. /**
  317. @publishedPartner
  318. @released 9.0
  319. SYMBIAN_NETWORKING_RSUBCONNECTION
  320. If SYMBIAN_NETWORKING_RSUBCONNECTION is defined, the RQosChannel API is
  321. removed, and the RSubConnection API exported by ESOCK must be used instead.
  322. This #define supports PREQ 26.
  323. */
  324. #define SYMBIAN_NETWORKING_RSUBCONNECTION
  325. /**
  326. @publishedAll
  327. SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2
  328. If SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2 is defined then
  329. the following additional features will be available in CONE.
  330. 1) Functions to set and get the background of a control.
  331. 2) Functions to add components to a compound control in a simpler way.
  332. 3) Hooks for the support of layout managers.
  333. 4) A component that will provide fonts and cache them for easier use
  334. of these fonts by controls.
  335. @see CCoeControl
  336. */
  337. #define SYMBIAN_UI_FRAMEWORKS_CONTROL_API_V2
  338. /**
  339. @publishedPartner
  340. SYMBIAN_SECURE_MIDLET_INSTALL
  341. If SYMBIAN_SECURE_MIDLET_INSTALL is defined then the Java MIDlet
  342. Installer supports installation under Platform Security policies,
  343. using the interface published by security\JavaMIDletInstaller.
  344. If SYMBIAN_SECURE_MIDLET_INSTALL is not defined then Java MIDlet
  345. installation is achieved through the security\appinst interfaces.
  346. */
  347. #define SYMBIAN_SECURE_MIDLET_INSTALL
  348. /**
  349. @publishedAll
  350. __SECURE_BACKUP__
  351. If __SECURE_BACKUP__ is defined, the Secure Backup server replaces
  352. the use of SCRemFs for backup and restore, changing the backup protocol.
  353. Applications which have private data need to provide additional backup
  354. registration files, and may use Publish & Subscribe to receive
  355. notification of backup requests.
  356. This #define supports PREQ716 - Provide support for secure backup and
  357. restore for licensee PC Connectivity software
  358. */
  359. #define __SECURE_BACKUP__
  360. /**
  361. @published All
  362. SYMBIAN_COMMS_REPOSITORY
  363. Comms data is now stored in the Central Repository rather than the DBMS server.
  364. A new module, CommsDat.dll, replaces Commdb.dll as the interface for comms data stored on a device.
  365. CommsDat has a different API to Commdb, but provides equivalent functionality.
  366. There is no longer an SQL API for access to Comms Data.
  367. Commdb tools have been migrated for use with CommsDat
  368. Commdb is deprecated and should not be used, though it remains as a temporary BC shim on top of CommsDat.
  369. */
  370. #define SYMBIAN_COMMS_REPOSITORY
  371. /**
  372. @publishedAll
  373. __HIDE_WATCHER_API_V1__
  374. Hides support APIs for loading non-ECOM watcher plugins. Non-ECOM watcher
  375. plugins are still loaded. The associated define __REMOVE_WATCHER_API_V1__
  376. removes the implementation of the support APIs.
  377. Assumes that __WATCHER_API_V2__ has been defined.
  378. */
  379. #define __HIDE_WATCHER_API_V1__
  380. #define __REMOVE_WATCHER_API_V1__
  381. /**
  382. @publishedAll
  383. SYMBIAN_NETWORKING_REMOVE_RGENERIC
  384. If this macro is defined the deprecated APIs RGenericAgent,
  385. RNif, RNifMonitor and Nifman are removed. All of these APIs,
  386. exported by NIFMAN, have been deprecated and replaced by
  387. the RConnection API exported by ESOCK.
  388. @see Break request BR1070
  389. */
  390. #define SYMBIAN_NETWORKING_REMOVE_RGENERIC
  391. /**
  392. @publishedPartner
  393. SYMBIAN_IGNORE_BIN_TARGETPATH
  394. When SYMBIAN_IGNORE_BIN_TARGETPATH is defined the TARGETPATH keyword in MMP files is ignored for executables.
  395. Executables for the emulator instead get built to the default location.
  396. e.g. \epoc32\release\winscw\udeb
  397. */
  398. #define SYMBIAN_IGNORE_BIN_TARGETPATH
  399. /**
  400. @publishedAll
  401. SYMBIAN_HIDE_COREAPPS_API_V1
  402. If SYMBIAN_HIDE_COREAPPS_API_V1 is defined then the insecure CoreApps APIs
  403. will be removed from various Symbian OS header files. Components affected are
  404. Contacts Model, Agenda Model and World Server.
  405. The related define SYMBIAN_REMOVE_COREAPPS_API_V1 removes the underlying implementations,
  406. causing a binary compatibility break to match the source compatibility break.
  407. */
  408. #define SYMBIAN_HIDE_COREAPPS_API_V1
  409. #define SYMBIAN_REMOVE_COREAPPS_API_V1
  410. /**
  411. @publishedAll
  412. __SECURE_API__
  413. Hides unsecure APIs. Many of these have been replaced by Secure variants
  414. but some are no longer available in a Secure platform.
  415. e.g.
  416. @see User::RenameThread
  417. @see User::CommandLine
  418. */
  419. #define __SECURE_API__
  420. #define SYMBIAN_REMOVE_INSECURE_API
  421. /**
  422. @publishedPartner
  423. @since 8.1
  424. SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT
  425. If this is defined, the MHCIEventObserver class must implement
  426. the FlushCompleteEvent virtual function, which will be used by
  427. the link manager to send Flush Complete events up to the stack.
  428. If this macro is not defined, Flush Complete events will be discarded.
  429. @see MHCIEventObserver
  430. @see CHCIFacade
  431. */
  432. #define SYMBIAN_BLUETOOTH_REQUIRES_HCI_FLUSH_COMPLETE_EVENT
  433. /**
  434. @publishedPartner
  435. SYMBIAN_FONT_METRICS_V2
  436. If this is defined, then classes which derive from COpenFont (usually
  437. these are part of a font rasterizer implementation) must set the
  438. protected member variables:
  439. iFontAscentOfCapitals
  440. iFontAscentIncAccents
  441. iFontDescent
  442. iFontLineGap
  443. to appropriate values during the creation of a font.
  444. If this macro is not defined then these member variables do not exist.
  445. @see COpenFont
  446. */
  447. #define SYMBIAN_FONT_METRICS_V2
  448. /**
  449. @publishedPartner
  450. SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1
  451. When SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1 is defined a new EColor16MA
  452. display mode is available, having an alpha channel. The alpha support
  453. is tailored to the needs of wserv server-side, although some alpha
  454. support will also be available to client applications.
  455. This #define supports PREQ915.
  456. */
  457. #define SYMBIAN_GRAPHICS_ALPHA_SUPPORT_V1
  458. /**
  459. @publishedPartner
  460. SYMBIAN_TELEPHONY_IMS
  461. If SYMBIAN_TELEPHONY_IMS is defined then IMS related APIs are included
  462. in Telephony components.
  463. This #define supports PREQ61.
  464. */
  465. #define SYMBIAN_TELEPHONY_IMS
  466. /**
  467. @internalComponent
  468. __LEAVE_EQUALS_THROW__
  469. If __LEAVE_EQUALS_THROW__ is defined, User::Leave() and TRAP() are
  470. implemented in terms of C++ exceptions where the compiler supports this.
  471. If __LEAVE_EQUALS_THROW__ is not defined, the legacy Symbian exception
  472. mechanism is used instead.
  473. Support for C++ exceptions by the compiler is indicated by the
  474. internal macro __SUPPORT_CPP_EXCEPTIONS__ supplied by the tools.
  475. Where this macro is not present, __LEAVE_EQUALS_THROW__ is automatically
  476. undefined.
  477. This macro supports PREQ519 "Implement User::Leave() in terms of throw()".
  478. */
  479. #define __LEAVE_EQUALS_THROW__
  480. /**
  481. @publishedPartner
  482. SYMBIAN_CAF_V2
  483. The SYMBIAN_CAF_V2 flag indicates the CAF API v2 is present.
  484. CAF v2 supports files containing multiple content objects, which requires
  485. a change of API for CAF agents: agents written for CAF v1 will not compile
  486. against CAF v2. See BR.1219.2 for migration information.
  487. This #define supports PREQ780.
  488. */
  489. #define SYMBIAN_CAF_V2
  490. /**
  491. @publishedAll
  492. SYMBIAN_MDF_API_V2
  493. This macro selects the Symbian OS 9.x phase of development in
  494. the Media Device Framework API, including changes to enable
  495. MDF Video Decoder Hardware devices to support applications,
  496. streaming and demux.
  497. @see CMMFVideoPlayHwDevice
  498. */
  499. #define SYMBIAN_MDF_API_V2
  500. /**
  501. SYMBIAN_GENERIC_SYSTEM_STARTUP
  502. @publishedPartner
  503. This #define enables the generic start-up architecture in
  504. which the System Starter process is responsible for the
  505. controlled startup of the system.
  506. The #define supports PREQ808 and PREQ809.
  507. */
  508. #define SYMBIAN_GENERIC_SYSTEM_STARTUP
  509. /**
  510. SYMBIAN_STAGED_SYSTEM_STARTUP
  511. @publishedPartner
  512. When SYMBIAN_STAGED_SYSTEM_STARTUP is defined, the staged
  513. start-up architecture has been introduced into the OS and
  514. 'Start-up State Aware' components can make use of the
  515. architecture.
  516. This #define supports PREQ 810.
  517. */
  518. #define SYMBIAN_STAGED_SYSTEM_STARTUP
  519. /**
  520. SYMBIAN_TIMEZONE_SUPPORT_V1
  521. @publishedAll
  522. When SYMBIAN_TIMEZONE_SUPPORT_V1 is defined the App-services TzClient.dll
  523. module (and accompanying import library) is made available for client
  524. application use.
  525. This #define supports PREQ663
  526. */
  527. #define SYMBIAN_TIMEZONE_SUPPORT_V1
  528. /**
  529. SYMBIAN_ECAM_CHUNKAPI
  530. @publishedAll
  531. @released
  532. Specifies that an extended API will be used in the multimedia
  533. camera interface. This has a v2 observer which allows camera data
  534. to be returned without buffer copy, and also allows clients to set
  535. camera access priority
  536. @see CCamera
  537. @see MCameraObserver2
  538. This #define supports PREQ799.
  539. */
  540. #define SYMBIAN_ECAM_CHUNKAPI
  541. /**
  542. @publishedAll
  543. SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE
  544. If this macro is defined, then the Bluetooth stack reconfigures to take
  545. advantage of security mechanisms in Publish and Subscribe. Any other
  546. components requiring reconfiguration to make use of Publish and Subscribe
  547. can also use this macro.
  548. */
  549. #define SYMBIAN_SECURE_PUBLISH_AND_SUBSCRIBE
  550. /**
  551. @publishedAll
  552. SYMBIAN_MMF_AUTOPAUSE_RESUME
  553. This #define enables extra features in the MMF APIs for auto pause
  554. and resume of audio streams.
  555. */
  556. #define SYMBIAN_MMF_AUTOPAUSE_RESUME
  557. /**
  558. @publishedPartner
  559. SYMBIAN_BLUETOOTH_ESCO_ENABLED
  560. Enable support for Bluetooth eSCO synchronous links.
  561. Defining this macro extends the interface to CHCIBase to support
  562. the Synchronous connection commands added in Bluetooth 1.2.
  563. */
  564. #define SYMBIAN_BLUETOOTH_ESCO_ENABLED
  565. /**
  566. SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION
  567. @publishedPartner
  568. This macro enables a consolidation phase in the ROM building
  569. process to generate additional metadata for each ROM drive.
  570. The metadata describes the content and structure of the ROM
  571. conveniently filtered for any component that requires it.
  572. Components supply metadata with the "spidata" BUILDROM keyword.
  573. This macro supports PREQ806 and other requirements that
  574. eliminate run-time scanning of ROM content.
  575. */
  576. #define SYMBIAN_ROM_STATIC_PLUGIN_INFORMATION
  577. /**
  578. @publishedPartner
  579. SYMBIAN_BOOKMARK_DATABASE
  580. The Bookmark Database is an API used to provide system-wide
  581. storage and management functionality for URI bookmarks.
  582. If defined, this macro indicates that the Bookmark Database
  583. API is present in the platform.
  584. */
  585. #define SYMBIAN_BOOKMARK_DATABASE
  586. /**
  587. @publishedAll
  588. SYMBIAN_ASSUME_SECURE_DATA
  589. When this macro is defined, all data files are assumed to be in their secure
  590. locations, and all code which provided backward compatibility for the
  591. insecure locations is removed. For example, ICL extended resource files
  592. will not be loaded from System\Libs\Plugins, only from \Resource\ICL.
  593. This macro only makes sense if __SECURE_DATA__ is defined.
  594. */
  595. #define SYMBIAN_ASSUME_SECURE_DATA
  596. /**
  597. @publishedPartner
  598. SYMBIAN_SWI_POST_INSTALL_REVOCATION
  599. When SYMBIAN_SWI_POST_INSTALL_REVOCATION is defined,
  600. support for the SWI post install revocation service is enabled.
  601. This #define supports PREQ919
  602. */
  603. #define SYMBIAN_SWI_POST_INSTALL_REVOCATION
  604. /**
  605. @publishedAll
  606. SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION
  607. This macro removes the trivial encryption APIs that are exported by EUSER.
  608. See BR1320 for more details
  609. */
  610. #define SYMBIAN_REMOVE_TRIVIAL_ENCRYPTION
  611. /**
  612. @publishedPartner
  613. SYMBIAN_FLEXIBLE_ALARM
  614. When this macro is defined, Calendar Interim API, Alarm server and UIKON
  615. Alert Server will support additional functionality.
  616. - Extra data can be attached to calendar alarm and allow UI app
  617. to retrieve the associated data.
  618. - The Alarm server can send multiple expired alarms to Alert Server without
  619. waiting for the previous alarm acknowledged first
  620. - A Resource file can be used to configure alarm play intervals and durations,
  621. or to disable alarm sound control.
  622. This #define supports PREQ1118
  623. */
  624. #define SYMBIAN_FLEXIBLE_ALARM
  625. /**
  626. @publishedPartner
  627. SYMBIAN_C32_SERCOMMS_V2
  628. Description:
  629. If SYMBIAN_C32_SERCOMMS_V2 is defined, the Comms Server allows grouped CSYs
  630. to get loaded into individual threads in order to avoid CSY blocking.
  631. The allocation of CSYs to threads is determined by naming convention from
  632. the configurator/INI file.
  633. This #define supports PREQ890
  634. */
  635. //#define SYMBIAN_C32_SERCOMMS_V2
  636. /**
  637. @publishedPartner
  638. SYMBIAN_SMS_REL6_SUPPORT
  639. SMS Release 6 support is defined in the 3GPP specifications
  640. (3GPP TS 23.040 V6.5.0 and 3GPP TS 23.038 V6.1.0).
  641. If defined, this macro indicates that Symbian OS SMS APIs
  642. shall support Release 6 functionality.
  643. */
  644. #define SYMBIAN_SMS_REL6_SUPPORT
  645. /**
  646. @publishedPartner
  647. SYMBIAN_HCI_API_V2
  648. If SYMBIAN_HCI_API_V2 is defined then the HCI APIs provided in PREQ750
  649. (Bluetooth HCI improvements) will be required for use by a version 2
  650. Bluetooth Stack and a version 2 HCI. These APIs are neither binary nor
  651. source compatible with the previous version 1 HCI APIs. Both the original
  652. version 1 Bluetooth stack and HCI, and the new version 2 Bluetooth stack
  653. and HCI will be built, but both rombuild and the emulator will be
  654. configured to use the version 2 binaries. The version 2 HCI will support
  655. all commands and events listed in Bluetooth v2.0 specification.
  656. If SYMBIAN_HCI_API_V2 is not defined then only the version 1 Bluetooth
  657. stack and HCI will be built and used by rombuild and the emulator.
  658. The version 1 HCI supports most but NOT all commands and events listed
  659. in Bluetooth v2.0 specification.
  660. See BR1613 for more information.
  661. */
  662. //#define SYMBIAN_HCI_API_V2
  663. /**
  664. @publishedPartner
  665. SYMBIAN_NETWORKING_UMTSR5
  666. If SYMBIAN_NETWORKING_UMTSR5 is defined support for the QoS
  667. and IMS parameters introduced by Release 5 of the 3GPP
  668. specification will be enabled. This involves a BC break in
  669. TContextConfig - see BR1582.1 for details.
  670. @see TContextConfig
  671. This #define supports PREQ192 and PREQ635.
  672. */
  673. #define SYMBIAN_NETWORKING_UMTSR5
  674. /**
  675. @publishedPartner
  676. SYMBIAN_NETWORKING_3GPPDEFAULTQOS
  677. If SYMBIAN_NETWORKING_3GPPDEFAULTQOS is defined, support
  678. for QoS modification on the default PDP context will be
  679. enabled via the RSubconnection API.
  680. This #define supports PREQ870.
  681. */
  682. #define SYMBIAN_NETWORKING_3GPPDEFAULTQOS
  683. /**
  684. @publishedAll
  685. SYMBIAN_NETWORKING_WIFI
  686. If SYMBIAN_NETWORKING_WIFI is defined the following WiFi
  687. functionality is enabled:
  688. 1) New WiFi components can be built.
  689. 2) WiFi specific CommsDat tables are enabled.
  690. This #define supports PREQ719 and PREQ1054.
  691. */
  692. #define SYMBIAN_NETWORKING_WIFI
  693. /**
  694. @internalTechnology
  695. SYMBIAN_COMMSDEBUGUTILITY_V2
  696. If SYMBIAN_COMMSDEBUGUTILITY_V2 is defined then COMSDBGUTIL.DLL
  697. becomes a thin layer over the System Tracer. Users of CCFLogIf class
  698. have to migrate to use the __FLOG macros instead.
  699. This change also affects the way that CommsDebugUtility logging is
  700. controlled, and the format of the logs produced. See BR1632 and BR1715.
  701. */
  702. //#define SYMBIAN_COMMSDEBUGUTILITY_V2
  703. /**
  704. @publishedPartner
  705. SYMBIAN_LFFS_SIBLEY_NORFLASH
  706. If SYMBIAN_LFFS_SIBLEY_NORFLASH is defined support for LFFS on
  707. Intel Sibley NOR flash is enabled.
  708. This #define supports PREQ912 and involves a BC break in the
  709. parameter list for DMediaDriverFlash::Caps() - see BR1680 for details.
  710. */
  711. //#define SYMBIAN_LFFS_SIBLEY_NORFLASH
  712. /**
  713. @publishedAll
  714. SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY
  715. If SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY is defined
  716. then the comms-infras framework supports the management plane
  717. with the RCommsManager API providing support for connection
  718. selection, bearer mobility and other functionality.
  719. This #define supports PREQ 1060.
  720. */
  721. //#define SYMBIAN_NON_SEAMLESS_NETWORK_BEARER_MOBILITY
  722. /**
  723. @publishedPartner
  724. SYMBIAN_NETWORKING_IPSEC_IKE_V2
  725. If SYMBIAN_NETWORKING_IPSEC_IKE_V2 is defined, IPSEC will
  726. be able to support Internet Key Exchange version 2 in
  727. addition to IKE v1. This involves a change in the size of
  728. the TPfkeyMsgBase class - see BR1736.1.
  729. Actual support for IKE v2 will depend on the provision
  730. of a suitable plugin to the Key Management Daemon.
  731. This #define supports PREQ1223.
  732. */
  733. #define SYMBIAN_NETWORKING_IPSEC_IKE_V2
  734. /**
  735. @publishedPartner
  736. SYMBIAN_PKCS12
  737. If SYMBIAN_PKCS12 is defined, the PKCS#12 Key Derivation
  738. Algorithm is supplied.
  739. This #define supports PREQ1054.
  740. */
  741. #define SYMBIAN_PKCS12
  742. /**
  743. @publishedAll
  744. SYMBIAN_CNTMODEL_V2
  745. If SYMBIAN_CNTMODEL_V2 is defined, clients of the
  746. Contacts Model can exploit the efficiency improvements
  747. introduced by PREQ811, e.g. efficient use of transactions.
  748. This #define supports PREQ811
  749. */
  750. #define SYMBIAN_CNTMODEL_V2
  751. /**
  752. @publishedAll
  753. SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS
  754. If SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS is defined, new
  755. APIs are provided in cone.lib and ws32.lib which allow
  756. applications to draw to multiple displays simultaneously and
  757. react to a change of the active display.
  758. This #define supports PREQ1227
  759. @see CCoeEnv::ScreenDevice
  760. @see CScreenItem
  761. */
  762. //#define SYMBIAN_WSERV_AND_CONE_MULTIPLE_SCREENS
  763. /**
  764. @publishedPartner
  765. SYMBIAN_CENTREP_NOC
  766. If SYMBIAN_CENTREP_NOC is defined, the Central Repository
  767. includes Notify-Only Client Optimization. This will cause
  768. repositories to be unloaded after a timeout even if the
  769. connection is still open.
  770. This #define supports PREQ1228.
  771. */
  772. #define SYMBIAN_CENTREP_NOC
  773. /**
  774. @publishedAll
  775. SYMBIAN_VARIABLE_BITRATE_CODEC
  776. If SYMBIAN_VARIABLE_BITRATE_CODEC is defined then
  777. CMMFSwCodecWrapper based audio hardware devices in the
  778. Multimedia Framework (MMF) can support variable bitrate codecs.
  779. @see CMMFSwCodecWrapper
  780. */
  781. #define SYMBIAN_VARIABLE_BITRATE_CODEC
  782. /**
  783. @publishedAll
  784. SYMBIAN_SWTRACER_V1
  785. When defined, the new System Wide Tracer APIs are available.
  786. @see SWT::RTracer
  787. This #define supports PREQ505
  788. */
  789. //#define SYMBIAN_SWTRACER_V1
  790. /**
  791. @publishedPartner
  792. SYMBIAN_TELEPHONY_USAT5
  793. If SYMBIAN_TELEPHONY_USAT5 is defined then support for 3GPP
  794. Release 5 (U)SAT will be enabled.
  795. @see RSat::TCallControlV5
  796. This #define supports PREQ1234.
  797. */
  798. #define SYMBIAN_TELEPHONY_USAT5
  799. /**
  800. @publishedAll
  801. SYMBIAN_MULTIMEDIA_CODEC_API
  802. If SYMBIAN_MULTIMEDIA_CODEC_API is defined then support is
  803. available for PREQ1024 delivered Processing Unit or
  804. OpenMAX based codecs and Multimedia hardware devices.
  805. */
  806. #define SYMBIAN_MULTIMEDIA_CODEC_API
  807. /**
  808. @publishedAll
  809. SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES
  810. If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is defined, threads at
  811. priority SystemServer/More (i.e. process priorities EPriorityFileServer,
  812. EPriorityWindowServer or EPrioritySupervisor with relative thread priority
  813. EPriorityMore) are mapped to absolute priority 23, equal to the highest
  814. priority available to normal applications. This lowers the Window Server
  815. and File Server priorities so application threads can timeslice with them,
  816. benefitting audio and other pseudo real-time applications.
  817. If SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES is not defined, these system server
  818. priorities remain at 24, preempting all normal user application threads.
  819. This #define supports PREQ955, and BR1821.
  820. */
  821. #define SYMBIAN_CURB_SYSTEMSERVER_PRIORITIES
  822. /**
  823. @publishedPartner
  824. SYMBIAN_APPARC_APPINFO_CACHE
  825. If SYMBIAN_APPARC_APPINFO_CACHE is defined then apparc creates
  826. a file of application information on the first boot, which is
  827. used during subsequent boots for application information.
  828. */
  829. #define SYMBIAN_APPARC_APPINFO_CACHE
  830. /**
  831. @publishedAll
  832. SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT
  833. If SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT is defined then
  834. the Multimedia Framework (MMF) can support video playback on
  835. a secondary display. The default screen will be the screen
  836. number in the cone environment.
  837. @see CVideoPlayerUtility
  838. */
  839. #define SYMBIAN_ENABLE_MMF_MULTISCREEN_SUPPORT
  840. /**
  841. @publishedAll
  842. SYMBIAN_USE_MMF_RUF_RECOGNIZER
  843. If SYMBIAN_USE_MMF_RUF_RECOGNIZER is defined, the MMF recognizer is able to
  844. recognize formats such as MPEG4, MPEG2, AAC and Divx.
  845. */
  846. #define SYMBIAN_USE_MMF_RUF_RECOGNIZER
  847. /**
  848. @publishedAll
  849. SYMBIAN_NETWORKING_EAP
  850. If SYMBIAN_NETWORKING_EAP is defined the following
  851. functionality is affected:
  852. 1) Generic EAP-Framework Components built
  853. 2) Generic Support EAP-MSCHAPv2, PEAPv0, EAP-TTLS, EAP-TLS, EAP-SIM and EAP-AKA enabled
  854. 3) WiFi specific EAP Framework and EAP Methods not built
  855. This #define supports PREQ1623.
  856. */
  857. //#define SYMBIAN_NETWORKING_EAP
  858. /**
  859. @publishedAll
  860. SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM
  861. If SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM is defined, the Composite
  862. File System allows more than one ROFS partition to be included in
  863. the composite Z: drive.
  864. This #define supports PREQ1085
  865. */
  866. #define SYMBIAN_EXTENDED_COMPOSITE_FILESYSTEM
  867. /**
  868. @publishedPartner
  869. SYMBIAN_SUPPORT_LINKED_FONTS
  870. If SYMBIAN_SUPPORT_LINKED_FONTS is defined then APIs are provided
  871. to create 'linked' font instances which combine glyph sets from
  872. multiple existing font glyph sets.
  873. @see CLinkedTypefaceElement
  874. @see CLinkedTypefaceSpecification
  875. This #define supports PREQ1431.
  876. */
  877. #define SYMBIAN_SUPPORT_LINKED_FONTS