epoc32/include/hwrmpowerstatesdkpskeys.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
williamr@2
     1
/*
williamr@4
     2
* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
williamr@2
     3
* All rights reserved.
williamr@2
     4
* This component and the accompanying materials are made available
williamr@4
     5
* under the terms of "Eclipse Public License v1.0"
williamr@2
     6
* which accompanies this distribution, and is available
williamr@4
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
williamr@2
     8
*
williamr@2
     9
* Initial Contributors:
williamr@2
    10
* Nokia Corporation - initial contribution.
williamr@2
    11
*
williamr@2
    12
* Contributors:
williamr@2
    13
*
williamr@4
    14
* Description:
williamr@2
    15
* The API provides the P&S power state keys that are updated by the HW Resource 
williamr@2
    16
* Manager Server. These keys provide up-to-date information on the charging 
williamr@2
    17
* status, battery level and battery state of the device. Any application may 
williamr@2
    18
* subscribe to these P&S keys that are updated to receive notifications of 
williamr@2
    19
* any change in state.
williamr@2
    20
* This interface relies on the Publish and Subscribe (P&S) interface provided
williamr@2
    21
* by Symbian. P&S is used by HW Resource Manager to globally publish the power
williamr@2
    22
* state information.
williamr@2
    23
* The P&D UID is #KPSUidHWRMPowerState and following keys are provided:
williamr@2
    24
* - #KHWRMBatteryLevel
williamr@2
    25
* - #KHWRMBatteryStatus
williamr@2
    26
* - #KHWRMChargingStatus
williamr@4
    27
*
williamr@2
    28
*/
williamr@2
    29
williamr@4
    30
williamr@4
    31
williamr@4
    32
williamr@4
    33
/**
williamr@4
    34
 @file hwrmpowerstatesdkpskeys.h
williamr@4
    35
 @publishedAll
williamr@4
    36
 @released
williamr@4
    37
*/
williamr@4
    38
williamr@4
    39
#ifndef HWRMPOWERSTATESDKPSKEYS_H
williamr@4
    40
#define HWRMPOWERSTATESDKPSKEYS_H
williamr@4
    41
williamr@4
    42
#include <e32std.h>
williamr@4
    43
williamr@2
    44
/**
williamr@2
    45
* P&S UID for all power state information keys provided by this API.
williamr@4
    46
*
williamr@4
    47
* @publishedAll
williamr@4
    48
* @released
williamr@2
    49
*/
williamr@2
    50
const TUid KPSUidHWRMPowerState = { 0x10205041 }; 
williamr@2
    51
williamr@2
    52
williamr@2
    53
/**
williamr@2
    54
* P&S key to represent the battery level of the device. It can also be related
williamr@2
    55
* to the number of battery bars displayed. This property is updated only when
williamr@4
    56
* battery level changes. Valid values are defined by the enum EPSHWRMBatteryLevel
williamr@2
    57
* and range from -1 to 7. <br>
williamr@2
    58
* If an error has occurred or the battery level has not yet been initialized, 
williamr@2
    59
* the enumeration value of #EBatteryLevelUnknown is used. In all other cases 
williamr@2
    60
* the battery level is used with level 0 being the lowest (battery empty) and 
williamr@2
    61
* level 7 the highest (battery full).
williamr@2
    62
*
williamr@2
    63
* @see EPSHWRMBatteryLevel
williamr@4
    64
*
williamr@4
    65
* @publishedAll
williamr@4
    66
* @released
williamr@2
    67
*/
williamr@2
    68
const TUint32 KHWRMBatteryLevel = 0x00000001;
williamr@2
    69
williamr@2
    70
/**
williamr@2
    71
* Battery level of device. Can be related to the number of battery bars 
williamr@2
    72
* displayed by the device.
williamr@4
    73
*
williamr@4
    74
* @publishedAll
williamr@4
    75
* @released
williamr@2
    76
*/
williamr@2
    77
enum EPSHWRMBatteryLevel
williamr@2
    78
    {
williamr@4
    79
    /**
williamr@4
    80
    Uninitialized or some other error
williamr@4
    81
    */
williamr@4
    82
    EBatteryLevelUnknown        = -1,   
williamr@4
    83
    /**
williamr@4
    84
    Battery level 0. The lowest battery level.
williamr@4
    85
    */
williamr@4
    86
    EBatteryLevelLevel0         = 0,   
williamr@4
    87
    /**
williamr@4
    88
    Battery level 1.
williamr@4
    89
    */
williamr@2
    90
    EBatteryLevelLevel1         = 1,
williamr@4
    91
    /**
williamr@4
    92
    Battery level 2.
williamr@4
    93
    */
williamr@2
    94
    EBatteryLevelLevel2         = 2,
williamr@4
    95
    /**
williamr@4
    96
    Battery level 3.
williamr@4
    97
    */
williamr@2
    98
    EBatteryLevelLevel3         = 3,
williamr@4
    99
    /**
williamr@4
   100
    Battery level 4.
williamr@4
   101
    */
williamr@2
   102
    EBatteryLevelLevel4         = 4,
williamr@4
   103
    /**
williamr@4
   104
    Battery level 5.
williamr@4
   105
    */
williamr@2
   106
    EBatteryLevelLevel5         = 5,
williamr@4
   107
    /**
williamr@4
   108
    Battery level 6.
williamr@4
   109
    */
williamr@2
   110
    EBatteryLevelLevel6         = 6,
williamr@4
   111
    /**
williamr@4
   112
    Battery level 7. The highest battery level.
williamr@4
   113
    */
williamr@4
   114
    EBatteryLevelLevel7         = 7     
williamr@2
   115
    };
williamr@2
   116
williamr@2
   117
williamr@2
   118
/**
williamr@2
   119
* Battery status of device. 
williamr@2
   120
* This property may be updated to same status as previously, to indicate
williamr@2
   121
* the note in question needs to be shown again.
williamr@2
   122
*
williamr@2
   123
* #EBatteryStatusLow update comes approximately ten times before 
williamr@2
   124
* battery is completely empty and it comes at approximately
williamr@2
   125
* 10 minute intervals. If phone is in-call mode, update comes at 
williamr@2
   126
* approximately 1 minute intervals.
williamr@2
   127
*
williamr@2
   128
* #EBatteryStatusEmpty comes slightly before phone must power down 
williamr@2
   129
* automatically because of insufficient battery power.  
williamr@2
   130
*
williamr@2
   131
* @see EPSHWRMBatteryStatus
williamr@4
   132
*
williamr@4
   133
* @publishedAll
williamr@4
   134
* @released
williamr@2
   135
*/
williamr@2
   136
const TUint32 KHWRMBatteryStatus = 0x00000002;
williamr@2
   137
williamr@2
   138
/**
williamr@2
   139
* Battery status of device.
williamr@4
   140
*
williamr@4
   141
* @publishedAll
williamr@4
   142
* @released
williamr@2
   143
*/
williamr@2
   144
enum EPSHWRMBatteryStatus
williamr@2
   145
    {
williamr@4
   146
    /**
williamr@4
   147
    Uninitialized or some other error
williamr@4
   148
    */
williamr@4
   149
    EBatteryStatusUnknown        = -1, 
williamr@4
   150
    /**
williamr@4
   151
    This can also be used during charging
williamr@4
   152
    */
williamr@4
   153
    EBatteryStatusOk             = 0,  
williamr@4
   154
    /**
williamr@4
   155
    Show note to user "Battery low"
williamr@4
   156
    */
williamr@4
   157
    EBatteryStatusLow            = 1,  
williamr@4
   158
    /**
williamr@4
   159
    Show "recharge battery" note to user
williamr@4
   160
    */
williamr@4
   161
    EBatteryStatusEmpty          = 2   
williamr@2
   162
    };
williamr@2
   163
williamr@2
   164
/**
williamr@2
   165
* Charging status of device.
williamr@2
   166
* This property is updated only when charging status changes.
williamr@2
   167
*
williamr@2
   168
* @see EPSHWRMChargingStatus
williamr@4
   169
*
williamr@4
   170
* @publishedAll
williamr@4
   171
* @released
williamr@2
   172
*/
williamr@2
   173
const TUint32 KHWRMChargingStatus = 0x00000003;
williamr@2
   174
williamr@2
   175
/**
williamr@2
   176
* Charging status of device.
williamr@4
   177
*
williamr@4
   178
* @publishedAll
williamr@4
   179
* @released
williamr@2
   180
*/
williamr@2
   181
enum EPSHWRMChargingStatus
williamr@2
   182
    {
williamr@4
   183
    /**
williamr@4
   184
    Some error has occurred when charger is connected or charging. 
williamr@4
   185
    */
williamr@4
   186
    EChargingStatusError              = -1, 
williamr@4
   187
    /**
williamr@4
   188
    Charger not connected/uninitialized
williamr@4
   189
    */
williamr@4
   190
    EChargingStatusNotConnected       = 0,  
williamr@4
   191
    /**
williamr@4
   192
    Device is charging
williamr@4
   193
    */
williamr@4
   194
    EChargingStatusCharging           = 1,  
williamr@4
   195
    /**
williamr@4
   196
    Charger is connected, device not charging
williamr@4
   197
    */
williamr@4
   198
    EChargingStatusNotCharging        = 2,  
williamr@4
   199
    /**
williamr@4
   200
    Charging almost completed
williamr@4
   201
    */
williamr@4
   202
    EChargingStatusAlmostComplete     = 3,  
williamr@4
   203
    /**
williamr@4
   204
    Charging completed
williamr@4
   205
    */
williamr@4
   206
    EChargingStatusChargingComplete   = 4,  
williamr@4
   207
    /**
williamr@4
   208
    Charging continued after brief interruption
williamr@4
   209
    */
williamr@4
   210
    EChargingStatusChargingContinued  = 5   
williamr@2
   211
    };
williamr@2
   212
williamr@2
   213
williamr@2
   214
#endif      // HWRMPOWERSTATESDKPSKEYS_H
williamr@4
   215
williamr@4
   216
// End of File