epoc32/include/e32const.h
author William Roberts <williamr@symbian.org>
Tue, 16 Mar 2010 16:12:26 +0000
branchSymbian2
changeset 2 2fe1408b6811
parent 0 061f57f2323e
child 4 837f303aceeb
permissions -rw-r--r--
Final list of Symbian^2 public API header files
williamr@2
     1
// Copyright (c) 1994-2009 Nokia Corporation and/or its subsidiary(-ies).
williamr@2
     2
// All rights reserved.
williamr@2
     3
// This component and the accompanying materials are made available
williamr@2
     4
// under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
williamr@2
     5
// which accompanies this distribution, and is available
williamr@2
     6
// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
williamr@2
     7
//
williamr@2
     8
// Initial Contributors:
williamr@2
     9
// Nokia Corporation - initial contribution.
williamr@2
    10
//
williamr@2
    11
// Contributors:
williamr@2
    12
//
williamr@2
    13
// Description:
williamr@2
    14
// e32\include\e32const.h
williamr@2
    15
// 
williamr@2
    16
//
williamr@2
    17
williamr@2
    18
#ifndef __E32CONST_H__
williamr@2
    19
#define __E32CONST_H__
williamr@2
    20
williamr@2
    21
#include <e32err.h>
williamr@2
    22
#include <e32lang.h>
williamr@2
    23
williamr@2
    24
williamr@2
    25
williamr@2
    26
/**
williamr@2
    27
@publishedAll
williamr@2
    28
@released
williamr@2
    29
williamr@2
    30
The default width value used when appending and justifying data
williamr@2
    31
in a descriptor.
williamr@2
    32
williamr@2
    33
@see TDes16::AppendJustify()
williamr@2
    34
@see TDes16::Justify()
williamr@2
    35
@see TDes8::AppendJustify()
williamr@2
    36
@see TDes8::Justify()
williamr@2
    37
*/
williamr@2
    38
const TInt KDefaultJustifyWidth=(-1);
williamr@2
    39
williamr@2
    40
williamr@2
    41
williamr@2
    42
/**
williamr@2
    43
@publishedAll
williamr@2
    44
@released
williamr@2
    45
williamr@2
    46
Defines the number of TUids that form a TUidType.
williamr@2
    47
williamr@2
    48
@see TUid
williamr@2
    49
@see TUidType
williamr@2
    50
*/
williamr@2
    51
const TInt KMaxCheckedUid=3;
williamr@2
    52
williamr@2
    53
williamr@2
    54
/**
williamr@2
    55
@publishedAll
williamr@2
    56
@released
williamr@2
    57
williamr@2
    58
Defines the number of 32-bit debug trace mask words.
williamr@2
    59
williamr@2
    60
*/
williamr@2
    61
const TInt KNumTraceMaskWords = 8;
williamr@2
    62
williamr@2
    63
williamr@2
    64
/**
williamr@2
    65
@publishedAll
williamr@2
    66
@released
williamr@2
    67
williamr@2
    68
Defines the maximum length for the text form of a UID name.
williamr@2
    69
williamr@2
    70
@see TUidName
williamr@2
    71
@see TUid::Name()
williamr@2
    72
*/
williamr@2
    73
const TInt KMaxUidName=10;
williamr@2
    74
williamr@2
    75
williamr@2
    76
williamr@2
    77
williamr@2
    78
/**
williamr@2
    79
@publishedAll
williamr@2
    80
@released
williamr@2
    81
williamr@2
    82
Defines the maximum length of a module name.
williamr@2
    83
*/
williamr@2
    84
const TInt KMaxModuleVersionName=10;
williamr@2
    85
williamr@2
    86
williamr@2
    87
williamr@2
    88
williamr@2
    89
/**
williamr@2
    90
@publishedAll
williamr@2
    91
@released
williamr@2
    92
williamr@2
    93
Defines the maximum length of the name of a reference counted object.
williamr@2
    94
williamr@2
    95
@see TName
williamr@2
    96
*/
williamr@2
    97
const TInt KMaxName=0x80;
williamr@2
    98
williamr@2
    99
williamr@2
   100
williamr@2
   101
williamr@2
   102
/**
williamr@2
   103
@publishedAll
williamr@2
   104
@released
williamr@2
   105
williamr@2
   106
Defines the maximum length of the name of a reference counted kernel-side object. 
williamr@2
   107
*/
williamr@2
   108
const TInt KMaxKernelName=0x50;
williamr@2
   109
williamr@2
   110
williamr@2
   111
williamr@2
   112
williamr@2
   113
/**
williamr@2
   114
@publishedAll
williamr@2
   115
@released
williamr@2
   116
williamr@2
   117
Defines the maximum size of a process name.
williamr@2
   118
*/
williamr@2
   119
const TInt KMaxProcessName=(KMaxKernelName-KMaxUidName-KMaxModuleVersionName-4);
williamr@2
   120
williamr@2
   121
williamr@2
   122
williamr@2
   123
williamr@2
   124
/**
williamr@2
   125
@publishedAll
williamr@2
   126
@released
williamr@2
   127
williamr@2
   128
Defines the maximum size of a library name.
williamr@2
   129
*/
williamr@2
   130
const TInt KMaxLibraryName=(KMaxKernelName-KMaxUidName-KMaxModuleVersionName);
williamr@2
   131
williamr@2
   132
williamr@2
   133
williamr@2
   134
williamr@2
   135
/**
williamr@2
   136
@publishedAll
williamr@2
   137
@released
williamr@2
   138
williamr@2
   139
Defines the maximum length of a TInfoName object.
williamr@2
   140
*/
williamr@2
   141
const TInt KMaxInfoName=0x10;
williamr@2
   142
williamr@2
   143
williamr@2
   144
williamr@2
   145
williamr@2
   146
/**
williamr@2
   147
@publishedAll
williamr@2
   148
@released
williamr@2
   149
williamr@2
   150
Defines the maximum length of the full name of a reference counted object.
williamr@2
   151
williamr@2
   152
@see TFullName
williamr@2
   153
*/
williamr@2
   154
const TInt KMaxFullName=(KMaxName<<1);
williamr@2
   155
williamr@2
   156
williamr@2
   157
williamr@2
   158
williamr@2
   159
/**
williamr@2
   160
@publishedAll
williamr@2
   161
@released
williamr@2
   162
williamr@2
   163
The maximum length for a password buffer.
williamr@2
   164
williamr@2
   165
@see TPassword
williamr@2
   166
*/
williamr@2
   167
const TInt KMaxPassword=0x10;
williamr@2
   168
williamr@2
   169
williamr@2
   170
williamr@2
   171
williamr@2
   172
/**
williamr@2
   173
@publishedAll
williamr@2
   174
@released
williamr@2
   175
williamr@2
   176
The maximum length of a category name.
williamr@2
   177
williamr@2
   178
@see TExitCategoryName
williamr@2
   179
*/
williamr@2
   180
const TInt KMaxExitCategoryName=0x10;
williamr@2
   181
williamr@2
   182
williamr@2
   183
williamr@2
   184
williamr@2
   185
/**
williamr@2
   186
@publishedAll
williamr@2
   187
@released
williamr@2
   188
williamr@2
   189
The maximum length of the full text name for a day of the week.
williamr@2
   190
williamr@2
   191
@see TDayName
williamr@2
   192
*/
williamr@2
   193
const TInt KMaxDayName=0x20;
williamr@2
   194
williamr@2
   195
williamr@2
   196
williamr@2
   197
williamr@2
   198
/**
williamr@2
   199
@publishedAll
williamr@2
   200
@released
williamr@2
   201
williamr@2
   202
The maximum length of the abbreviated text name for a day of the week.
williamr@2
   203
williamr@2
   204
@see TDayNameAbb
williamr@2
   205
*/
williamr@2
   206
const TInt KMaxDayNameAbb=0x08;
williamr@2
   207
williamr@2
   208
williamr@2
   209
williamr@2
   210
williamr@2
   211
/**
williamr@2
   212
@publishedAll
williamr@2
   213
@released
williamr@2
   214
williamr@2
   215
Defines the maximum size of arrays or data structures required
williamr@2
   216
to hold the names of the days of the week.
williamr@2
   217
*/
williamr@2
   218
const TInt KMaxDays=7;
williamr@2
   219
williamr@2
   220
williamr@2
   221
williamr@2
   222
williamr@2
   223
/**
williamr@2
   224
@publishedAll
williamr@2
   225
@released
williamr@2
   226
williamr@2
   227
The maximum length of the full text name for a month.
williamr@2
   228
williamr@2
   229
@see TDayName
williamr@2
   230
*/
williamr@2
   231
const TInt KMaxMonthName=0x20;
williamr@2
   232
williamr@2
   233
williamr@2
   234
williamr@2
   235
williamr@2
   236
/**
williamr@2
   237
@publishedAll
williamr@2
   238
@released
williamr@2
   239
williamr@2
   240
The maximum length of the abbreviated text name for a month.
williamr@2
   241
williamr@2
   242
@see TMonthNameAbb
williamr@2
   243
*/
williamr@2
   244
const TInt KMaxMonthNameAbb=0x08;
williamr@2
   245
williamr@2
   246
williamr@2
   247
williamr@2
   248
williamr@2
   249
/**
williamr@2
   250
@publishedAll
williamr@2
   251
@released
williamr@2
   252
williamr@2
   253
Defines the maximum size of arrays or data structures required
williamr@2
   254
to hold the names of the months of the year.
williamr@2
   255
*/
williamr@2
   256
const TInt KMaxMonths=12;
williamr@2
   257
williamr@2
   258
williamr@2
   259
williamr@2
   260
williamr@2
   261
/**
williamr@2
   262
@publishedAll
williamr@2
   263
@released
williamr@2
   264
williamr@2
   265
The maximum length of the text for a date suffix.
williamr@2
   266
williamr@2
   267
@see TDateSuffix
williamr@2
   268
*/
williamr@2
   269
const TInt KMaxSuffix=0x04;
williamr@2
   270
williamr@2
   271
williamr@2
   272
williamr@2
   273
williamr@2
   274
/**
williamr@2
   275
@publishedAll
williamr@2
   276
@released
williamr@2
   277
williamr@2
   278
Defines the maximum size of arrays and data structures required
williamr@2
   279
to hold date suffix strings.
williamr@2
   280
*/
williamr@2
   281
const TInt KMaxSuffixes=31;
williamr@2
   282
williamr@2
   283
williamr@2
   284
williamr@2
   285
williamr@2
   286
/**
williamr@2
   287
@publishedAll
williamr@2
   288
@released
williamr@2
   289
williamr@2
   290
The maximum length of the text for AM and PM.
williamr@2
   291
williamr@2
   292
@see TAmPmName
williamr@2
   293
*/
williamr@2
   294
const TInt KMaxAmPmName=0x04;
williamr@2
   295
williamr@2
   296
williamr@2
   297
williamr@2
   298
williamr@2
   299
/**
williamr@2
   300
@publishedAll
williamr@2
   301
@released
williamr@2
   302
williamr@2
   303
Defines the maximum size of arrays and data structures required
williamr@2
   304
to hold am/pm strings.
williamr@2
   305
*/
williamr@2
   306
const TInt KMaxAmPms=2;
williamr@2
   307
williamr@2
   308
williamr@2
   309
williamr@2
   310
williamr@2
   311
/**
williamr@2
   312
@publishedAll
williamr@2
   313
@released
williamr@2
   314
williamr@2
   315
Defines the maximum number of date separator characters in a date string.
williamr@2
   316
*/
williamr@2
   317
const TInt KMaxDateSeparators=4;
williamr@2
   318
williamr@2
   319
williamr@2
   320
williamr@2
   321
williamr@2
   322
/**
williamr@2
   323
@publishedAll
williamr@2
   324
@released
williamr@2
   325
williamr@2
   326
Defines the maximum number of time separator characters in a time string.
williamr@2
   327
*/
williamr@2
   328
const TInt KMaxTimeSeparators=4;
williamr@2
   329
williamr@2
   330
williamr@2
   331
williamr@2
   332
williamr@2
   333
/**
williamr@2
   334
@publishedAll
williamr@2
   335
@released
williamr@2
   336
williamr@2
   337
Defines the maximum size of data structures to hold the translate tables
williamr@2
   338
for Western European alphabetic conversions.
williamr@2
   339
*/
williamr@2
   340
const TInt KMaxTranslateTable=0x100;
williamr@2
   341
williamr@2
   342
williamr@2
   343
williamr@2
   344
williamr@2
   345
/**
williamr@2
   346
@publishedAll
williamr@2
   347
@released
williamr@2
   348
williamr@2
   349
The maximum length of the text for a currency symbol.
williamr@2
   350
williamr@2
   351
@see TCurrencySymbol
williamr@2
   352
*/
williamr@2
   353
const TInt KMaxCurrencySymbol=0x08;
williamr@2
   354
williamr@2
   355
williamr@2
   356
williamr@2
   357
williamr@2
   358
/**
williamr@2
   359
@publishedAll
williamr@2
   360
@released
williamr@2
   361
williamr@2
   362
The maximum length of the short date format specification text.
williamr@2
   363
williamr@2
   364
@see TShortDateFormatSpec
williamr@2
   365
*/
williamr@2
   366
const TInt KMaxShortDateFormatSpec=40;
williamr@2
   367
williamr@2
   368
williamr@2
   369
williamr@2
   370
williamr@2
   371
/**
williamr@2
   372
@publishedAll
williamr@2
   373
@released
williamr@2
   374
williamr@2
   375
The maximum length of the short date format specification text.
williamr@2
   376
williamr@2
   377
@see TLongDateFormatSpec
williamr@2
   378
*/
williamr@2
   379
const TInt KMaxLongDateFormatSpec=80;
williamr@2
   380
williamr@2
   381
williamr@2
   382
williamr@2
   383
williamr@2
   384
/**
williamr@2
   385
@publishedAll
williamr@2
   386
@released
williamr@2
   387
williamr@2
   388
The maximum length of the time string formatting commands.
williamr@2
   389
williamr@2
   390
@see TTimeFormatSpec
williamr@2
   391
*/
williamr@2
   392
const TInt KMaxTimeFormatSpec=60;
williamr@2
   393
williamr@2
   394
williamr@2
   395
williamr@2
   396
williamr@2
   397
/**
williamr@2
   398
@publishedAll
williamr@2
   399
@released
williamr@2
   400
williamr@2
   401
Defines the maximum length of a filename.
williamr@2
   402
*/
williamr@2
   403
const TInt KMaxFileName=0x100;
williamr@2
   404
williamr@2
   405
williamr@2
   406
williamr@2
   407
williamr@2
   408
/**
williamr@2
   409
@publishedAll
williamr@2
   410
@released
williamr@2
   411
williamr@2
   412
The maximum length of the character representation of version information.
williamr@2
   413
williamr@2
   414
@see TVersion::Name()
williamr@2
   415
*/
williamr@2
   416
const TInt KMaxVersionName=0x10;
williamr@2
   417
williamr@2
   418
williamr@2
   419
williamr@2
   420
williamr@2
   421
/**
williamr@2
   422
@publishedAll
williamr@2
   423
@released
williamr@2
   424
williamr@2
   425
Defines the maximum length of a path.
williamr@2
   426
williamr@2
   427
@see TPath
williamr@2
   428
*/
williamr@2
   429
const TInt KMaxPath=0x100;
williamr@2
   430
williamr@2
   431
williamr@2
   432
williamr@2
   433
williamr@2
   434
/**
williamr@2
   435
@publishedAll
williamr@2
   436
@released
williamr@2
   437
williamr@2
   438
Defines the maximum length of a TDeviceInfo object.
williamr@2
   439
williamr@2
   440
@see TDeviceInfo
williamr@2
   441
*/
williamr@2
   442
const TInt KMaxDeviceInfo=0x80;
williamr@2
   443
williamr@2
   444
williamr@2
   445
williamr@2
   446
williamr@2
   447
/**
williamr@2
   448
@publishedAll
williamr@2
   449
@released
williamr@2
   450
williamr@2
   451
The maximum size of the password required to unlock a media drive.
williamr@2
   452
*/
williamr@2
   453
const TInt KMaxMediaPassword=16;
williamr@2
   454
williamr@2
   455
williamr@2
   456
williamr@2
   457
williamr@2
   458
/**
williamr@2
   459
@publishedAll
williamr@2
   460
@released
williamr@2
   461
williamr@2
   462
Defines the minimum size of a new heap.
williamr@2
   463
williamr@2
   464
Functions that require a new heap to be allocated will either panic,
williamr@2
   465
or will reset the required heap size to this value if a smaller heap
williamr@2
   466
size is specified.
williamr@2
   467
williamr@2
   468
@see UserHeap
williamr@2
   469
@see RThread::Create()
williamr@2
   470
*/
williamr@2
   471
const TInt KMinHeapSize=0x100;
williamr@2
   472
williamr@2
   473
williamr@2
   474
williamr@2
   475
williamr@2
   476
/**
williamr@2
   477
@publishedAll
williamr@2
   478
@released
williamr@2
   479
williamr@2
   480
Not used by Symbian OS.
williamr@2
   481
*/
williamr@2
   482
const TInt KDstHome=0x01;
williamr@2
   483
williamr@2
   484
williamr@2
   485
williamr@2
   486
williamr@2
   487
/**
williamr@2
   488
@publishedAll
williamr@2
   489
@released
williamr@2
   490
williamr@2
   491
Not used by Symbian OS.
williamr@2
   492
*/
williamr@2
   493
const TInt KDstEuropean=0x02;
williamr@2
   494
williamr@2
   495
williamr@2
   496
williamr@2
   497
williamr@2
   498
/**
williamr@2
   499
@publishedAll
williamr@2
   500
@released
williamr@2
   501
williamr@2
   502
Not used by Symbian OS.
williamr@2
   503
*/
williamr@2
   504
const TInt KDstNorthern=0x04;
williamr@2
   505
williamr@2
   506
williamr@2
   507
williamr@2
   508
williamr@2
   509
/**
williamr@2
   510
@publishedAll
williamr@2
   511
@released
williamr@2
   512
williamr@2
   513
Not used by Symbian OS.
williamr@2
   514
*/
williamr@2
   515
const TInt KDstSouthern=0x08;
williamr@2
   516
williamr@2
   517
williamr@2
   518
williamr@2
   519
williamr@2
   520
/**
williamr@2
   521
@publishedAll
williamr@2
   522
@released
williamr@2
   523
williamr@2
   524
A default stack size that can be used when creating threads.
williamr@2
   525
*/
williamr@2
   526
const TInt KDefaultStackSize=0x2000;
williamr@2
   527
williamr@2
   528
williamr@2
   529
williamr@2
   530
williamr@2
   531
/**
williamr@2
   532
@publishedAll
williamr@2
   533
@released
williamr@2
   534
williamr@2
   535
Indicates an undefined character, used internally when formatting text. 
williamr@2
   536
*/
williamr@2
   537
const TUint KNoChar=0xffffffffu;
williamr@2
   538
williamr@2
   539
williamr@2
   540
williamr@2
   541
williamr@2
   542
/**
williamr@2
   543
@publishedAll
williamr@2
   544
@released
williamr@2
   545
williamr@2
   546
Defines an index value that is interpreted by the TKey class,
williamr@2
   547
and derived classes, as having a specific meaning.
williamr@2
   548
williamr@2
   549
@see TKey::SetPtr()
williamr@2
   550
@see TKey::At()
williamr@2
   551
*/
williamr@2
   552
const TInt KIndexPtr=(-1);
williamr@2
   553
williamr@2
   554
williamr@2
   555
williamr@2
   556
williamr@2
   557
/**
williamr@2
   558
@publishedAll
williamr@2
   559
@released
williamr@2
   560
williamr@2
   561
A flag used by the kernel to mark a handle as not being closable.
williamr@2
   562
*/
williamr@2
   563
const TInt KHandleNoClose=0x00008000;
williamr@2
   564
williamr@2
   565
williamr@2
   566
williamr@2
   567
williamr@2
   568
/**
williamr@2
   569
@publishedAll
williamr@2
   570
@released
williamr@2
   571
williamr@2
   572
A flag used by the kernel to mark a handle as being local.
williamr@2
   573
*/
williamr@2
   574
const TInt KHandleFlagLocal=0x40000000;
williamr@2
   575
williamr@2
   576
williamr@2
   577
williamr@2
   578
williamr@2
   579
/**
williamr@2
   580
@publishedAll
williamr@2
   581
@released
williamr@2
   582
williamr@2
   583
A flag used by the Kernel to indicate the current process.
williamr@2
   584
*/
williamr@2
   585
const TInt KCurrentProcessHandle=0xffff0000|KHandleNoClose;
williamr@2
   586
williamr@2
   587
williamr@2
   588
williamr@2
   589
williamr@2
   590
/**
williamr@2
   591
@publishedAll
williamr@2
   592
@released
williamr@2
   593
williamr@2
   594
A flag used by the Kernel to indicate the current thread.
williamr@2
   595
*/
williamr@2
   596
const TInt KCurrentThreadHandle=0xffff0001|KHandleNoClose;
williamr@2
   597
williamr@2
   598
williamr@2
   599
williamr@2
   600
williamr@2
   601
/**
williamr@2
   602
@publishedAll
williamr@2
   603
@released
williamr@2
   604
williamr@2
   605
Defines a handle number value of zero.
williamr@2
   606
williamr@2
   607
@see RHandleBase
williamr@2
   608
*/
williamr@2
   609
const TInt KNullHandle=0;
williamr@2
   610
williamr@2
   611
williamr@2
   612
williamr@2
   613
williamr@2
   614
/**
williamr@2
   615
@publishedAll
williamr@2
   616
@released
williamr@2
   617
williamr@2
   618
Defines a default unit. Not generally used by Symbian OS.
williamr@2
   619
*/
williamr@2
   620
const TInt KDefaultUnit=0x00;
williamr@2
   621
williamr@2
   622
williamr@2
   623
williamr@2
   624
williamr@2
   625
/**
williamr@2
   626
@publishedAll
williamr@2
   627
@released
williamr@2
   628
williamr@2
   629
The device unit that must be passed in a call
williamr@2
   630
to RBusLogicalChannel::DoCreate(), if units are not permitted.
williamr@2
   631
williamr@2
   632
@see RBusLogicalChannel
williamr@2
   633
*/
williamr@2
   634
const TInt KNullUnit=0xffffffff;
williamr@2
   635
williamr@2
   636
williamr@2
   637
williamr@2
   638
williamr@2
   639
/**
williamr@2
   640
@publishedAll
williamr@2
   641
@released
williamr@2
   642
williamr@2
   643
The maximum unit number that can be passed in a call
williamr@2
   644
to RBusLogicalChannel::DoCreate().
williamr@2
   645
williamr@2
   646
@see RBusLogicalChannel
williamr@2
   647
*/
williamr@2
   648
const TInt KMaxUnits=0x20;
williamr@2
   649
williamr@2
   650
williamr@2
   651
williamr@2
   652
williamr@2
   653
/**
williamr@2
   654
@publishedAll
williamr@2
   655
@released
williamr@2
   656
williamr@2
   657
Defines the maximum number of message arguments that can be passed
williamr@2
   658
across the user side/kernel side boundary.
williamr@2
   659
*/
williamr@2
   660
const TInt KMaxMessageArguments=0x04;
williamr@2
   661
williamr@2
   662
williamr@2
   663
williamr@2
   664
williamr@2
   665
/**
williamr@2
   666
@publishedAll
williamr@2
   667
@released
williamr@2
   668
williamr@2
   669
The default width of the character representation of a real number, used by
williamr@2
   670
the default constructor of a TRealFormat object and the formatting functions
williamr@2
   671
of descriptors.
williamr@2
   672
williamr@2
   673
@see TRealFormat
williamr@2
   674
@see TDes16::AppendFormat()
williamr@2
   675
@see TDes8::AppendFormat()
williamr@2
   676
*/
williamr@2
   677
const TInt KDefaultRealWidth=20;
williamr@2
   678
williamr@2
   679
williamr@2
   680
williamr@2
   681
williamr@2
   682
/**
williamr@2
   683
@publishedAll
williamr@2
   684
@released
williamr@2
   685
williamr@2
   686
The default value used by UserHeap::ChunkHeap() for defining increments to
williamr@2
   687
the size of a chunk, when no explicit value specified by the caller.
williamr@2
   688
williamr@2
   689
@see UserHeap::ChunkHeap()
williamr@2
   690
*/
williamr@2
   691
const TInt KMinHeapGrowBy=0x1000;
williamr@2
   692
williamr@2
   693
williamr@2
   694
williamr@2
   695
williamr@2
   696
/**
williamr@2
   697
@publishedAll
williamr@2
   698
@released
williamr@2
   699
williamr@2
   700
Not used by Symbian OS.
williamr@2
   701
*/
williamr@2
   702
const TInt KMaxExponentConversion=99;
williamr@2
   703
williamr@2
   704
williamr@2
   705
williamr@2
   706
williamr@2
   707
/**
williamr@2
   708
@publishedAll
williamr@2
   709
@released
williamr@2
   710
williamr@2
   711
Defines a Null UID value.
williamr@2
   712
williamr@2
   713
@see TUid
williamr@2
   714
*/
williamr@2
   715
const TInt KNullUidValue=0;
williamr@2
   716
williamr@2
   717
williamr@2
   718
williamr@2
   719
williamr@2
   720
/**
williamr@2
   721
@publishedAll
williamr@2
   722
@deprecated
williamr@2
   723
williamr@2
   724
The timer granularity used by a CDeltaTimer object is
williamr@2
   725
now the tick period and this constant is obsolete.
williamr@2
   726
williamr@2
   727
@see CDeltaTimer
williamr@2
   728
*/
williamr@2
   729
const TInt KDeltaTimerDefaultGranularity=100000;
williamr@2
   730
williamr@2
   731
williamr@2
   732
williamr@2
   733
williamr@2
   734
/**
williamr@2
   735
@publishedAll
williamr@2
   736
@released
williamr@2
   737
williamr@2
   738
The largest possible value for a TInt8.
williamr@2
   739
*/
williamr@2
   740
const TInt KMaxTInt8=0x7f;
williamr@2
   741
williamr@2
   742
williamr@2
   743
williamr@2
   744
williamr@2
   745
/**
williamr@2
   746
@publishedAll
williamr@2
   747
@released
williamr@2
   748
williamr@2
   749
The smallest possible value for a TInt8.
williamr@2
   750
*/
williamr@2
   751
const TInt KMinTInt8=(-128);
williamr@2
   752
williamr@2
   753
williamr@2
   754
williamr@2
   755
williamr@2
   756
/**
williamr@2
   757
@publishedAll
williamr@2
   758
@released
williamr@2
   759
williamr@2
   760
The largest possible value for a TUint8.
williamr@2
   761
*/
williamr@2
   762
const TUint KMaxTUint8=0xffu;
williamr@2
   763
williamr@2
   764
williamr@2
   765
williamr@2
   766
williamr@2
   767
/**
williamr@2
   768
@publishedAll
williamr@2
   769
@released
williamr@2
   770
williamr@2
   771
The largest possible value for a TInt16.
williamr@2
   772
*/
williamr@2
   773
const TInt KMaxTInt16=0x7fff;
williamr@2
   774
williamr@2
   775
williamr@2
   776
williamr@2
   777
williamr@2
   778
/**
williamr@2
   779
@publishedAll
williamr@2
   780
@released
williamr@2
   781
williamr@2
   782
The smallest possible value for a TInt16.
williamr@2
   783
*/
williamr@2
   784
const TInt KMinTInt16=(-32768);
williamr@2
   785
williamr@2
   786
williamr@2
   787
williamr@2
   788
williamr@2
   789
/**
williamr@2
   790
@publishedAll
williamr@2
   791
@released
williamr@2
   792
williamr@2
   793
The largest possible value for a TUint16.
williamr@2
   794
*/
williamr@2
   795
const TUint KMaxTUint16=0xffffu;
williamr@2
   796
williamr@2
   797
williamr@2
   798
williamr@2
   799
williamr@2
   800
/**
williamr@2
   801
@publishedAll
williamr@2
   802
@released
williamr@2
   803
williamr@2
   804
The largest possible value for a TInt32.
williamr@2
   805
*/
williamr@2
   806
const TInt KMaxTInt32=0x7fffffff;
williamr@2
   807
williamr@2
   808
williamr@2
   809
williamr@2
   810
williamr@2
   811
/**
williamr@2
   812
@publishedAll
williamr@2
   813
@released
williamr@2
   814
williamr@2
   815
The smallest possible value for a TInt32.
williamr@2
   816
*/
williamr@2
   817
const TInt KMinTInt32=(TInt)0x80000000;
williamr@2
   818
williamr@2
   819
williamr@2
   820
williamr@2
   821
williamr@2
   822
/**
williamr@2
   823
@publishedAll
williamr@2
   824
@released
williamr@2
   825
williamr@2
   826
The largest possible value for a TUint32.
williamr@2
   827
*/
williamr@2
   828
const TUint KMaxTUint32=0xffffffffu;
williamr@2
   829
williamr@2
   830
williamr@2
   831
williamr@2
   832
williamr@2
   833
/**
williamr@2
   834
@publishedAll
williamr@2
   835
@released
williamr@2
   836
williamr@2
   837
The largest possible value for a TInt.
williamr@2
   838
*/
williamr@2
   839
const TInt KMaxTInt=0x7fffffff;
williamr@2
   840
williamr@2
   841
williamr@2
   842
williamr@2
   843
williamr@2
   844
/**
williamr@2
   845
@publishedAll
williamr@2
   846
@released
williamr@2
   847
williamr@2
   848
The smallest possible value for a TInt.
williamr@2
   849
*/
williamr@2
   850
const TInt KMinTInt=(TInt)0x80000000;
williamr@2
   851
williamr@2
   852
williamr@2
   853
williamr@2
   854
williamr@2
   855
/**
williamr@2
   856
@publishedAll
williamr@2
   857
@released
williamr@2
   858
williamr@2
   859
The largest possible value for a TUint.
williamr@2
   860
*/
williamr@2
   861
const TUint KMaxTUint=0xffffffffu;
williamr@2
   862
williamr@2
   863
williamr@2
   864
williamr@2
   865
williamr@2
   866
/**
williamr@2
   867
@publishedAll
williamr@2
   868
@released
williamr@2
   869
williamr@2
   870
The largest possible value for a TInt64.
williamr@2
   871
*/
williamr@2
   872
const TInt64 KMaxTInt64 = I64LIT(0x7fffffffffffffff);
williamr@2
   873
williamr@2
   874
williamr@2
   875
williamr@2
   876
williamr@2
   877
/**
williamr@2
   878
@publishedAll
williamr@2
   879
@released
williamr@2
   880
williamr@2
   881
The smallest possible value for a TInt64.
williamr@2
   882
*/
williamr@2
   883
const TInt64 KMinTInt64 = UI64LIT(0x8000000000000000);
williamr@2
   884
williamr@2
   885
williamr@2
   886
williamr@2
   887
williamr@2
   888
/**
williamr@2
   889
@publishedAll
williamr@2
   890
@released
williamr@2
   891
williamr@2
   892
The largest possible value for a TUint64.
williamr@2
   893
*/
williamr@2
   894
const TUint64 KMaxTUint64 = UI64LIT(0xffffffffffffffff);
williamr@2
   895
williamr@2
   896
williamr@2
   897
williamr@2
   898
williamr@2
   899
/**
williamr@2
   900
@publishedAll
williamr@2
   901
@released
williamr@2
   902
williamr@2
   903
Defines the character *, and represents any number of characters in any
williamr@2
   904
part of a path component, filename or extension.
williamr@2
   905
williamr@2
   906
It is used in a TParse file specification.
williamr@2
   907
williamr@2
   908
@see TParse
williamr@2
   909
*/
williamr@2
   910
const TUint KMatchAny='*';
williamr@2
   911
williamr@2
   912
williamr@2
   913
williamr@2
   914
williamr@2
   915
/**
williamr@2
   916
@publishedAll
williamr@2
   917
@released
williamr@2
   918
williamr@2
   919
Defines the character ?, and represents a single character in
williamr@2
   920
a path component, filename or extension.
williamr@2
   921
williamr@2
   922
It is used in a TParse file specification.
williamr@2
   923
williamr@2
   924
@see TParse
williamr@2
   925
*/
williamr@2
   926
const TUint KMatchOne='?';
williamr@2
   927
williamr@2
   928
williamr@2
   929
williamr@2
   930
williamr@2
   931
/**
williamr@2
   932
@publishedAll
williamr@2
   933
@released
williamr@2
   934
williamr@2
   935
Defines the maximum number of local drives.
williamr@2
   936
*/
williamr@2
   937
const TInt KMaxLocalDrives=16;
williamr@2
   938
williamr@2
   939
williamr@2
   940
williamr@2
   941
williamr@2
   942
/**
williamr@2
   943
@publishedAll
williamr@2
   944
@released
williamr@2
   945
williamr@2
   946
Defines the maximum number of peripheral bus sockets.
williamr@2
   947
*/
williamr@2
   948
const TInt KMaxPBusSockets=4;
williamr@2
   949
williamr@2
   950
williamr@2
   951
williamr@2
   952
williamr@2
   953
/**
williamr@2
   954
@publishedAll
williamr@2
   955
@released
williamr@2
   956
williamr@2
   957
Not used by Symbian OS.
williamr@2
   958
*/
williamr@2
   959
const TInt KNoCallEntryPoint = 0x01;
williamr@2
   960
williamr@2
   961
williamr@2
   962
williamr@2
   963
williamr@2
   964
/**
williamr@2
   965
@publishedAll
williamr@2
   966
@released
williamr@2
   967
williamr@2
   968
The value to which CActive::iStatus is set by an active object's
williamr@2
   969
service provider before the service provider initiates an asynchronous request.
williamr@2
   970
williamr@2
   971
@see CActive
williamr@2
   972
*/
williamr@2
   973
const TInt KRequestPending=(-KMaxTInt);
williamr@2
   974
williamr@2
   975
williamr@2
   976
williamr@2
   977
williamr@2
   978
// Drive capabilities
williamr@2
   979
williamr@2
   980
/**
williamr@2
   981
@publishedAll
williamr@2
   982
@released
williamr@2
   983
williamr@2
   984
Defines the possible media types. 
williamr@2
   985
*/
williamr@2
   986
enum TMediaType
williamr@2
   987
	{
williamr@2
   988
	EMediaNotPresent,
williamr@2
   989
	
williamr@2
   990
	EMediaUnknown,
williamr@2
   991
	
williamr@2
   992
	EMediaFloppy,
williamr@2
   993
	
williamr@2
   994
	/** Solid-state media. */
williamr@2
   995
	EMediaHardDisk,
williamr@2
   996
	
williamr@2
   997
	EMediaCdRom,
williamr@2
   998
	
williamr@2
   999
	EMediaRam,
williamr@2
  1000
	
williamr@2
  1001
	EMediaFlash,
williamr@2
  1002
	
williamr@2
  1003
	EMediaRom,
williamr@2
  1004
	
williamr@2
  1005
	EMediaRemote,
williamr@2
  1006
	
williamr@2
  1007
	EMediaNANDFlash,
williamr@2
  1008
	
williamr@2
  1009
	/** Rotating media. */
williamr@2
  1010
	EMediaRotatingMedia  
williamr@2
  1011
	};
williamr@2
  1012
williamr@2
  1013
williamr@2
  1014
williamr@2
  1015
williamr@2
  1016
/**
williamr@2
  1017
@publishedAll
williamr@2
  1018
@released
williamr@2
  1019
williamr@2
  1020
Defines the state of a battery, if supported.
williamr@2
  1021
*/
williamr@2
  1022
enum TBatteryState {EBatNotSupported,EBatGood,EBatLow};
williamr@2
  1023
williamr@2
  1024
williamr@2
  1025
williamr@2
  1026
williamr@2
  1027
/**
williamr@2
  1028
@publishedAll
williamr@2
  1029
@released
williamr@2
  1030
williamr@2
  1031
Drive attribute - drive is local.
williamr@2
  1032
*/
williamr@2
  1033
const TUint KDriveAttLocal=0x01;
williamr@2
  1034
williamr@2
  1035
williamr@2
  1036
williamr@2
  1037
williamr@2
  1038
/**
williamr@2
  1039
@publishedAll
williamr@2
  1040
@released
williamr@2
  1041
williamr@2
  1042
Drive attribute - ROM drive.
williamr@2
  1043
*/
williamr@2
  1044
const TUint KDriveAttRom=0x02;
williamr@2
  1045
williamr@2
  1046
williamr@2
  1047
williamr@2
  1048
williamr@2
  1049
/**
williamr@2
  1050
@publishedAll
williamr@2
  1051
@released
williamr@2
  1052
williamr@2
  1053
Drive attribute - output from a process on one drive is redirected
williamr@2
  1054
to another drive.
williamr@2
  1055
*/
williamr@2
  1056
const TUint KDriveAttRedirected=0x04;
williamr@2
  1057
williamr@2
  1058
williamr@2
  1059
williamr@2
  1060
williamr@2
  1061
/**
williamr@2
  1062
@publishedAll
williamr@2
  1063
@released
williamr@2
  1064
williamr@2
  1065
Drive attribute - drive letter has been substituted (assigned a path).
williamr@2
  1066
*/
williamr@2
  1067
const TUint KDriveAttSubsted=0x08;
williamr@2
  1068
williamr@2
  1069
williamr@2
  1070
williamr@2
  1071
williamr@2
  1072
/**
williamr@2
  1073
@publishedAll
williamr@2
  1074
@released
williamr@2
  1075
williamr@2
  1076
Drive attribute - drive is internal (not removable).
williamr@2
  1077
*/
williamr@2
  1078
const TUint KDriveAttInternal=0x10;
williamr@2
  1079
williamr@2
  1080
williamr@2
  1081
williamr@2
  1082
williamr@2
  1083
/**
williamr@2
  1084
@publishedAll
williamr@2
  1085
@released
williamr@2
  1086
williamr@2
  1087
Drive attribute - drive is removable.
williamr@2
  1088
*/
williamr@2
  1089
const TUint KDriveAttRemovable=0x20;
williamr@2
  1090
williamr@2
  1091
williamr@2
  1092
williamr@2
  1093
williamr@2
  1094
/**
williamr@2
  1095
@publishedAll
williamr@2
  1096
@released
williamr@2
  1097
williamr@2
  1098
Drive attribute - drive is remote.
williamr@2
  1099
*/
williamr@2
  1100
const TUint KDriveAttRemote=0x40;
williamr@2
  1101
williamr@2
  1102
williamr@2
  1103
williamr@2
  1104
williamr@2
  1105
/**
williamr@2
  1106
@publishedAll
williamr@2
  1107
@released
williamr@2
  1108
williamr@2
  1109
Drive attribute -.
williamr@2
  1110
*/
williamr@2
  1111
const TUint KDriveAttTransaction=0x80;
williamr@2
  1112
williamr@2
  1113
williamr@2
  1114
/**
williamr@2
  1115
@publishedAll
williamr@2
  1116
@released
williamr@2
  1117
williamr@2
  1118
Drive attribute - drive is used for paging.
williamr@2
  1119
*/
williamr@2
  1120
const TUint KDriveAttPageable=0x100;
williamr@2
  1121
williamr@2
  1122
williamr@2
  1123
williamr@2
  1124
/**
williamr@2
  1125
@publishedAll
williamr@2
  1126
@released
williamr@2
  1127
williamr@2
  1128
Drive attribute - drive is logically removable (can be taken offline from Symbian OS).
williamr@2
  1129
If not logically removable then physically removable e.g. a card can be take out.
williamr@2
  1130
*/
williamr@2
  1131
const TUint KDriveAttLogicallyRemovable=0x200; 
williamr@2
  1132
williamr@2
  1133
williamr@2
  1134
/**
williamr@2
  1135
@publishedAll
williamr@2
  1136
@released
williamr@2
  1137
williamr@2
  1138
Drive attribute - drive is hidden.
williamr@2
  1139
A drive which has its hidden attribute set would be excluded from the list of available drives.
williamr@2
  1140
*/
williamr@2
  1141
const TUint KDriveAttHidden=0x400; 
williamr@2
  1142
williamr@2
  1143
williamr@2
  1144
/**
williamr@2
  1145
@publishedAll
williamr@2
  1146
@released
williamr@2
  1147
williamr@2
  1148
Drive attribute - It can be set in a search in order to instruct that all drives should be returned.
williamr@2
  1149
*/
williamr@2
  1150
const TUint KDriveAttAll=0x100000;
williamr@2
  1151
williamr@2
  1152
williamr@2
  1153
williamr@2
  1154
/**
williamr@2
  1155
@publishedAll
williamr@2
  1156
@released
williamr@2
  1157
williamr@2
  1158
Drive attribute - It can be set in combination with other drive attributes in order to exclude during a drive search, drives with 
williamr@2
  1159
these attributes set. 
williamr@2
  1160
*/
williamr@2
  1161
const TUint KDriveAttExclude=0x40000;
williamr@2
  1162
williamr@2
  1163
williamr@2
  1164
williamr@2
  1165
/**
williamr@2
  1166
@publishedAll
williamr@2
  1167
@released
williamr@2
  1168
williamr@2
  1169
Drive attribute - It can be set in combination with other drive attributes in order to search and return exclusively drives with these attributes set.
williamr@2
  1170
*/
williamr@2
  1171
const TUint KDriveAttExclusive=0x80000;
williamr@2
  1172
williamr@2
  1173
williamr@2
  1174
/**
williamr@2
  1175
@internalTechnology
williamr@2
  1176
williamr@2
  1177
Used as a mask in order to extract the actual drive attributes.
williamr@2
  1178
williamr@2
  1179
*/
williamr@2
  1180
const TUint KDriveAttMatchedFlags=0xFFF;
williamr@2
  1181
williamr@2
  1182
williamr@2
  1183
/**
williamr@2
  1184
@internalTechnology
williamr@2
  1185
williamr@2
  1186
Used as a mask in order to extract the extra(ex KDriveAttAll ,KDriveAttExclude, KDriveAttExclusive ,0) drive attributes.
williamr@2
  1187
*/
williamr@2
  1188
const TUint KDriveAttMatchedAtt=0x0FFF0000;
williamr@2
  1189
williamr@2
  1190
williamr@2
  1191
/**
williamr@2
  1192
@publishedAll
williamr@2
  1193
@released
williamr@2
  1194
williamr@2
  1195
Media attribute - the media capacity can change over time.
williamr@2
  1196
*/
williamr@2
  1197
const TUint KMediaAttVariableSize=0x01;
williamr@2
  1198
williamr@2
  1199
williamr@2
  1200
williamr@2
  1201
williamr@2
  1202
/**
williamr@2
  1203
@publishedAll
williamr@2
  1204
@released
williamr@2
  1205
williamr@2
  1206
Media attribute - media is dual density.
williamr@2
  1207
*/
williamr@2
  1208
const TUint KMediaAttDualDensity=0x02;
williamr@2
  1209
williamr@2
  1210
williamr@2
  1211
williamr@2
  1212
williamr@2
  1213
/**
williamr@2
  1214
@publishedAll
williamr@2
  1215
@released
williamr@2
  1216
williamr@2
  1217
Media attribute - media is formattable.
williamr@2
  1218
*/
williamr@2
  1219
const TUint KMediaAttFormattable=0x04;
williamr@2
  1220
williamr@2
  1221
williamr@2
  1222
williamr@2
  1223
williamr@2
  1224
/**
williamr@2
  1225
@publishedAll
williamr@2
  1226
@released
williamr@2
  1227
williamr@2
  1228
Media attribute - media is write-protected.
williamr@2
  1229
*/
williamr@2
  1230
const TUint KMediaAttWriteProtected=0x08;
williamr@2
  1231
williamr@2
  1232
williamr@2
  1233
williamr@2
  1234
williamr@2
  1235
/**
williamr@2
  1236
@publishedAll
williamr@2
  1237
@released
williamr@2
  1238
williamr@2
  1239
Media attribute - media is lockable; this is provided for
williamr@2
  1240
lockable multi-media cards
williamr@2
  1241
*/
williamr@2
  1242
const TUint KMediaAttLockable=0x10;
williamr@2
  1243
williamr@2
  1244
williamr@2
  1245
williamr@2
  1246
williamr@2
  1247
/**
williamr@2
  1248
@publishedAll
williamr@2
  1249
@released
williamr@2
  1250
williamr@2
  1251
Media attribute - media is locked; this is provided for
williamr@2
  1252
lockable multi-media cards
williamr@2
  1253
*/
williamr@2
  1254
const TUint KMediaAttLocked=0x20;
williamr@2
  1255
williamr@2
  1256
williamr@2
  1257
williamr@2
  1258
/**
williamr@2
  1259
@publishedAll
williamr@2
  1260
@released
williamr@2
  1261
williamr@2
  1262
Media attribute - media has password.
williamr@2
  1263
*/
williamr@2
  1264
const TUint KMediaAttHasPassword=0x40;
williamr@2
  1265
williamr@2
  1266
/**
williamr@2
  1267
@publishedAll
williamr@2
  1268
@released
williamr@2
  1269
*/
williamr@2
  1270
const TUint KMediaAttReadWhileWrite=0x80;
williamr@2
  1271
williamr@2
  1272
/**
williamr@2
  1273
@publishedAll
williamr@2
  1274
@released
williamr@2
  1275
williamr@2
  1276
Media attribute - media supports TBusLocalDrive::DeleteNotify()
williamr@2
  1277
*/
williamr@2
  1278
const TUint KMediaAttDeleteNotify=0x100;
williamr@2
  1279
williamr@2
  1280
/**
williamr@2
  1281
@publishedAll
williamr@2
  1282
@released
williamr@2
  1283
williamr@2
  1284
Media attribute - media supports paging
williamr@2
  1285
*/
williamr@2
  1286
const TUint KMediaAttPageable=0x200;
williamr@2
  1287
williamr@2
  1288
williamr@2
  1289
williamr@2
  1290
/**
williamr@2
  1291
@publishedAll
williamr@2
  1292
@released
williamr@2
  1293
williamr@2
  1294
Identifies a FAT file system
williamr@2
  1295
*/
williamr@2
  1296
const TUint KDriveFileSysFAT=0x01;
williamr@2
  1297
williamr@2
  1298
williamr@2
  1299
williamr@2
  1300
williamr@2
  1301
/**
williamr@2
  1302
@publishedAll
williamr@2
  1303
@released
williamr@2
  1304
williamr@2
  1305
Identifies a ROM file system.
williamr@2
  1306
*/
williamr@2
  1307
const TUint KDriveFileSysROM=0x02;
williamr@2
  1308
williamr@2
  1309
williamr@2
  1310
williamr@2
  1311
williamr@2
  1312
/**
williamr@2
  1313
@publishedAll
williamr@2
  1314
@released
williamr@2
  1315
williamr@2
  1316
Identifies an LFFS file system.
williamr@2
  1317
*/
williamr@2
  1318
const TUint KDriveFileSysLFFS=0x03;
williamr@2
  1319
williamr@2
  1320
williamr@2
  1321
williamr@2
  1322
williamr@2
  1323
/**
williamr@2
  1324
@publishedAll
williamr@2
  1325
@released
williamr@2
  1326
williamr@2
  1327
Identifies a read-only file system.
williamr@2
  1328
*/
williamr@2
  1329
const TUint KDriveFileSysROFS=0x04;
williamr@2
  1330
williamr@2
  1331
williamr@2
  1332
williamr@2
  1333
williamr@2
  1334
/**
williamr@2
  1335
@publishedAll
williamr@2
  1336
@released
williamr@2
  1337
williamr@2
  1338
Identifies a non-file system.  That is a partition without any file system layer.
williamr@2
  1339
*/
williamr@2
  1340
const TUint KDriveFileNone=0x05;
williamr@2
  1341
williamr@2
  1342
williamr@2
  1343
williamr@2
  1344
williamr@2
  1345
/**
williamr@2
  1346
@publishedAll
williamr@2
  1347
@released
williamr@2
  1348
williamr@2
  1349
An enumerator with a single enumeration value that defines the Boolean value 
williamr@2
  1350
false in Symbian OS.
williamr@2
  1351
williamr@2
  1352
@see TBool
williamr@2
  1353
*/
williamr@2
  1354
enum TFalse {
williamr@2
  1355
            /**
williamr@2
  1356
            Defines the value false that is passed to a TBool type.
williamr@2
  1357
            */
williamr@2
  1358
            EFalse=FALSE
williamr@2
  1359
            };
williamr@2
  1360
            
williamr@2
  1361
            
williamr@2
  1362
            
williamr@2
  1363
            
williamr@2
  1364
/**
williamr@2
  1365
@publishedAll
williamr@2
  1366
@released
williamr@2
  1367
williamr@2
  1368
An enumerator with a single enumeration value that defines the Boolean value 
williamr@2
  1369
true in Symbian OS.
williamr@2
  1370
williamr@2
  1371
@see TBool
williamr@2
  1372
*/
williamr@2
  1373
enum TTrue {
williamr@2
  1374
           /**
williamr@2
  1375
           Defines the value true that is passed to a TBool type.
williamr@2
  1376
           */
williamr@2
  1377
           ETrue=TRUE
williamr@2
  1378
           };
williamr@2
  1379
williamr@2
  1380
williamr@2
  1381
williamr@2
  1382
williamr@2
  1383
/**
williamr@2
  1384
@publishedAll
williamr@2
  1385
@released
williamr@2
  1386
williamr@2
  1387
Defines flags that can be used to indicate whether duplicates, for example in 
williamr@2
  1388
a list, are allowed.
williamr@2
  1389
*/
williamr@2
  1390
enum TAllowDuplicates {
williamr@2
  1391
                      /**
williamr@2
  1392
                      No duplicates allowed.
williamr@2
  1393
                      */
williamr@2
  1394
                      ENoDuplicates,
williamr@2
  1395
                      
williamr@2
  1396
                      /**
williamr@2
  1397
                      Duplicates allowed.
williamr@2
  1398
                      */
williamr@2
  1399
                      EAllowDuplicates
williamr@2
  1400
                      };
williamr@2
  1401
williamr@2
  1402
williamr@2
  1403
williamr@2
  1404
williamr@2
  1405
/**
williamr@2
  1406
@publishedAll
williamr@2
  1407
@released
williamr@2
  1408
williamr@2
  1409
An enumeration whose enumerators determine the number system to be used
williamr@2
  1410
when converting numbers into a character format.
williamr@2
  1411
williamr@2
  1412
@see TDes8::Num()
williamr@2
  1413
@see TDes8::NumUC()
williamr@2
  1414
@see TDes8::AppendNum()
williamr@2
  1415
@see TDes8::AppendNumUC()
williamr@2
  1416
@see TDes16::Num()
williamr@2
  1417
@see TDes16::NumUC()
williamr@2
  1418
@see TDes16::AppendNum()
williamr@2
  1419
@see TDes16::AppendNumUC()
williamr@2
  1420
*/
williamr@2
  1421
enum TRadix {
williamr@2
  1422
            /**
williamr@2
  1423
            Convert number into binary character representation.
williamr@2
  1424
            */
williamr@2
  1425
            EBinary=2,
williamr@2
  1426
            /**
williamr@2
  1427
            Convert number into octal character representation.
williamr@2
  1428
            */            
williamr@2
  1429
            EOctal=8,
williamr@2
  1430
            /**
williamr@2
  1431
            Convert number into decimal character representation.
williamr@2
  1432
            */            
williamr@2
  1433
            EDecimal=10,
williamr@2
  1434
          	/**
williamr@2
  1435
          	Convert number into hexadecimal character representation.
williamr@2
  1436
          	*/            
williamr@2
  1437
            EHex=16
williamr@2
  1438
            };
williamr@2
  1439
williamr@2
  1440
williamr@2
  1441
williamr@2
  1442
williamr@2
  1443
williamr@2
  1444
/**
williamr@2
  1445
@publishedAll
williamr@2
  1446
@released
williamr@2
  1447
williamr@2
  1448
The mask for the dialect bits
williamr@2
  1449
*/
williamr@2
  1450
const TUint KDialectMask=0x03FF;
williamr@2
  1451
williamr@2
  1452
williamr@2
  1453
williamr@2
  1454
williamr@2
  1455
williamr@2
  1456
/**
williamr@2
  1457
@publishedAll
williamr@2
  1458
@released
williamr@2
  1459
williamr@2
  1460
Defines the date formats.
williamr@2
  1461
*/
williamr@2
  1462
enum TDateFormat {
williamr@2
  1463
                 /**
williamr@2
  1464
                 US format (mm/dd/yyyy)
williamr@2
  1465
                 */
williamr@2
  1466
                 EDateAmerican,
williamr@2
  1467
                 
williamr@2
  1468
                 /**
williamr@2
  1469
                 European format (dd/mm/yyyy)
williamr@2
  1470
                 */                 
williamr@2
  1471
                 EDateEuropean,
williamr@2
  1472
                 
williamr@2
  1473
                 /**
williamr@2
  1474
                 Japanese format (yyyy/mm/dd)
williamr@2
  1475
                 */
williamr@2
  1476
                 EDateJapanese};
williamr@2
  1477
williamr@2
  1478
williamr@2
  1479
williamr@2
  1480
williamr@2
  1481
/**
williamr@2
  1482
@publishedAll
williamr@2
  1483
@released
williamr@2
  1484
williamr@2
  1485
Defines the time formats as either 12 hour or 24 hour.
williamr@2
  1486
*/
williamr@2
  1487
enum TTimeFormat {
williamr@2
  1488
                 ETime12,
williamr@2
  1489
                 ETime24
williamr@2
  1490
                 };
williamr@2
  1491
williamr@2
  1492
williamr@2
  1493
williamr@2
  1494
williamr@2
  1495
/**
williamr@2
  1496
@publishedAll
williamr@2
  1497
@released
williamr@2
  1498
williamr@2
  1499
Defines the clock display formats, as either analog or digital.
williamr@2
  1500
*/
williamr@2
  1501
enum TClockFormat {
williamr@2
  1502
                  EClockAnalog,
williamr@2
  1503
                  EClockDigital
williamr@2
  1504
                  };
williamr@2
  1505
williamr@2
  1506
williamr@2
  1507
williamr@2
  1508
williamr@2
  1509
/** 
williamr@2
  1510
@publishedAll
williamr@2
  1511
@released
williamr@2
  1512
williamr@2
  1513
Enumerates the units of measurement as either Imperial or Metric.
williamr@2
  1514
*/
williamr@2
  1515
enum TUnitsFormat {
williamr@2
  1516
                  EUnitsImperial,
williamr@2
  1517
                  EUnitsMetric
williamr@2
  1518
                  };
williamr@2
  1519
williamr@2
  1520
williamr@2
  1521
williamr@2
  1522
williamr@2
  1523
/**
williamr@2
  1524
@publishedAll
williamr@2
  1525
@released
williamr@2
  1526
williamr@2
  1527
Identifies a time as being am or pm.
williamr@2
  1528
*/
williamr@2
  1529
enum TAmPm {
williamr@2
  1530
           EAm,
williamr@2
  1531
           EPm
williamr@2
  1532
           };
williamr@2
  1533
williamr@2
  1534
williamr@2
  1535
williamr@2
  1536
williamr@2
  1537
/**
williamr@2
  1538
@publishedAll
williamr@2
  1539
@released
williamr@2
  1540
williamr@2
  1541
Defines whether:
williamr@2
  1542
williamr@2
  1543
1. the currency symbol is located before or after the currency amount.
williamr@2
  1544
williamr@2
  1545
2. the am/pm text is located before or after the time.
williamr@2
  1546
*/
williamr@2
  1547
enum TLocalePos 
williamr@2
  1548
	{
williamr@2
  1549
	/**
williamr@2
  1550
	The currency symbol is located before the currency amount.
williamr@2
  1551
	The am/pm text is located before the time.
williamr@2
  1552
	*/
williamr@2
  1553
	ELocaleBefore,
williamr@2
  1554
	
williamr@2
  1555
	/**
williamr@2
  1556
	The currency symbol is located after the currency amount.
williamr@2
  1557
	The am/pm text is located after the time.
williamr@2
  1558
	*/
williamr@2
  1559
	ELocaleAfter
williamr@2
  1560
	};
williamr@2
  1561
williamr@2
  1562
williamr@2
  1563
williamr@2
  1564
williamr@2
  1565
/**
williamr@2
  1566
@publishedAll
williamr@2
  1567
@released
williamr@2
  1568
williamr@2
  1569
Number Modes available to select.
williamr@2
  1570
*/
williamr@2
  1571
enum TDigitType
williamr@2
  1572
	{
williamr@2
  1573
	EDigitTypeUnknown = 0x0000,
williamr@2
  1574
	EDigitTypeWestern = 0x0030,
williamr@2
  1575
	EDigitTypeArabicIndic = 0x0660,
williamr@2
  1576
	EDigitTypeEasternArabicIndic = 0x6F0,
williamr@2
  1577
	EDigitTypeDevanagari = 0x0966,
williamr@2
  1578
	EDigitTypeBengali = 0x09E6,
williamr@2
  1579
	EDigitTypeGurmukhi = 0x0A66,
williamr@2
  1580
	EDigitTypeGujarati = 0x0AE6,
williamr@2
  1581
	EDigitTypeOriya = 0x0B66,
williamr@2
  1582
	EDigitTypeTamil = 0x0BE6,
williamr@2
  1583
	EDigitTypeTelugu = 0x0C66,
williamr@2
  1584
	EDigitTypeKannada = 0x0CE6,
williamr@2
  1585
	EDigitTypeMalayalam = 0x0D66,
williamr@2
  1586
	EDigitTypeThai = 0x0E50,
williamr@2
  1587
	EDigitTypeLao = 0x0ED0,
williamr@2
  1588
	EDigitTypeTibetan = 0x0F20,
williamr@2
  1589
	EDigitTypeMayanmar = 0x1040,
williamr@2
  1590
	EDigitTypeKhmer = 0x17E0,
williamr@2
  1591
	EDigitTypeAllTypes = 0xFFFF
williamr@2
  1592
	};
williamr@2
  1593
williamr@2
  1594
williamr@2
  1595
williamr@2
  1596
williamr@2
  1597
/**
williamr@2
  1598
@publishedAll
williamr@2
  1599
@released
williamr@2
  1600
williamr@2
  1601
Defines the daylight saving zones.
williamr@2
  1602
*/
williamr@2
  1603
enum TDaylightSavingZone
williamr@2
  1604
	{
williamr@2
  1605
	/**
williamr@2
  1606
	The home daylight saving zone. Its value is usually the same as that of the 
williamr@2
  1607
	zone in which the home city is located, but may differ. In this case, the 
williamr@2
  1608
	value for home overrides the value of the zone in which home is located.
williamr@2
  1609
	*/
williamr@2
  1610
	EDstHome=0x40000000,
williamr@2
  1611
	
williamr@2
  1612
	/**
williamr@2
  1613
	No daylight saving zone.
williamr@2
  1614
	*/
williamr@2
  1615
	EDstNone=0,
williamr@2
  1616
	
williamr@2
  1617
	/**
williamr@2
  1618
	The European daylight saving zone.
williamr@2
  1619
	*/
williamr@2
  1620
	EDstEuropean=1,
williamr@2
  1621
	
williamr@2
  1622
	/**
williamr@2
  1623
	The Northern hemisphere (non-European) daylight saving zone.
williamr@2
  1624
	*/
williamr@2
  1625
	EDstNorthern=2,
williamr@2
  1626
	
williamr@2
  1627
	/**
williamr@2
  1628
	Southern hemisphere daylight saving zone.
williamr@2
  1629
	*/
williamr@2
  1630
	EDstSouthern=4
williamr@2
  1631
	};
williamr@2
  1632
williamr@2
  1633
williamr@2
  1634
williamr@2
  1635
williamr@2
  1636
/**
williamr@2
  1637
@internalComponent
williamr@2
  1638
williamr@2
  1639
Indicates how negative currency values are formatted.
williamr@2
  1640
*/
williamr@2
  1641
enum TNegativeCurrencyFormat // must match TLocale:: version, included here so ELOCL.DLL can see it
williamr@2
  1642
	{
williamr@2
  1643
	E_NegC_LeadingMinusSign,
williamr@2
  1644
	E_NegC_InBrackets,// this one must be non-zero for binary compatibility with the old TBool TLocale::iCurrencyNegativeInBrackets which was exposed in the binary interface because it was accessed via *inline* functions
williamr@2
  1645
	E_NegC_InterveningMinusSignWithSpaces,
williamr@2
  1646
	E_NegC_InterveningMinusSignWithoutSpaces,
williamr@2
  1647
	E_NegC_TrailingMinusSign
williamr@2
  1648
	};
williamr@2
  1649
williamr@2
  1650
/**
williamr@2
  1651
@internalComponent
williamr@2
  1652
williamr@2
  1653
williamr@2
  1654
Indicates how the device universal time is maintained
williamr@2
  1655
*/
williamr@2
  1656
enum TDeviceTimeState // must match TLocale:: version
williamr@2
  1657
	{
williamr@2
  1658
	/** Universal time is maintained by the device RTC and the user selection 
williamr@2
  1659
	of the locale of the device indicating offset from GMT and daylight saving*/
williamr@2
  1660
	EDeviceUserTime,
williamr@2
  1661
williamr@2
  1662
	/** Universal time and offset from GMT is supplied by the mobile network
williamr@2
  1663
	and maintained by device RTC */
williamr@2
  1664
	ENITZNetworkTimeSync
williamr@2
  1665
	};
williamr@2
  1666
williamr@2
  1667
williamr@2
  1668
williamr@2
  1669
/**
williamr@2
  1670
@publishedAll
williamr@2
  1671
@released
williamr@2
  1672
williamr@2
  1673
Defines the days of the week.
williamr@2
  1674
williamr@2
  1675
The enumerator symbol names correspond with the days of the week,
williamr@2
  1676
i.e. EMonday refers to Monday etc.
williamr@2
  1677
*/
williamr@2
  1678
enum TDay
williamr@2
  1679
	{
williamr@2
  1680
	EMonday,
williamr@2
  1681
	ETuesday,
williamr@2
  1682
	EWednesday,
williamr@2
  1683
	EThursday,
williamr@2
  1684
	EFriday,
williamr@2
  1685
	ESaturday,
williamr@2
  1686
	ESunday
williamr@2
  1687
	};
williamr@2
  1688
williamr@2
  1689
williamr@2
  1690
williamr@2
  1691
williamr@2
  1692
/**
williamr@2
  1693
@publishedAll
williamr@2
  1694
@released
williamr@2
  1695
williamr@2
  1696
Defines the months of the year.
williamr@2
  1697
williamr@2
  1698
The enumerator symbol names correspond with the months of the year,
williamr@2
  1699
i.e. EJanuary refers to January etc.
williamr@2
  1700
*/
williamr@2
  1701
enum TMonth
williamr@2
  1702
	{
williamr@2
  1703
	EJanuary,
williamr@2
  1704
	EFebruary,
williamr@2
  1705
	EMarch,
williamr@2
  1706
	EApril,
williamr@2
  1707
	EMay,
williamr@2
  1708
	EJune,
williamr@2
  1709
	EJuly,
williamr@2
  1710
	EAugust,
williamr@2
  1711
	ESeptember,
williamr@2
  1712
	EOctober,
williamr@2
  1713
	ENovember,
williamr@2
  1714
	EDecember
williamr@2
  1715
	};
williamr@2
  1716
williamr@2
  1717
williamr@2
  1718
williamr@2
  1719
williamr@2
  1720
/**
williamr@2
  1721
@publishedAll
williamr@2
  1722
@released
williamr@2
  1723
williamr@2
  1724
Handle ownership flags.
williamr@2
  1725
williamr@2
  1726
The flags indicate whether a handle being opened is owned by a process or 
williamr@2
  1727
a thread.
williamr@2
  1728
williamr@2
  1729
Ownership by a process means that the handle instance can be used by all
williamr@2
  1730
threads in the process to access the Kernel side object that the
williamr@2
  1731
handle represents.
williamr@2
  1732
williamr@2
  1733
Ownership by a thread means that the handle instance can only be used by the 
williamr@2
  1734
thread that creates or opens the handle.
williamr@2
  1735
williamr@2
  1736
An enumerator of this type is passed to all member functions of RHandleBase, 
williamr@2
  1737
and classes derived from RHandleBase, which open a handle.
williamr@2
  1738
*/
williamr@2
  1739
enum TOwnerType {
williamr@2
  1740
	             /**
williamr@2
  1741
	             Ownership of the handle is to be vested in the process.
williamr@2
  1742
	             */
williamr@2
  1743
                 EOwnerProcess,
williamr@2
  1744
                 
williamr@2
  1745
                 /**
williamr@2
  1746
                 Ownership of the handle is to be vested in the thread.
williamr@2
  1747
                 */
williamr@2
  1748
                 EOwnerThread
williamr@2
  1749
                };
williamr@2
  1750
williamr@2
  1751
williamr@2
  1752
williamr@2
  1753
williamr@2
  1754
const TInt KCreateProtectedObject = (TInt)0x80000000;
williamr@2
  1755
williamr@2
  1756
williamr@2
  1757
williamr@2
  1758
williamr@2
  1759
williamr@2
  1760
/**
williamr@2
  1761
@publishedAll
williamr@2
  1762
@released
williamr@2
  1763
williamr@2
  1764
Defines process priorities.
williamr@2
  1765
williamr@2
  1766
The enumerator values are passed to RProcess::SetPriority().
williamr@2
  1767
williamr@2
  1768
The priorities are listed in relative order stating with the lowest.
williamr@2
  1769
*/
williamr@2
  1770
enum TProcessPriority
williamr@2
  1771
	{
williamr@2
  1772
	EPriorityLow=150,
williamr@2
  1773
	EPriorityBackground=250,
williamr@2
  1774
	EPriorityForeground=350,
williamr@2
  1775
	EPriorityHigh=450,
williamr@2
  1776
	EPriorityWindowServer=650,
williamr@2
  1777
	EPriorityFileServer=750,
williamr@2
  1778
	EPriorityRealTimeServer=850,
williamr@2
  1779
	EPrioritySupervisor=950
williamr@2
  1780
	};
williamr@2
  1781
williamr@2
  1782
williamr@2
  1783
williamr@2
  1784
williamr@2
  1785
/**
williamr@2
  1786
@publishedAll
williamr@2
  1787
@released
williamr@2
  1788
williamr@2
  1789
Defines thread priorities.
williamr@2
  1790
williamr@2
  1791
The enumerator values are passed to RThread::SetPriority().
williamr@2
  1792
williamr@2
  1793
The relative priorities are listed in order starting with the lowest.
williamr@2
  1794
williamr@2
  1795
The absolute thread priorities are listed in order starting with the lowest.
williamr@2
  1796
*/
williamr@2
  1797
enum TThreadPriority
williamr@2
  1798
	{
williamr@2
  1799
	EPriorityNull=(-30),
williamr@2
  1800
	EPriorityMuchLess=(-20),
williamr@2
  1801
	EPriorityLess=(-10),
williamr@2
  1802
	EPriorityNormal=0,
williamr@2
  1803
	EPriorityMore=10,
williamr@2
  1804
	EPriorityMuchMore=20,
williamr@2
  1805
	EPriorityRealTime=30,
williamr@2
  1806
	EPriorityAbsoluteVeryLow=100,
williamr@2
  1807
	EPriorityAbsoluteLowNormal=150,
williamr@2
  1808
	EPriorityAbsoluteLow=200,
williamr@2
  1809
	EPriorityAbsoluteBackgroundNormal=250,
williamr@2
  1810
	EPriorityAbsoluteBackground=300,
williamr@2
  1811
	EPriorityAbsoluteForegroundNormal=350,
williamr@2
  1812
	EPriorityAbsoluteForeground=400,
williamr@2
  1813
	EPriorityAbsoluteHighNormal=450,
williamr@2
  1814
	EPriorityAbsoluteHigh=500,
williamr@2
  1815
	EPriorityAbsoluteRealTime1=810,
williamr@2
  1816
	EPriorityAbsoluteRealTime2=820,
williamr@2
  1817
	EPriorityAbsoluteRealTime3=830,
williamr@2
  1818
	EPriorityAbsoluteRealTime4=840,
williamr@2
  1819
	EPriorityAbsoluteRealTime5=850,
williamr@2
  1820
	EPriorityAbsoluteRealTime6=860,
williamr@2
  1821
	EPriorityAbsoluteRealTime7=870, 
williamr@2
  1822
	EPriorityAbsoluteRealTime8=880
williamr@2
  1823
	};
williamr@2
  1824
williamr@2
  1825
williamr@2
  1826
williamr@2
  1827
williamr@2
  1828
/**
williamr@2
  1829
@publishedPartner
williamr@2
  1830
@interim
williamr@2
  1831
*/
williamr@2
  1832
const TText KProtectedServerNamePrefix = '!';
williamr@2
  1833
williamr@2
  1834
williamr@2
  1835
williamr@2
  1836
/**
williamr@2
  1837
@publishedAll
williamr@2
  1838
@released
williamr@2
  1839
williamr@2
  1840
A list of exception types which a thread's exception handler might deal with.
williamr@2
  1841
An enumerator of this type is passed to User::IsExceptionHandled()
williamr@2
  1842
and User::RaiseException().
williamr@2
  1843
williamr@2
  1844
While an exception handler can deal with exceptions as listed in the exception
williamr@2
  1845
constants set, a TExcType is simply a type of exception.
williamr@2
  1846
For example, EExcIntegerDivideByZero and EExcIntegerOverflow are types
williamr@2
  1847
of KExceptionInteger exception.
williamr@2
  1848
*/
williamr@2
  1849
enum TExcType
williamr@2
  1850
	{
williamr@2
  1851
	EExcGeneral=0, ///<A miscellaneous exception.
williamr@2
  1852
	EExcIntegerDivideByZero=1, ///<An attempt was made to divide an integer by zero.
williamr@2
  1853
	EExcSingleStep=2, ///<Raised after executing an instruction, when CPU is in single-step mode.
williamr@2
  1854
	EExcBreakPoint=3, ///<A break point was hit.
williamr@2
  1855
	EExcIntegerOverflow=4, ///<An integer value overflowed.
williamr@2
  1856
	EExcBoundsCheck=5, ///<Access to an out of bounds array element was caught.
williamr@2
  1857
	EExcInvalidOpCode=6, ///<The CPU reached an invalid instruction.
williamr@2
  1858
	EExcDoubleFault=7, ///<A fault occurred while handling a previous exception or interrupt.
williamr@2
  1859
	EExcStackFault=8, ///<The thread ran out of stack space.
williamr@2
  1860
	EExcAccessViolation=9, ///<The thread attempted to access memory in an unauthorized area.
williamr@2
  1861
	EExcPrivInstruction=10, ///<Attempted to execute an instruction in wrong machine mode.
williamr@2
  1862
	EExcAlignment=11, ///<The thread tried to read or write non-aligned data.
williamr@2
  1863
	EExcPageFault=12, ///<Thread could not access the memory page requested.
williamr@2
  1864
	EExcFloatDenormal=13, ///<An operand in a floating point operation was denormal.
williamr@2
  1865
	EExcFloatDivideByZero=14, ///<An attempt was made to divide a floating point number by zero.
williamr@2
  1866
	EExcFloatInexactResult=15, ///<The result of a floating point operation could not be represented precisely.
williamr@2
  1867
	EExcFloatInvalidOperation=16, ///<The result of a floating point operation was an ill-defined quantity.
williamr@2
  1868
	EExcFloatOverflow=17, ///<The result of a floating point operation was too large to be represented.
williamr@2
  1869
	EExcFloatStackCheck=18, ///<The result of a floating point operation caused the stack to over or underflow.
williamr@2
  1870
	EExcFloatUnderflow=19, ///<The result of a floating point operation was too small to be represented.
williamr@2
  1871
	EExcAbort=20, ///<This exception is not raised by the Kernel, though it may be raised by a user thread on itself.
williamr@2
  1872
	EExcKill=21, ///<This exception is not raised by the Kernel, though it may be raised by a user thread on itself.
williamr@2
  1873
	EExcUserInterrupt=22, ///<May be used to indicate a general exception.
williamr@2
  1874
	EExcDataAbort=23, ///<The thread has tried to read data from an invalid address.
williamr@2
  1875
	EExcCodeAbort=24, ///<The thread has tried to fetch an instruction from an invalid address.
williamr@2
  1876
	EExcMaxNumber=25, ///<Do not use.
williamr@2
  1877
	EExcInvalidVector=26, ///<Do not use.
williamr@2
  1878
	};
williamr@2
  1879
williamr@2
  1880
williamr@2
  1881
williamr@2
  1882
/**
williamr@2
  1883
@publishedAll
williamr@2
  1884
@released
williamr@2
  1885
williamr@2
  1886
Identifies how a thread or process has ended.
williamr@2
  1887
williamr@2
  1888
While a thread or process is alive, its exit type is always EExitPending.
williamr@2
  1889
williamr@2
  1890
Both RThread::ExitType() and RProcess::ExitType() return a TExitType.
williamr@2
  1891
williamr@2
  1892
@see RThread::ExitType()
williamr@2
  1893
@see RProcess::ExitType()
williamr@2
  1894
@see User::Exit()
williamr@2
  1895
@see RThread::Kill()
williamr@2
  1896
@see RProcess::Kill()
williamr@2
  1897
*/
williamr@2
  1898
enum TExitType {
williamr@2
  1899
               /**
williamr@2
  1900
               The thread or process has ended under normal conditions, i.e. as a result of either:
williamr@2
  1901
               1. The thread or process running to completion.
williamr@2
  1902
               2. User::Exit() being invoked.
williamr@2
  1903
               3. RThread::Kill() or RProcess::Kill() being invoked on the RThread or RProcess handle, respectively.
williamr@2
  1904
			   */
williamr@2
  1905
               EExitKill,
williamr@2
  1906
                
williamr@2
  1907
               /**
williamr@2
  1908
               The thread or process has ended as a result of a terminate,
williamr@2
  1909
               i.e. Terminate() has been called on the RThread or RProcess handle.
williamr@2
  1910
               */
williamr@2
  1911
               EExitTerminate,
williamr@2
  1912
williamr@2
  1913
               /**
williamr@2
  1914
               The thread or process has been panicked.
williamr@2
  1915
               */
williamr@2
  1916
               EExitPanic,
williamr@2
  1917
williamr@2
  1918
               /**
williamr@2
  1919
               The thread or process is alive.
williamr@2
  1920
               */
williamr@2
  1921
               EExitPending
williamr@2
  1922
               };
williamr@2
  1923
williamr@2
  1924
williamr@2
  1925
williamr@2
  1926
williamr@2
  1927
/**
williamr@2
  1928
@publishedAll
williamr@2
  1929
@released
williamr@2
  1930
williamr@2
  1931
An enumeration whose enumerators govern the alignment of data which is copied 
williamr@2
  1932
or formatted into a descriptor.
williamr@2
  1933
williamr@2
  1934
@see TDes8::Justify()
williamr@2
  1935
@see TDes8::AppendJustify()
williamr@2
  1936
@see TDes16::Justify()
williamr@2
  1937
@see TDes16::AppendJustify()
williamr@2
  1938
*/
williamr@2
  1939
enum TAlign {
williamr@2
  1940
            /**
williamr@2
  1941
            Data is left aligned
williamr@2
  1942
            */
williamr@2
  1943
            ELeft,
williamr@2
  1944
            /**
williamr@2
  1945
            Data is centered
williamr@2
  1946
            */            
williamr@2
  1947
            ECenter,
williamr@2
  1948
            /**
williamr@2
  1949
            Data is right aligned
williamr@2
  1950
            */            
williamr@2
  1951
            ERight
williamr@2
  1952
            };
williamr@2
  1953
williamr@2
  1954
williamr@2
  1955
williamr@2
  1956
williamr@2
  1957
/**
williamr@2
  1958
@publishedAll
williamr@2
  1959
@released
williamr@2
  1960
williamr@2
  1961
A mask for the set of flags that govern the general format
williamr@2
  1962
of the character representation of a real number.
williamr@2
  1963
williamr@2
  1964
These are the flags with symbols starting KRealFormat...
williamr@2
  1965
*/
williamr@2
  1966
const TInt KRealFormatTypesMask=0x00000007;
williamr@2
  1967
williamr@2
  1968
williamr@2
  1969
williamr@2
  1970
williamr@2
  1971
/**
williamr@2
  1972
@publishedAll
williamr@2
  1973
@released
williamr@2
  1974
williamr@2
  1975
Defines the general format of the character representation of a real number.
williamr@2
  1976
The TRealFormat::iType data member is set to one of these.
williamr@2
  1977
williamr@2
  1978
The real number is converted to fixed format which has the general pattern:
williamr@2
  1979
"nnn.ddd", where nnn is the integer portion and ddd is the decimal portion.
williamr@2
  1980
A negative value is prefixed by a minus sign.
williamr@2
  1981
williamr@2
  1982
The number of decimal places generated is defined by the value of
williamr@2
  1983
TRealFormat::iPlaces. Trailing zeroes are generated as required.
williamr@2
  1984
If necessary, the decimal portion is rounded to fit the specification.
williamr@2
  1985
If this value is zero, no decimal point and no decimal portion is generated.
williamr@2
  1986
williamr@2
  1987
Triad separation is available,
williamr@2
  1988
defined by TRealFormat::iTriad and TRealFormat::iTriLen.
williamr@2
  1989
williamr@2
  1990
Note that a zero value is converted either to the form "0.000..." with
williamr@2
  1991
iPlaces '0' characters after the decimal point, if iPlaces is greater than
williamr@2
  1992
zero, or to "0" if iPlaces is zero.
williamr@2
  1993
williamr@2
  1994
@see TRealFormat
williamr@2
  1995
*/
williamr@2
  1996
const TInt KRealFormatFixed=1;
williamr@2
  1997
williamr@2
  1998
williamr@2
  1999
williamr@2
  2000
williamr@2
  2001
/**
williamr@2
  2002
@publishedAll
williamr@2
  2003
@released
williamr@2
  2004
williamr@2
  2005
Defines the general format of the character representation of a real number.
williamr@2
  2006
The TRealFormat::iType data member is set to one of these.
williamr@2
  2007
williamr@2
  2008
The real number is converted to scientific format with one non-zero digit
williamr@2
  2009
before the decimal point and a number of digits after the decimal point.
williamr@2
  2010
Hence the number has the general pattern:
williamr@2
  2011
"n.dddE+ee" or "n.dddE-ee", or "n.dddE+eee" or "n.dddE-eee".
williamr@2
  2012
williamr@2
  2013
The decimal portion is followed by the character 'E', a sign ('+' or '-')
williamr@2
  2014
and the exponent as two digits, including leading zeroes, if necessary.
williamr@2
  2015
If necessary, the decimal portion is rounded. 
williamr@2
  2016
williamr@2
  2017
A negative value is prefixed by a minus sign.
williamr@2
  2018
williamr@2
  2019
If the flag KUseSigFigs is not set, TRealFormat::iPlaces defines the number
williamr@2
  2020
of digits which follow the decimal point. If the flag KUseSigFigs is set,
williamr@2
  2021
iPlaces defines the maximum number of significant digits to be generated.
williamr@2
  2022
williamr@2
  2023
Note that, by default, exponents are limited to two digits.
williamr@2
  2024
Those numbers that require three digits must have the flag
williamr@2
  2025
KAllowThreeDigitExp set. If iPlaces is zero, the value is rounded to one digit
williamr@2
  2026
of precision and no decimal point is included.
williamr@2
  2027
williamr@2
  2028
Triad separation is not available.
williamr@2
  2029
williamr@2
  2030
Note that a zero value is converted either to the form "0.000...E+00" with
williamr@2
  2031
iPlaces '0' characters after the decimal point, if iPlaces is greater than
williamr@2
  2032
zero, or to "0E+00" if iPlaces is zero.
williamr@2
  2033
williamr@2
  2034
@see TRealFormat
williamr@2
  2035
*/
williamr@2
  2036
const TInt KRealFormatExponent=2;
williamr@2
  2037
williamr@2
  2038
williamr@2
  2039
williamr@2
  2040
williamr@2
  2041
/**
williamr@2
  2042
@publishedAll
williamr@2
  2043
@released
williamr@2
  2044
williamr@2
  2045
Defines the general format of the character representation of a real number.
williamr@2
  2046
The TRealFormat::iType data member is set to one of these.
williamr@2
  2047
williamr@2
  2048
The real number is converted either to fixed or scientific format.
williamr@2
  2049
The format chosen is the one which can present the greater number of
williamr@2
  2050
significant digits. Where both formats can present the same number of
williamr@2
  2051
significant digits, fixed format is used.
williamr@2
  2052
williamr@2
  2053
The number of decimal places generated depends only on the value of
williamr@2
  2054
TRealFormat::iWidth; the value of the iPlaces member is ignored.
williamr@2
  2055
williamr@2
  2056
Trailing zeroes in the decimal portion are discarded.
williamr@2
  2057
williamr@2
  2058
Triad separation is not available.
williamr@2
  2059
williamr@2
  2060
Note that a zero value is converted to "0".
williamr@2
  2061
williamr@2
  2062
@see TRealFormat
williamr@2
  2063
*/
williamr@2
  2064
const TInt KRealFormatGeneral=3;
williamr@2
  2065
williamr@2
  2066
williamr@2
  2067
williamr@2
  2068
williamr@2
  2069
/**
williamr@2
  2070
@publishedAll
williamr@2
  2071
@released
williamr@2
  2072
williamr@2
  2073
Defines the general format of the character representation of a real number.
williamr@2
  2074
The TRealFormat::iType data member is set to one of these.
williamr@2
  2075
williamr@2
  2076
The same as KRealFormatFixed but the TRealFormat::iPlaces is interpreted as
williamr@2
  2077
specifying the maximum number of significant digits.
williamr@2
  2078
williamr@2
  2079
Trailing zeroes in the decimal portion are discarded.
williamr@2
  2080
williamr@2
  2081
@see TRealFormat
williamr@2
  2082
*/
williamr@2
  2083
const TInt KRealFormatNoExponent=4;
williamr@2
  2084
williamr@2
  2085
williamr@2
  2086
williamr@2
  2087
williamr@2
  2088
/**
williamr@2
  2089
@publishedAll
williamr@2
  2090
@released
williamr@2
  2091
williamr@2
  2092
Defines the general format of the character representation of a real number.
williamr@2
  2093
The TRealFormat::iType data member is set to one of these.
williamr@2
  2094
williamr@2
  2095
The same as KRealFormatGeneral but TRealFormat::iPlaces is interpreted as
williamr@2
  2096
specifying the maximum number of significant digits, and the number is
williamr@2
  2097
displayed without an exponent whenever possible.
williamr@2
  2098
williamr@2
  2099
Trailing zeroes in the decimal portion are discarded.
williamr@2
  2100
williamr@2
  2101
@see TRealFormat
williamr@2
  2102
*/
williamr@2
  2103
const TInt KRealFormatCalculator=5;
williamr@2
  2104
williamr@2
  2105
williamr@2
  2106
williamr@2
  2107
williamr@2
  2108
// Extra flags ORed in with the previous types
williamr@2
  2109
williamr@2
  2110
williamr@2
  2111
/**
williamr@2
  2112
@publishedAll
williamr@2
  2113
@released
williamr@2
  2114
williamr@2
  2115
A bitmask for all flags except those with symbols starting KRealFormat...
williamr@2
  2116
*/
williamr@2
  2117
const TInt KRealFormatTypeFlagsMask=0x7C000000;
williamr@2
  2118
williamr@2
  2119
williamr@2
  2120
williamr@2
  2121
williamr@2
  2122
/**
williamr@2
  2123
@publishedAll
williamr@2
  2124
@released
williamr@2
  2125
williamr@2
  2126
A flag that modifies the format of the character representation of a real
williamr@2
  2127
number.
williamr@2
  2128
williamr@2
  2129
It reduces the effective width by one character. This forces a large enough
williamr@2
  2130
value for TRealFormat::iWidth to be chosen to guarantee that positive and
williamr@2
  2131
negative numbers can be shown to the same precision.
williamr@2
  2132
williamr@2
  2133
It applies when TRealFormat::iType is set to KRealFormatFixed
williamr@2
  2134
or KRealFormatGeneral, and should be ORed into TRealFormat::iType after one of
williamr@2
  2135
these types has been set.
williamr@2
  2136
*/
williamr@2
  2137
const TInt KExtraSpaceForSign=0x40000000;
williamr@2
  2138
williamr@2
  2139
williamr@2
  2140
williamr@2
  2141
/**
williamr@2
  2142
@publishedAll
williamr@2
  2143
@released
williamr@2
  2144
williamr@2
  2145
A flag that modifies the format of the character representation of a real
williamr@2
  2146
number.
williamr@2
  2147
williamr@2
  2148
It allows an exponent to be formatted whose magnitude is greater than 100.
williamr@2
  2149
If this flag is not set, an attempt to format such a number fails.
williamr@2
  2150
williamr@2
  2151
If set, three digit exponents are allowed. If not set, only two digit
williamr@2
  2152
exponents are allowed.
williamr@2
  2153
williamr@2
  2154
Applies when TRealFormat::iType is set to KRealFormatExponent
williamr@2
  2155
or KRealFormatGeneral, and should be ORed into TRealFormat::iType after one of
williamr@2
  2156
these types has been set.
williamr@2
  2157
*/
williamr@2
  2158
const TInt KAllowThreeDigitExp=0x20000000;
williamr@2
  2159
williamr@2
  2160
williamr@2
  2161
williamr@2
  2162
williamr@2
  2163
/**
williamr@2
  2164
@publishedAll
williamr@2
  2165
@released
williamr@2
  2166
williamr@2
  2167
A flag that modifies the format of the character representation of a real
williamr@2
  2168
number.
williamr@2
  2169
williamr@2
  2170
If set, the TRealFormat::iPlaces member is interpreted as the maximum number
williamr@2
  2171
of significant digits to be generated.
williamr@2
  2172
williamr@2
  2173
Applies when TRealFormat::iType is set to KRealFormatExponent, and should be
williamr@2
  2174
ORed into TRealFormat::iType after this type has been set.
williamr@2
  2175
*/
williamr@2
  2176
const TInt KUseSigFigs=0x10000000;
williamr@2
  2177
williamr@2
  2178
williamr@2
  2179
williamr@2
  2180
williamr@2
  2181
/**
williamr@2
  2182
@publishedAll
williamr@2
  2183
@released
williamr@2
  2184
williamr@2
  2185
A flag that modifies the format of the character representation of a real
williamr@2
  2186
number.
williamr@2
  2187
williamr@2
  2188
It disables triad separation.
williamr@2
  2189
williamr@2
  2190
Applies when TRealFormat::iType is set to KRealFormatFixed
williamr@2
  2191
or KRealFormatNoExponent, and should be ORed into TRealFormat::iType after one of
williamr@2
  2192
these types has been set.
williamr@2
  2193
*/
williamr@2
  2194
const TInt KDoNotUseTriads=0x08000000;
williamr@2
  2195
williamr@2
  2196
williamr@2
  2197
williamr@2
  2198
williamr@2
  2199
/**
williamr@2
  2200
@publishedAll
williamr@2
  2201
@released
williamr@2
  2202
williamr@2
  2203
A flag that modifies the format of the character representation of a real
williamr@2
  2204
number.
williamr@2
  2205
williamr@2
  2206
If set, this flag limits the precision to KPrecisionLimit digits.
williamr@2
  2207
If not set, the precision defaults to KMaxPrecision digits.
williamr@2
  2208
williamr@2
  2209
This flag should be ORed into TRealFormat::iType.
williamr@2
  2210
*/
williamr@2
  2211
const TInt KGeneralLimit=0x04000000;
williamr@2
  2212
williamr@2
  2213
williamr@2
  2214
williamr@2
  2215
williamr@2
  2216
/**
williamr@2
  2217
@publishedAll
williamr@2
  2218
@released
williamr@2
  2219
williamr@2
  2220
A value, which when passed to the new operator, indicates that the operation
williamr@2
  2221
is to leave if insufficient memory available.
williamr@2
  2222
*/
williamr@2
  2223
enum TLeave {ELeave};
williamr@2
  2224
williamr@2
  2225
williamr@2
  2226
williamr@2
  2227
williamr@2
  2228
/**
williamr@2
  2229
@publishedAll
williamr@2
  2230
@released
williamr@2
  2231
williamr@2
  2232
Defines the way in which the first week in a year is determined.
williamr@2
  2233
*/
williamr@2
  2234
enum TFirstWeekRule {
williamr@2
  2235
                    /**
williamr@2
  2236
                    The first week in the year is always the week containing
williamr@2
  2237
                    the first day of the year.
williamr@2
  2238
                    */
williamr@2
  2239
                    EFirstWeek,
williamr@2
  2240
                    /**
williamr@2
  2241
                    If at least four days of the new year occur during the week
williamr@2
  2242
                    containing the first day then this is the first week in the
williamr@2
  2243
                    year. Otherwise the first week in the year is the following
williamr@2
  2244
                    week. This is the default and complies with the
williamr@2
  2245
                    international standard.
williamr@2
  2246
                    */
williamr@2
  2247
                    EFirstFourDayWeek,
williamr@2
  2248
                    /**
williamr@2
  2249
                    The first week in the year is the first week of which all
williamr@2
  2250
                    seven days occur within the new year.
williamr@2
  2251
                    */
williamr@2
  2252
                    EFirstFullWeek
williamr@2
  2253
                    };
williamr@2
  2254
williamr@2
  2255
williamr@2
  2256
williamr@2
  2257
williamr@2
  2258
/**
williamr@2
  2259
@publishedAll
williamr@2
  2260
@released
williamr@2
  2261
williamr@2
  2262
Timer lock specifications.
williamr@2
  2263
williamr@2
  2264
They are used by CTimer::Lock() to define the fraction of a second in which 
williamr@2
  2265
to call its RunL() function.
williamr@2
  2266
williamr@2
  2267
@see CTimer
williamr@2
  2268
*/
williamr@2
  2269
enum TTimerLockSpec
williamr@2
  2270
	{
williamr@2
  2271
	/** Timer tick is at 1/12 past the second. */
williamr@2
  2272
	EOneOClock,
williamr@2
  2273
williamr@2
  2274
	/** Timer tick is at 2/12 past the second */
williamr@2
  2275
	ETwoOClock,
williamr@2
  2276
williamr@2
  2277
	/** Timer tick is at 3/12 past the second */
williamr@2
  2278
	EThreeOClock,
williamr@2
  2279
williamr@2
  2280
	/** Timer tick is at 4/12 past the second */
williamr@2
  2281
	EFourOClock,
williamr@2
  2282
williamr@2
  2283
	/** Timer tick is at 5/12 past the second */
williamr@2
  2284
	EFiveOClock,
williamr@2
  2285
williamr@2
  2286
	/** Timer tick is at 6/12 past the second */
williamr@2
  2287
	ESixOClock,
williamr@2
  2288
williamr@2
  2289
	/** Timer tick is at 7/12 past the second */
williamr@2
  2290
	ESevenOClock,
williamr@2
  2291
williamr@2
  2292
	/** Timer tick is at 8/12 past the second */
williamr@2
  2293
	EEightOClock,
williamr@2
  2294
williamr@2
  2295
	/** Timer tick is at 9/12 past the second */
williamr@2
  2296
	ENineOClock,
williamr@2
  2297
williamr@2
  2298
	/** Timer tick is at 10/12 past the second */
williamr@2
  2299
	ETenOClock,
williamr@2
  2300
williamr@2
  2301
	/** Timer tick is at 11/12 past the second */
williamr@2
  2302
	EElevenOClock,
williamr@2
  2303
williamr@2
  2304
	/** Timer tick is on the second */
williamr@2
  2305
	ETwelveOClock
williamr@2
  2306
	};
williamr@2
  2307
williamr@2
  2308
williamr@2
  2309
williamr@2
  2310
williamr@2
  2311
/**
williamr@2
  2312
@publishedAll
williamr@2
  2313
@released
williamr@2
  2314
williamr@2
  2315
Defines the possible environment changes which may be reported by
williamr@2
  2316
a change notifier through the RChangeNotifier interface.
williamr@2
  2317
williamr@2
  2318
Each enumerator corresponds to a distinct type of event.
williamr@2
  2319
williamr@2
  2320
The changes are reported through a TRequestStatus object when a request to
williamr@2
  2321
the change notifier completes. As each enumerator value represents
williamr@2
  2322
a separate bit, any combination of events can be reported.
williamr@2
  2323
williamr@2
  2324
@see RChangeNotifier
williamr@2
  2325
@see TRequestStatus
williamr@2
  2326
@see TLocale
williamr@2
  2327
*/
williamr@2
  2328
enum TChanges
williamr@2
  2329
	{
williamr@2
  2330
	/**
williamr@2
  2331
	The system locale has changed.
williamr@2
  2332
williamr@2
  2333
    Typically this event occurs as a result of a call to TLocale::Set().
williamr@2
  2334
	*/
williamr@2
  2335
	EChangesLocale=0x01,
williamr@2
  2336
williamr@2
  2337
	
williamr@2
  2338
	/**
williamr@2
  2339
	The system time has passed midnight.
williamr@2
  2340
	*/
williamr@2
  2341
	EChangesMidnightCrossover=0x02,
williamr@2
  2342
	
williamr@2
  2343
	
williamr@2
  2344
	/**
williamr@2
  2345
	A thread has died.
williamr@2
  2346
	
williamr@2
  2347
	This event is reported when any thread in the system dies.
williamr@2
  2348
    */
williamr@2
  2349
	EChangesThreadDeath=0x04,
williamr@2
  2350
	
williamr@2
  2351
	
williamr@2
  2352
	/**
williamr@2
  2353
	The status of the power supply has changed.
williamr@2
  2354
	*/
williamr@2
  2355
	EChangesPowerStatus=0x08,
williamr@2
  2356
williamr@2
  2357
williamr@2
  2358
	/**
williamr@2
  2359
	The system time has changed.
williamr@2
  2360
	*/
williamr@2
  2361
	EChangesSystemTime=0x10,
williamr@2
  2362
	
williamr@2
  2363
williamr@2
  2364
	/**
williamr@2
  2365
	The free memory level has crossed a specified threshold value.
williamr@2
  2366
	*/
williamr@2
  2367
	EChangesFreeMemory=0x20,
williamr@2
  2368
williamr@2
  2369
	
williamr@2
  2370
	/**
williamr@2
  2371
	A memory allocation has failed due to insufficient free memory.
williamr@2
  2372
	*/
williamr@2
  2373
	EChangesOutOfMemory=0x40,
williamr@2
  2374
	
williamr@2
  2375
williamr@2
  2376
	/**
williamr@2
  2377
	The free memory level has fallen below the low-memory threshold
williamr@2
  2378
	@see UserSvr::SetMemoryThresholds()
williamr@2
  2379
	*/
williamr@2
  2380
	EChangesLowMemory=0x80,
williamr@2
  2381
	};
williamr@2
  2382
williamr@2
  2383
williamr@2
  2384
williamr@2
  2385
williamr@2
  2386
/**
williamr@2
  2387
@publishedAll
williamr@2
  2388
@released
williamr@2
  2389
williamr@2
  2390
Defines a pointer to a thread function which takes a pointer of
williamr@2
  2391
type TAny and returns a TInt.
williamr@2
  2392
williamr@2
  2393
A function of this type is passed as parameter to RThread::Create()
williamr@2
  2394
when creating a thread. Control passes to this function when the thread
williamr@2
  2395
is first scheduled for execution.
williamr@2
  2396
williamr@2
  2397
@see RThread
williamr@2
  2398
*/
williamr@2
  2399
typedef TInt (*TThreadFunction)(TAny*);
williamr@2
  2400
williamr@2
  2401
williamr@2
  2402
williamr@2
  2403
williamr@2
  2404
/**
williamr@2
  2405
@publishedAll
williamr@2
  2406
@released
williamr@2
  2407
williamr@2
  2408
Defines a function that takes no arguments but returns a TInt.
williamr@2
  2409
williamr@2
  2410
This is a type which is returned from a call to RLibrary::Lookup().
williamr@2
  2411
williamr@2
  2412
@see RLibrary
williamr@2
  2413
*/
williamr@2
  2414
typedef TInt (*TLibraryFunction)();
williamr@2
  2415
williamr@2
  2416
williamr@2
  2417
williamr@2
  2418
williamr@2
  2419
/**
williamr@2
  2420
@publishedAll
williamr@2
  2421
@released
williamr@2
  2422
williamr@2
  2423
Defines a function that takes a single argument of type TInt and returns a TInt.
williamr@2
  2424
williamr@2
  2425
This is a type which is returned from a call to RLibrary::EntryPoint().
williamr@2
  2426
williamr@2
  2427
@see RLibrary
williamr@2
  2428
*/
williamr@2
  2429
typedef TInt (*TLibraryEntry)(TInt);
williamr@2
  2430
williamr@2
  2431
williamr@2
  2432
williamr@2
  2433
/**
williamr@2
  2434
@publishedAll
williamr@2
  2435
@released
williamr@2
  2436
williamr@2
  2437
Defines an exception handler function which takes a TExcType as an argument,
williamr@2
  2438
and returns void.
williamr@2
  2439
williamr@2
  2440
A function of this type is an exception handler used by member functions
williamr@2
  2441
of a thread handle, RThread.
williamr@2
  2442
williamr@2
  2443
@see RThread
williamr@2
  2444
@see TExcType
williamr@2
  2445
*/
williamr@2
  2446
typedef void (*TExceptionHandler)(TExcType);
williamr@2
  2447
williamr@2
  2448
williamr@2
  2449
williamr@2
  2450
williamr@2
  2451
// masking constants
williamr@2
  2452
williamr@2
  2453
/**
williamr@2
  2454
@publishedAll
williamr@2
  2455
@released
williamr@2
  2456
williamr@2
  2457
One of a set of flags that categorizes exceptions - associated with
williamr@2
  2458
the abort exception only.
williamr@2
  2459
williamr@2
  2460
@see RThread::SetExceptionHandler()
williamr@2
  2461
@see RThread::ModifyExceptionMask()
williamr@2
  2462
*/
williamr@2
  2463
const TUint KExceptionAbort=0x01;
williamr@2
  2464
williamr@2
  2465
williamr@2
  2466
williamr@2
  2467
williamr@2
  2468
/**
williamr@2
  2469
@publishedAll
williamr@2
  2470
@released
williamr@2
  2471
williamr@2
  2472
One of a set of flags that categorizes exceptions - associated with
williamr@2
  2473
the kill exception only.
williamr@2
  2474
williamr@2
  2475
@see RThread::SetExceptionHandler()
williamr@2
  2476
@see RThread::ModifyExceptionMask()
williamr@2
  2477
*/
williamr@2
  2478
const TUint KExceptionKill=0x02;
williamr@2
  2479
williamr@2
  2480
williamr@2
  2481
williamr@2
  2482
williamr@2
  2483
/**
williamr@2
  2484
@publishedAll
williamr@2
  2485
@released
williamr@2
  2486
williamr@2
  2487
One of a set of flags that categorizes exceptions - general
williamr@2
  2488
and user exceptions.
williamr@2
  2489
williamr@2
  2490
@see RThread::SetExceptionHandler()
williamr@2
  2491
@see RThread::ModifyExceptionMask()
williamr@2
  2492
*/
williamr@2
  2493
const TUint KExceptionUserInterrupt=0x04;
williamr@2
  2494
williamr@2
  2495
williamr@2
  2496
williamr@2
  2497
williamr@2
  2498
/**
williamr@2
  2499
@publishedAll
williamr@2
  2500
@released
williamr@2
  2501
williamr@2
  2502
One of a set of flags that categorizes exceptions - exceptions caused
williamr@2
  2503
by illegal floating point operations. This exception is not guaranteed
williamr@2
  2504
to be raised when a hardware floating point implementation is in use.
williamr@2
  2505
williamr@2
  2506
@see RThread::SetExceptionHandler()
williamr@2
  2507
@see RThread::ModifyExceptionMask()
williamr@2
  2508
*/
williamr@2
  2509
const TUint KExceptionFpe=0x08;
williamr@2
  2510
williamr@2
  2511
williamr@2
  2512
williamr@2
  2513
williamr@2
  2514
/**
williamr@2
  2515
@publishedAll
williamr@2
  2516
@released
williamr@2
  2517
williamr@2
  2518
One of a set of flags that categorizes exceptions - exceptions associated
williamr@2
  2519
with executing instructions; includes protection faults,
williamr@2
  2520
illegal instruction codes, page faults etc
williamr@2
  2521
williamr@2
  2522
@see RThread::SetExceptionHandler()
williamr@2
  2523
@see RThread::ModifyExceptionMask()
williamr@2
  2524
*/
williamr@2
  2525
const TUint KExceptionFault=0x10;
williamr@2
  2526
williamr@2
  2527
williamr@2
  2528
williamr@2
  2529
williamr@2
  2530
/**
williamr@2
  2531
@publishedAll
williamr@2
  2532
@released
williamr@2
  2533
williamr@2
  2534
One of a set of flags that categorizes exceptions - exceptions caused
williamr@2
  2535
by illegal operations on integer values.
williamr@2
  2536
*/
williamr@2
  2537
const TUint KExceptionInteger=0x20;
williamr@2
  2538
williamr@2
  2539
williamr@2
  2540
williamr@2
  2541
williamr@2
  2542
/**
williamr@2
  2543
@publishedAll
williamr@2
  2544
@released
williamr@2
  2545
williamr@2
  2546
One of a set of flags that categorizes exceptions - exceptions raised
williamr@2
  2547
when debugging code.
williamr@2
  2548
williamr@2
  2549
@see RThread::SetExceptionHandler()
williamr@2
  2550
@see RThread::ModifyExceptionMask()
williamr@2
  2551
*/
williamr@2
  2552
const TUint KExceptionDebug=0x40;
williamr@2
  2553
williamr@2
  2554
williamr@2
  2555
williamr@2
  2556
williamr@2
  2557
/**
williamr@2
  2558
@publishedAll
williamr@2
  2559
@released
williamr@2
  2560
williamr@2
  2561
Aligns the specified value on the boundary defined by __Size.
williamr@2
  2562
This is usually 4 for byte alignment or 2 for double-byte alignment.
williamr@2
  2563
williamr@2
  2564
@param s The value to be aligned.
williamr@2
  2565
*/
williamr@2
  2566
#define __Align(s) ((((s)+__Size-1)/__Size)*__Size)
williamr@2
  2567
williamr@2
  2568
williamr@2
  2569
williamr@2
  2570
williamr@2
  2571
/**
williamr@2
  2572
@publishedAll
williamr@2
  2573
@released
williamr@2
  2574
williamr@2
  2575
Defines the type of environment data passed to a process
williamr@2
  2576
when that process is created.
williamr@2
  2577
williamr@2
  2578
The data can be either a handle or just binary data.
williamr@2
  2579
*/
williamr@2
  2580
enum TProcessParameterType
williamr@2
  2581
	{
williamr@2
  2582
	EHandle=1,
williamr@2
  2583
	EBinaryData=2,
williamr@2
  2584
	};
williamr@2
  2585
williamr@2
  2586
williamr@2
  2587
williamr@2
  2588
williamr@2
  2589
// bitwise constants
williamr@2
  2590
williamr@2
  2591
/**
williamr@2
  2592
@publishedAll
williamr@2
  2593
@released
williamr@2
  2594
williamr@2
  2595
Constant that defines the specified bit value.
williamr@2
  2596
*/
williamr@2
  2597
const TUint32 KBit0= 0x00000001;
williamr@2
  2598
williamr@2
  2599
williamr@2
  2600
williamr@2
  2601
williamr@2
  2602
/**
williamr@2
  2603
@publishedAll
williamr@2
  2604
@released
williamr@2
  2605
williamr@2
  2606
Constant that defines the specified bit value.
williamr@2
  2607
*/
williamr@2
  2608
const TUint32 KBit1= 0x00000002;
williamr@2
  2609
williamr@2
  2610
williamr@2
  2611
williamr@2
  2612
williamr@2
  2613
/**
williamr@2
  2614
@publishedAll
williamr@2
  2615
@released
williamr@2
  2616
williamr@2
  2617
Constant that defines the specified bit value.
williamr@2
  2618
*/
williamr@2
  2619
const TUint32 KBit2= 0x00000004;
williamr@2
  2620
williamr@2
  2621
williamr@2
  2622
williamr@2
  2623
williamr@2
  2624
/**
williamr@2
  2625
@publishedAll
williamr@2
  2626
@released
williamr@2
  2627
williamr@2
  2628
Constant that defines the specified bit value.
williamr@2
  2629
*/
williamr@2
  2630
const TUint32 KBit3= 0x00000008;
williamr@2
  2631
williamr@2
  2632
williamr@2
  2633
williamr@2
  2634
williamr@2
  2635
/**
williamr@2
  2636
@publishedAll
williamr@2
  2637
@released
williamr@2
  2638
williamr@2
  2639
Constant that defines the specified bit value.
williamr@2
  2640
*/
williamr@2
  2641
const TUint32 KBit4= 0x00000010;
williamr@2
  2642
williamr@2
  2643
williamr@2
  2644
williamr@2
  2645
williamr@2
  2646
/**
williamr@2
  2647
@publishedAll
williamr@2
  2648
@released
williamr@2
  2649
williamr@2
  2650
Constant that defines the specified bit value.
williamr@2
  2651
*/
williamr@2
  2652
const TUint32 KBit5= 0x00000020;
williamr@2
  2653
williamr@2
  2654
williamr@2
  2655
williamr@2
  2656
williamr@2
  2657
/**
williamr@2
  2658
@publishedAll
williamr@2
  2659
@released
williamr@2
  2660
williamr@2
  2661
Constant that defines the specified bit value.
williamr@2
  2662
*/
williamr@2
  2663
const TUint32 KBit6= 0x00000040;
williamr@2
  2664
williamr@2
  2665
williamr@2
  2666
williamr@2
  2667
williamr@2
  2668
/**
williamr@2
  2669
@publishedAll
williamr@2
  2670
@released
williamr@2
  2671
williamr@2
  2672
Constant that defines the specified bit value.
williamr@2
  2673
*/
williamr@2
  2674
const TUint32 KBit7= 0x00000080;
williamr@2
  2675
williamr@2
  2676
williamr@2
  2677
williamr@2
  2678
williamr@2
  2679
/**
williamr@2
  2680
@publishedAll
williamr@2
  2681
@released
williamr@2
  2682
williamr@2
  2683
Constant that defines the specified bit value.
williamr@2
  2684
*/
williamr@2
  2685
const TUint32 KBit8= 0x00000100;
williamr@2
  2686
williamr@2
  2687
williamr@2
  2688
williamr@2
  2689
williamr@2
  2690
/**
williamr@2
  2691
@publishedAll
williamr@2
  2692
@released
williamr@2
  2693
williamr@2
  2694
Constant that defines the specified bit value.
williamr@2
  2695
*/
williamr@2
  2696
const TUint32 KBit9= 0x00000200;
williamr@2
  2697
williamr@2
  2698
williamr@2
  2699
williamr@2
  2700
williamr@2
  2701
/**
williamr@2
  2702
@publishedAll
williamr@2
  2703
@released
williamr@2
  2704
williamr@2
  2705
Constant that defines the specified bit value.
williamr@2
  2706
*/
williamr@2
  2707
const TUint32 KBit10=0x00000400;
williamr@2
  2708
williamr@2
  2709
williamr@2
  2710
williamr@2
  2711
williamr@2
  2712
/**
williamr@2
  2713
@publishedAll
williamr@2
  2714
@released
williamr@2
  2715
williamr@2
  2716
Constant that defines the specified bit value.
williamr@2
  2717
*/
williamr@2
  2718
const TUint32 KBit11=0x00000800;
williamr@2
  2719
williamr@2
  2720
williamr@2
  2721
williamr@2
  2722
williamr@2
  2723
/**
williamr@2
  2724
@publishedAll
williamr@2
  2725
@released
williamr@2
  2726
williamr@2
  2727
Constant that defines the specified bit value.
williamr@2
  2728
*/
williamr@2
  2729
const TUint32 KBit12=0x00001000;
williamr@2
  2730
williamr@2
  2731
williamr@2
  2732
williamr@2
  2733
williamr@2
  2734
/**
williamr@2
  2735
@publishedAll
williamr@2
  2736
@released
williamr@2
  2737
williamr@2
  2738
Constant that defines the specified bit value.
williamr@2
  2739
*/
williamr@2
  2740
const TUint32 KBit13=0x00002000;
williamr@2
  2741
williamr@2
  2742
williamr@2
  2743
williamr@2
  2744
williamr@2
  2745
/**
williamr@2
  2746
@publishedAll
williamr@2
  2747
@released
williamr@2
  2748
williamr@2
  2749
Constant that defines the specified bit value.
williamr@2
  2750
*/
williamr@2
  2751
const TUint32 KBit14=0x00004000;
williamr@2
  2752
williamr@2
  2753
williamr@2
  2754
williamr@2
  2755
williamr@2
  2756
/**
williamr@2
  2757
@publishedAll
williamr@2
  2758
@released
williamr@2
  2759
williamr@2
  2760
Constant that defines the specified bit value.
williamr@2
  2761
*/
williamr@2
  2762
const TUint32 KBit15=0x00008000;
williamr@2
  2763
williamr@2
  2764
williamr@2
  2765
williamr@2
  2766
williamr@2
  2767
/**
williamr@2
  2768
@publishedAll
williamr@2
  2769
@released
williamr@2
  2770
williamr@2
  2771
Constant that defines the specified bit value.
williamr@2
  2772
*/
williamr@2
  2773
const TUint32 KBit16=0x00010000;
williamr@2
  2774
williamr@2
  2775
williamr@2
  2776
williamr@2
  2777
williamr@2
  2778
/**
williamr@2
  2779
@publishedAll
williamr@2
  2780
@released
williamr@2
  2781
williamr@2
  2782
Constant that defines the specified bit value.
williamr@2
  2783
*/
williamr@2
  2784
const TUint32 KBit17=0x00020000;
williamr@2
  2785
williamr@2
  2786
williamr@2
  2787
williamr@2
  2788
williamr@2
  2789
/**
williamr@2
  2790
@publishedAll
williamr@2
  2791
@released
williamr@2
  2792
williamr@2
  2793
Constant that defines the specified bit value.
williamr@2
  2794
*/
williamr@2
  2795
const TUint32 KBit18=0x00040000;
williamr@2
  2796
williamr@2
  2797
williamr@2
  2798
williamr@2
  2799
williamr@2
  2800
/**
williamr@2
  2801
@publishedAll
williamr@2
  2802
@released
williamr@2
  2803
williamr@2
  2804
Constant that defines the specified bit value.
williamr@2
  2805
*/
williamr@2
  2806
const TUint32 KBit19=0x00080000;
williamr@2
  2807
williamr@2
  2808
williamr@2
  2809
williamr@2
  2810
williamr@2
  2811
/**
williamr@2
  2812
@publishedAll
williamr@2
  2813
@released
williamr@2
  2814
williamr@2
  2815
Constant that defines the specified bit value.
williamr@2
  2816
*/
williamr@2
  2817
const TUint32 KBit20=0x00100000;
williamr@2
  2818
williamr@2
  2819
williamr@2
  2820
williamr@2
  2821
williamr@2
  2822
/**
williamr@2
  2823
@publishedAll
williamr@2
  2824
@released
williamr@2
  2825
williamr@2
  2826
Constant that defines the specified bit value.
williamr@2
  2827
*/
williamr@2
  2828
const TUint32 KBit21=0x00200000;
williamr@2
  2829
williamr@2
  2830
williamr@2
  2831
williamr@2
  2832
williamr@2
  2833
/**
williamr@2
  2834
@publishedAll
williamr@2
  2835
@released
williamr@2
  2836
williamr@2
  2837
Constant that defines the specified bit value.
williamr@2
  2838
*/
williamr@2
  2839
const TUint32 KBit22=0x00400000;
williamr@2
  2840
williamr@2
  2841
williamr@2
  2842
williamr@2
  2843
williamr@2
  2844
/**
williamr@2
  2845
@publishedAll
williamr@2
  2846
@released
williamr@2
  2847
williamr@2
  2848
Constant that defines the specified bit value.
williamr@2
  2849
*/
williamr@2
  2850
const TUint32 KBit23=0x00800000;
williamr@2
  2851
williamr@2
  2852
williamr@2
  2853
williamr@2
  2854
williamr@2
  2855
/**
williamr@2
  2856
@publishedAll
williamr@2
  2857
@released
williamr@2
  2858
williamr@2
  2859
Constant that defines the specified bit value.
williamr@2
  2860
*/
williamr@2
  2861
const TUint32 KBit24=0x01000000;
williamr@2
  2862
williamr@2
  2863
williamr@2
  2864
williamr@2
  2865
williamr@2
  2866
/**
williamr@2
  2867
@publishedAll
williamr@2
  2868
@released
williamr@2
  2869
williamr@2
  2870
Constant that defines the specified bit value.
williamr@2
  2871
*/
williamr@2
  2872
const TUint32 KBit25=0x02000000;
williamr@2
  2873
williamr@2
  2874
williamr@2
  2875
williamr@2
  2876
williamr@2
  2877
/**
williamr@2
  2878
@publishedAll
williamr@2
  2879
@released
williamr@2
  2880
williamr@2
  2881
Constant that defines the specified bit value.
williamr@2
  2882
*/
williamr@2
  2883
const TUint32 KBit26=0x04000000;
williamr@2
  2884
williamr@2
  2885
williamr@2
  2886
williamr@2
  2887
williamr@2
  2888
/**
williamr@2
  2889
@publishedAll
williamr@2
  2890
@released
williamr@2
  2891
williamr@2
  2892
Constant that defines the specified bit value.
williamr@2
  2893
*/
williamr@2
  2894
const TUint32 KBit27=0x08000000;
williamr@2
  2895
williamr@2
  2896
williamr@2
  2897
williamr@2
  2898
williamr@2
  2899
/**
williamr@2
  2900
@publishedAll
williamr@2
  2901
@released
williamr@2
  2902
williamr@2
  2903
Constant that defines the specified bit value.
williamr@2
  2904
*/
williamr@2
  2905
const TUint32 KBit28=0x10000000;
williamr@2
  2906
williamr@2
  2907
williamr@2
  2908
williamr@2
  2909
williamr@2
  2910
/**
williamr@2
  2911
@publishedAll
williamr@2
  2912
@released
williamr@2
  2913
williamr@2
  2914
Constant that defines the specified bit value.
williamr@2
  2915
*/
williamr@2
  2916
const TUint32 KBit29=0x20000000;
williamr@2
  2917
williamr@2
  2918
williamr@2
  2919
williamr@2
  2920
williamr@2
  2921
/**
williamr@2
  2922
@publishedAll
williamr@2
  2923
@released
williamr@2
  2924
williamr@2
  2925
Constant that defines the specified bit value.
williamr@2
  2926
*/
williamr@2
  2927
const TUint32 KBit30=0x40000000;
williamr@2
  2928
williamr@2
  2929
williamr@2
  2930
williamr@2
  2931
williamr@2
  2932
/**
williamr@2
  2933
@publishedAll
williamr@2
  2934
@released
williamr@2
  2935
williamr@2
  2936
Constant that defines the specified bit value.
williamr@2
  2937
*/
williamr@2
  2938
const TUint32 KBit31=0x80000000;
williamr@2
  2939
williamr@2
  2940
williamr@2
  2941
williamr@2
  2942
williamr@2
  2943
/**
williamr@2
  2944
@publishedAll
williamr@2
  2945
@released
williamr@2
  2946
williamr@2
  2947
Constant that defines the specified bit value.
williamr@2
  2948
williamr@2
  2949
This is often used as a bit mask.
williamr@2
  2950
*/
williamr@2
  2951
const TUint32 KSet32=0xffffffff;
williamr@2
  2952
williamr@2
  2953
williamr@2
  2954
williamr@2
  2955
williamr@2
  2956
/**
williamr@2
  2957
@publishedAll
williamr@2
  2958
@released
williamr@2
  2959
williamr@2
  2960
williamr@2
  2961
Constant that defines the specified bit value.
williamr@2
  2962
williamr@2
  2963
This is often used as a bit mask.
williamr@2
  2964
*/
williamr@2
  2965
const TUint32 KClear32=0x00000000;
williamr@2
  2966
  
williamr@2
  2967
  
williamr@2
  2968
  
williamr@2
  2969
williamr@2
  2970
/**
williamr@2
  2971
@publishedAll
williamr@2
  2972
@released
williamr@2
  2973
williamr@2
  2974
Constant that defines the specified  value.
williamr@2
  2975
*/
williamr@2
  2976
const TInt KKilo=1024;
williamr@2
  2977
williamr@2
  2978
williamr@2
  2979
williamr@2
  2980
williamr@2
  2981
/**
williamr@2
  2982
@publishedAll
williamr@2
  2983
@released
williamr@2
  2984
williamr@2
  2985
Constant that defines the specified  value.
williamr@2
  2986
*/
williamr@2
  2987
const TInt KMega=1024*1024;
williamr@2
  2988
williamr@2
  2989
williamr@2
  2990
williamr@2
  2991
williamr@2
  2992
/**
williamr@2
  2993
@publishedAll
williamr@2
  2994
@released
williamr@2
  2995
williamr@2
  2996
Client/Server Session types.
williamr@2
  2997
*/
williamr@2
  2998
enum TIpcSessionType
williamr@2
  2999
	{
williamr@2
  3000
	/**
williamr@2
  3001
	The session is not sharable with other threads.
williamr@2
  3002
	*/
williamr@2
  3003
	EIpcSession_Unsharable=0,
williamr@2
  3004
williamr@2
  3005
	/**
williamr@2
  3006
	The session is sharable with other threads in the same process.
williamr@2
  3007
	*/
williamr@2
  3008
	EIpcSession_Sharable=1,
williamr@2
  3009
williamr@2
  3010
	/**
williamr@2
  3011
	The session is sharable with all other threads in the system.
williamr@2
  3012
	*/
williamr@2
  3013
	EIpcSession_GlobalSharable=2
williamr@2
  3014
	};
williamr@2
  3015
williamr@2
  3016
williamr@2
  3017
williamr@2
  3018
williamr@2
  3019
/**
williamr@2
  3020
@publishedAll
williamr@2
  3021
@released
williamr@2
  3022
*/
williamr@2
  3023
const TInt KNullDebugPort=-2;
williamr@2
  3024
williamr@2
  3025
/**
williamr@2
  3026
@internalTechnology
williamr@2
  3027
*/
williamr@2
  3028
const TUint32 KModuleVersionWild=0xfffffffeu;
williamr@2
  3029
/**
williamr@2
  3030
@internalTechnology
williamr@2
  3031
*/
williamr@2
  3032
const TUint32 KModuleVersionNull=0xffffffffu;
williamr@2
  3033
williamr@2
  3034
williamr@2
  3035
williamr@2
  3036
/**
williamr@2
  3037
A constant which represents a thread ID which will never be assigned to a thread.
williamr@2
  3038
I.e. The following statement is always true; RThread::Id()!=KNullThreadId
williamr@2
  3039
@publishedAll
williamr@2
  3040
@released
williamr@2
  3041
@see TThreadId
williamr@2
  3042
*/
williamr@2
  3043
const TUint KNullThreadId = 0xffffffffu;
williamr@2
  3044
williamr@2
  3045
williamr@2
  3046
williamr@2
  3047
/**
williamr@2
  3048
A constant which represents a process ID which will never be assigned to a process.
williamr@2
  3049
I.e. The following statement is always true; RProcess::Id()!=KNullProcessId
williamr@2
  3050
@publishedAll
williamr@2
  3051
@released
williamr@2
  3052
@see TProcessId
williamr@2
  3053
*/
williamr@2
  3054
const TUint KNullProcessId = 0xffffffffu;
williamr@2
  3055
williamr@2
  3056
williamr@2
  3057
williamr@2
  3058
/**
williamr@2
  3059
@publishedAll
williamr@2
  3060
@released
williamr@2
  3061
williamr@2
  3062
Hardware floating point types.
williamr@2
  3063
*/
williamr@2
  3064
enum TFloatingPointType
williamr@2
  3065
	{
williamr@2
  3066
	/** No hardware floating point. */
williamr@2
  3067
	EFpTypeNone=0,
williamr@2
  3068
	/** ARM VFPv2 */
williamr@2
  3069
	EFpTypeVFPv2=1,
williamr@2
  3070
	/** ARM VFPv3 */
williamr@2
  3071
	EFpTypeVFPv3=2
williamr@2
  3072
	};
williamr@2
  3073
williamr@2
  3074
williamr@2
  3075
williamr@2
  3076
/**
williamr@2
  3077
@publishedAll
williamr@2
  3078
@released
williamr@2
  3079
williamr@2
  3080
Hardware floating point execution modes.
williamr@2
  3081
*/
williamr@2
  3082
enum TFloatingPointMode
williamr@2
  3083
	{
williamr@2
  3084
	/**
williamr@2
  3085
	Run in the fastest mode available - results of calculations may not be
williamr@2
  3086
	exactly as the IEEE standard in some cases. On ARM VFPv2 hardware this
williamr@2
  3087
	corresponds to RunFast mode.
williamr@2
  3088
	*/
williamr@2
  3089
	EFpModeRunFast=0,
williamr@2
  3090
williamr@2
  3091
	/**
williamr@2
  3092
	Perform all calculations as specified in the IEEE standard, but do not
williamr@2
  3093
	generate floating point exceptions. This is compatible with the Java
williamr@2
  3094
	floating point model. This is the default.
williamr@2
  3095
	*/
williamr@2
  3096
	EFpModeIEEENoExceptions=1
williamr@2
  3097
	};
williamr@2
  3098
williamr@2
  3099
williamr@2
  3100
williamr@2
  3101
williamr@2
  3102
/**
williamr@2
  3103
@publishedAll
williamr@2
  3104
@released
williamr@2
  3105
williamr@2
  3106
Hardware floating point rounding modes.
williamr@2
  3107
*/
williamr@2
  3108
enum TFloatingPointRoundingMode
williamr@2
  3109
	{
williamr@2
  3110
	/**
williamr@2
  3111
	Round to the nearest value. This is the default.
williamr@2
  3112
	*/
williamr@2
  3113
	EFpRoundToNearest=0,
williamr@2
  3114
williamr@2
  3115
	/**
williamr@2
  3116
	Round toward positive infinity.
williamr@2
  3117
	*/
williamr@2
  3118
	EFpRoundToPlusInfinity=1,
williamr@2
  3119
williamr@2
  3120
	/**
williamr@2
  3121
	Round toward negative infinity.
williamr@2
  3122
	*/
williamr@2
  3123
	EFpRoundToMinusInfinity=2,
williamr@2
  3124
williamr@2
  3125
	/**
williamr@2
  3126
	Round toward zero.
williamr@2
  3127
	*/
williamr@2
  3128
	EFpRoundToZero=3,
williamr@2
  3129
williamr@2
  3130
	/**
williamr@2
  3131
	@internalComponent
williamr@2
  3132
	*/
williamr@2
  3133
	EFpRoundNumModes=4
williamr@2
  3134
	};
williamr@2
  3135
williamr@2
  3136
williamr@2
  3137
williamr@2
  3138
#include <e32capability.h>
williamr@2
  3139
williamr@2
  3140
#endif