/* * A not-yet-general-purpose ACPI library, by Joey Hess */ /* Define ACPI_THERMAL to make the library support finding info about thermal * sources. */ /* #define ACPI_THERMAL 1 */ /* Define ACPI_APM to get the acpi_read function, which is like apm_read. */ /* #define ACPI_APM 1 */ /* The lowest version of ACPI proc files supported. */ #define ACPI_VERSION 20011018 /* The number of acpi items of each class supported. */ #define ACPI_MAXITEM 8 int acpi_supported(void); #ifdef ACPI_APM int acpi_read(int battery, apm_info *info); #endif char *get_acpi_file(const char *file); int scan_acpi_num(const char *buf, const char *key); char *scan_acpi_value(const char *buf, const char *key); char *get_acpi_value(const char *file, const char *key); int get_acpi_batt_capacity(int battery); extern int acpi_batt_count; /* Filenames of the battery info files for each system battery. */ extern char acpi_batt_info[ACPI_MAXITEM][128]; /* Filenames of the battery status files for each system battery. */ extern char acpi_batt_status[ACPI_MAXITEM][128]; /* Stores battery capacity, or 0 if the battery is absent. */ extern int acpi_batt_capacity[ACPI_MAXITEM]; extern int acpi_ac_count; extern char acpi_ac_adapter_info[ACPI_MAXITEM][128]; extern char acpi_ac_adapter_status[ACPI_MAXITEM][128]; #if ACPI_THERMAL extern int acpi_thermal_count; extern char acpi_thermal_info[ACPI_MAXITEM][128]; extern char acpi_thermal_status[ACPI_MAXITEM][128]; #endif /* This enum is used to index into the acpi_labels */ enum acpi_labels_items { label_info, label_status, label_battery, label_ac_adapter, label_capacity, label_design_capacity, label_present, label_remaining_capacity, label_present_rate, label_charging_state, #if ACPI_THERMAL label_thermal, #endif label_ac_state, label_last_full_capacity, }; /* This is set to point to a list of strings used for the given acpi * * version. */ extern char *acpi_labels[];