Attempt to represent the S^2->S^3 header reorganisation as a series of "hg rename" operations
1 // Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
14 // e32\include\e32hal.h
24 @deprecated No replacement.
26 const TInt KMaxRomDevices=8;
35 Defines the calibration settings that can be restored by
36 the digitiser's implementation of DDigitiser::RestoreXYInputCalibration.
38 See the digitiser template port in:
40 ...\template\template_variant\specific\xyin.cpp
43 @see DDigitiser::RestoreXYInputCalibration()
45 enum TDigitizerCalibrationType
47 EFactory, /**< Restore to factory settings. */
48 ESaved /**< Restore to saved settings. */
58 Defines the screen coordinates of the point touched during calibration.
60 An object of this type is passed, via a TPckgBuf, to the HAL handler
61 that deals with the HAL group function-id pair:
62 - EHalGroupDigitiser, EDigitiserHalSetXYInputCalibration
63 - EHalGroupDigitiser, EDigitiserHalCalibrationPoints
64 - EHalGroupDigitiser, EDigitiserHalRestoreXYInputCalibration
66 @see EDigitiserHalSetXYInputCalibration
67 @see EDigitiserHalCalibrationPoints
68 @see EDigitiserHalRestoreXYInputCalibration
69 @see TDigitiserHalFunction
70 @see EHalGroupDigitiser
73 class TDigitizerCalibration
76 TPoint iTl; /**< Top left point.*/
77 TPoint iBl; /**< Bottom left point. */
78 TPoint iTr; /**< Top right point.*/
79 TPoint iBr; /**< Bottom right point.*/
89 An enum that identifies the full set of keyboard types.
91 A variable of this type is defined and used in the TKeyboardInfoV01 struct.
93 @see TKeyboardInfoV01::iKeyboardType.
97 EKeyboard_Keypad=1, /**< Keypad type*/
98 EKeyboard_Full=2, /**< Full keyboard type*/
108 Encapsulates information about the keyboard.
110 NOTE that the information represented here is not used by Symbian OS,
111 and exists to maintain binary compatibilty with older versions.
113 However, keyboard drivers that implement the HAL handler for
114 the EHalGroupKeyboard group still need to return a default object
116 See the template port.
118 An object of this type is passed, via a TPckgBuf, to the HAL handler
119 that deals with the HAL group function-id pair:
120 - EHalGroupKeyboard, EKeyboardHalKeyboardInfo;
122 @see EKeyboardHalKeyboardInfo
123 @see TKeyboardHalFunction
124 @see EHalGroupKeyboard
127 class TKeyboardInfoV01
131 The number of device keys.
133 NOTE that the information represented by this variable is not
134 used by Symbian OS, and exists to maintain binary compatibility
141 The number of application keys.
143 NOTE that the information represented by this variable is not
144 used by Symbian OS, and exists to maintain binary compatibility
151 Defines the type of keyboard available as enumerated by
154 NOTE that the information represented by this variable is not
155 used by Symbian OS, and exists to maintain binary compatibility
160 TKeyboard iKeyboardType;
170 Package buffer for a TKeyboardInfoV01 object.
172 @see TKeyboardInfoV01
174 typedef TPckgBuf<TKeyboardInfoV01> TKeyboardInfoV01Buf;
183 Encapsulates information about the digitiser.
185 An object of this type is passed, via a TPckgBuf, to the HAL handler
186 that deals with the HAL group function-id pair:
187 - EHalGroupDigitiser, EDigitiserHalXYInfo;
189 @see EDigitiserHalXYInfo
190 @see TDigitiserHalFunction
191 @see EHalGroupDigitiser
194 class TDigitiserInfoV01
197 TPoint iOffsetToDisplay;/**< The offset in pixels from the digitiser usable area to the display area. */
198 TSize iDigitiserSize; /**< The width/height of the display in pixels as used by digitiser.*/
206 Encapsulates extra information required by 3 dimensional pointing devices.
208 class TDigitiserInfoV02 : public TDigitiserInfoV01
210 TInt iZRange; /**< The maximum distance to screen a pointing device will be detected (settable).*/
211 TUint8 iThetaSupported; /**< A Boolean value that indicates if Theta polar angle detection (tilt) is supported.*/
212 TUint8 iPhiSupported; /**< A Boolean value that indicates if Phi polar angle detection (tilt) is supported.*/
213 TUint8 iAlphaSupported; /**< A Boolean value that indicates if rotation of the pointing device along its main axis is supported.*/
214 TUint8 iPressureSupported; /**< A Boolean value that indicates if pressure applied on screen is supported.*/
222 Package buffer for a TDigitiserInfoV01 object.
224 @see TDigitiserInfoV01
226 typedef TPckgBuf<TDigitiserInfoV01> TDigitiserInfoV01Buf;
232 Package buffer for a TDigitiserInfoV02 object.
234 @see TDigitiserInfoV02
236 typedef TPckgBuf<TDigitiserInfoV02> TDigitiserInfoV02Buf;
242 Encapsulates information about the mouse display characteristics.
244 An object of this type is passed, via a TPckgBuf, to the HAL handler
245 that deals with the HAL group function-id pair:
246 - EHalGroupMouse, EMouseHalMouseInfo;
248 @see EMouseHalMouseInfo
249 @see TMouseHalFunction
256 TInt iMouseButtons; /**< The number of mouse buttons.*/
257 TPoint iOffsetToDisplay; /**< The offset in pixels from the mouse usable area to the display area.*/
258 TSize iMouseAreaSize; /**< The width/height of the display in pixels as used by the mouse. */
268 Package buffer for a TMouseInfoV01 object.
272 typedef TPckgBuf<TMouseInfoV01> TMouseInfoV01Buf;
280 Encapsulates Variant specific information.
282 An object of this type is passed, via a TPckgBuf, to the HAL handler
283 that deals with the HAL group function-id pair:
284 - EHalGroupVariant, EVariantHalVariantInfo;
286 @see EVariantHalVariantInfo
287 @see TVariantHalFunction
288 @see EHalGroupVariant
291 class TVariantInfoV01
297 TVersion iRomVersion;
300 The Id that uniquely identifies the device.
302 SInt64 iMachineUniqueId;
305 The bits that represent the LED capabilities.
307 NB capabilities in this context does not mean security capabilities.
309 TUint iLedCapabilities;
312 The processor clock speed.
314 TInt iProcessorClockInKHz;
329 Package buffer for a TVariantInfoV01 object.
333 typedef TPckgBuf<TVariantInfoV01> TVariantInfoV01Buf;
340 @deprecated Use HAL::Get() from the HAL library instead with attributes ESystemStartupReason.
342 The reason that the device last reset
344 Note that not all reasons can occur on all devices.
346 enum TMachineStartupType
348 EStartupCold,EStartupColdReset,EStartupNewOs,
349 EStartupPowerFail,EStartupWarmReset,EStartupKernelFault,
358 @deprecated Use HAL::Get() from the HAL library instead with attributes EPen or EMouse.
360 The XY input method supported
374 @deprecated Use HAL::Get() from the HAL library instead.
376 Miscellaneous machine info.
381 TVersion iRomVersion;
382 TXYInputType iXYInputType;
383 TBool iKeyboardPresent;
384 TBool iBacklightPresent;
385 TSize iDisplaySizeInPixels;
386 TSize iXYInputSizeInPixels;
387 TSize iPhysicalScreenSize;
388 TPoint iOffsetToDisplayInPixels;
391 SInt64 iMachineUniqueId;
392 TUint iLedCapabilities;
393 TInt iProcessorClockInKHz;
395 TInt iMaximumDisplayColors;
401 typedef TPckgBuf<TMachineInfoV1> TMachineInfoV1Buf;
408 @deprecated Use HAL::Get() from the HAL library instead with attributes ELanguageIndex or EKeyboardIndex.
410 Miscellaneous locale info.
412 class TMachineInfoV2 : public TMachineInfoV1
422 typedef TPckgBuf<TMachineInfoV2> TMachineInfoV2Buf;
429 @deprecated Use HAL::Get() from the HAL library instead with attributes EMemoryRAM, EMemoryRAMFree or EMemoryROM.
431 Miscellaneous memory info.
436 TInt iTotalRamInBytes;
437 TInt iTotalRomInBytes;
438 TInt iMaxFreeRamInBytes;
439 TInt iFreeRamInBytes;
440 TInt iInternalDiskRamInBytes;
441 TBool iRomIsReprogrammable;
447 typedef TPckgBuf<TMemoryInfoV1> TMemoryInfoV1Buf;
454 @deprecated No replacement.
456 Miscellaneous ROM info.
458 class TRomInfoEntryV1
466 TInt iSize; // size of ROM in bytes, 0=no ROM present
467 TInt iWidth; // bus width in bits
468 TInt iSpeed; // number of wait states
469 TRomTypeV1 iType; // 0=ROM, 1=FLASH
477 @deprecated No replacement.
479 Miscellaneous ROM info.
484 TRomInfoEntryV1 iEntry[KMaxRomDevices];
490 typedef TPckgBuf<TRomInfoV1> TRomInfoV1Buf;
496 const TUint KRuggedFileSystem=0x01;
505 TInt iTotalSupportedDrives;
506 TInfoName iDriveName[KMaxLocalDrives];
508 TInfoName iSocketName[KMaxPBusSockets];
509 TInt iRuggedFileSystem;
510 TUint iRegisteredDriveBitmask;
516 typedef TPckgBuf<TDriveInfoV1> TDriveInfoV1Buf;
518 #if defined(_UNICODE) && !defined(__KERNEL_MODE__)
526 TInt iTotalSupportedDrives;
527 TBuf8<KMaxInfoName> iDriveName[KMaxLocalDrives]; //TInfoName
529 TBuf8<KMaxInfoName> iSocketName[KMaxPBusSockets]; //TInfoName
530 TInt iRuggedFileSystem;
531 TUint iRegisteredDriveBitmask;
537 typedef TPckgBuf<TDriveInfoV18> TDriveInfoV1Buf8;
539 typedef TDriveInfoV1 TDriveInfoV18;
540 typedef TDriveInfoV1Buf TDriveInfoV1Buf8;
555 #ifndef __KERNEL_MODE__
565 A set of user side utility functions for acessing hardware related
568 Four of these functions are DEPRECATED and should NOT be used; some of
569 these functions have replacements, but others do not; see the description of
570 the individual functions.
572 The following functions are not deprecated, but are only used by Symbian
573 OS as part of its internal implementation:
574 - UserHal::FaultReason()
575 - UserHal::ExceptionId()
576 - UserHal::ExceptionInfo()
577 - UserHal::PageSizeInBytes()
578 - UserHal::TickPeriod()
579 - UserHal::DriveInfo()
580 - UserHal::SwitchOff()
581 - UserHal::SetXYInputCalibration()
582 - UserHal::CalibrationPoints()
583 - UserHal::SaveXYInputCalibration()
584 - UserHal::RestoreXYInputCalibration()
590 IMPORT_C static TInt MemoryInfo(TDes8& anInfo);
591 IMPORT_C static TInt RomInfo(TDes8& anInfo);
592 IMPORT_C static TInt StartupReason(TMachineStartupType& aReason);
593 IMPORT_C static TInt FaultReason(TInt &aReason);
594 IMPORT_C static TInt ExceptionId(TInt &anId);
595 IMPORT_C static TInt ExceptionInfo(TExcInfo &aInfo);
596 IMPORT_C static TInt PageSizeInBytes(TInt& aSize);
599 IMPORT_C static TInt MachineInfo(TDes8& anInfo);
600 IMPORT_C static TInt TickPeriod(TTimeIntervalMicroSeconds32& aPeriod);
603 IMPORT_C static TInt DriveInfo(TDes8& anInfo);
606 IMPORT_C static TInt SwitchOff();
609 IMPORT_C static TInt SetXYInputCalibration(const TDigitizerCalibration& aCalibration);
610 IMPORT_C static TInt CalibrationPoints(TDigitizerCalibration& aCalibration);
611 IMPORT_C static TInt SaveXYInputCalibration();
612 IMPORT_C static TInt RestoreXYInputCalibration(TDigitizerCalibrationType aType);