powermanagement.defs [plain text]
/*
* Copyright (c) 1999-2008 Apple Computer, Inc. All Rights Reserved.
*
* @APPLE_LICENSE_HEADER_START@
*
* This file contains Original Code and/or Modifications of Original Code
* as defined in and that are subject to the Apple Public Source License
* Version 2.0 (the 'License'). You may not use this file except in
* compliance with the License. Please obtain a copy of the License at
* http://www.opensource.apple.com/apsl/ and read it before using this
* file.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
* EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
* INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
* Please see the License for the specific language governing rights and
* limitations under the License.
*
* @APPLE_LICENSE_HEADER_END@
*/
#include <mach/std_types.defs>
#include <mach/mach_types.defs>
type string_t = c_string[*:1024] ctype:string_t;
import <IOKit/pwr_mgt/powermanagement_mig.h>;
subsystem powermanagement 73000;
serverprefix _;
routine io_pm_get_value_int(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in selector : int;
out value : int);
// PM Settings
routine io_pm_force_active_settings(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in profiles : pointer_t;
out return_val : int);
routine io_pm_set_active_profile(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in profiles : pointer_t;
out return_val : int);
// Scheduled Events
routine io_pm_schedule_power_event(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in package : pointer_t;
in action : int;
out return_val : int);
routine io_pm_schedule_repeat_event(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in package : pointer_t;
in action : int;
out return_val : int);
routine io_pm_cancel_repeat_events(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
out return_val : int);
// PM Bookkeeping
routine io_pm_last_wake_time(
server : mach_port_t;
out wakeData : pointer_t;
out deltaData : pointer_t;
out return_val : int);
// IOPMAssertion
routine io_pm_assertion_create(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in props : pointer_t;
out assertion_id: int;
out return_code : int);
routine io_pm_assertion_set_properties(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in assertion_id: int;
in props : pointer_t;
out return_code : int);
routine io_pm_assertion_retain_release(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in assertion_id: int;
in action : int;
out return_code : int);
routine io_pm_assertion_copy_details(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in assertion_id : int;
in whichData : int;
out assertions : pointer_t, dealloc;
out return_val : int);
routine io_pm_declare_user_active(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in user_type : int;
in props : pointer_t;
inout assertion_id: int;
out return_code : int);
// IOPMPowerHistory
routine io_pm_set_power_history_bookmark(
server : mach_port_t;
out uuid : string_t);
routine io_pm_get_uuid(
server : mach_port_t;
in selector : int;
out out_uuid : string_t;
out return_val : int);
// IOPMConnection
routine io_pm_connection_create(
server : mach_port_t;
in task_in : mach_port_t;
in name : string_t;
in interests : int;
out connection_id : uint32_t;
out return_code :int);
routine io_pm_connection_schedule_notification(
server : mach_port_t;
in connection_id : uint32_t;
in notify_port : mach_port_t;
in disable : int;
out return_code : int);
routine io_pm_connection_release(
server : mach_port_t;
in connection_id : uint32_t;
out return_code : int);
routine io_pm_connection_acknowledge_event(
server : mach_port_t;
in connection_id : uint32_t;
in messageToken : int;
in options : pointer_t;
out return_code : int);
routine io_pm_connection_copy_status(
server : mach_port_t;
in status_index : int;
out status_data : pointer_t;
out return_val : int);
// "Soft" OS controlled power sources
routine io_pm_new_pspowersource(
server : mach_port_t;
in clientport : mach_port_t;
in clienttype : string_t;
out dskey : string_t;
out return_code : int);
routine io_pm_update_pspowersource(
server : mach_port_t;
in dskey : string_t;
in psdetails : pointer_t;
out return_code : int);
// IOPMHIDPostEventActivity
simpleroutine io_pm_hid_event_report_activity(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in _action : int);
routine io_pm_hid_event_copy_history(
server : mach_port_t;
out eventArray : pointer_t, dealloc;
out return_val : int);
routine io_pm_set_debug_flags(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in newFlags : uint32_t;
out oldFlags : uint32_t;
out return_val : int);
routine io_pm_set_bt_wake_interval(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in newInterval : uint32_t;
out oldInterval : uint32_t;
out return_val : int);
routine io_pm_set_sleepservice_wake_time_cap(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
in cap_time : int;
out return_val : int);
routine io_pm_get_capability_bits(
server : mach_port_t;
ServerAuditToken token : audit_token_t;
out capBits : uint32_t;
out return_val : int);