[ Next Article |
Previous Article |
Book Contents |
Library Home |
Legal |
Search ]
Base Operating System and Extensions Technical Reference, Volume 1
pmlib_request_battery Subroutine
Purpose
Queries and controls the battery status.
Library
PM (Power Management) Library (libpm.a)
Syntax
#include <pmlib.h>
int pmlib_request_battery (cmd, pmb);
int cmd;
pmlib_battery_t *pmb;
Parameters
cmd |
Determines the action to be taken by the pmlib_request_battery subroutine and is one of the following values:
- PMLIB_QUERY_BATTERY
- Queries the battery state.
- PMLIB_DISCHARGE_BATTERY
- Discharges the battery.
|
pmb |
Points to the following pmlib_battery_t structure:
typedef struct _pmlib_battery {
int attribute; /*battery attribute*/
int capacity; /*battery capacity*/
int remain; /*current remain capacity*/
int refresh_discharge_capacity;
int refresh_discharge_time; /*discharge time*/
int full_change_count;
} pmlib_battery_t; |
When cmd is PMLIB_QUERY_BATTERY, the returned pmb.attribute is bit-wise OR of following values:
PMLIB_BATTERY_SUPPORTED |
Battery is supported. |
PMLIB_BATTERY_EXIST |
Battery exists. |
PMLIB_BATTERY_NICD |
Battery is NiCd |
PMLIB_BATTERY_CHARGING |
Battery is being charged. |
PMLIB_BATTERY_DISCHARGING |
Battery is being discharged. |
PMLIB_BATTERY_AC |
AC adapter is in use. |
PMLIB_BATTERY_DC |
Battery is in use. |
PMLIB_BATTERY_REFRESH_REQ |
Need to refresh battery. |
Description
The pmlib_request_battery subroutine queries the battery information or requests to discharge the battery. The pmlib_request_ subroutine can be called by any user.
Return Values
Upon successful completion, PMLIB_SUCCESS is returned. If the pmlib_request_state subroutine fails, PMLIB_ERROR is returned and errno variable is set to an error code.
Error Codes
ESRCH |
PM daemon is not running. |
EINVAL |
Invalid argument. |
Implementation Specifics
The pmlib_request_battery subroutine is part of the Base Operation System (BOS) Runtime.
Related Information
The pmlib_get_event_notice subroutine, pmlib_request_state subroutine, pmlib_request_parameter subroutine, pmlib_register_application subroutine.
[ Next Article |
Previous Article |
Book Contents |
Library Home |
Legal |
Search ]