2 * Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
21 * @APPLE_LICENSE_HEADER_END@
25 #ifndef _DEVICEONHOLD_H
26 #define _DEVICEONHOLD_H
28 #include <sys/cdefs.h>
29 #include <CoreFoundation/CoreFoundation.h>
34 @discussion Returned status codes from DeviceOnHoldGetStatus()
37 @constant kDeviceConnecting
38 @constant kDeviceDataConnectionActive
39 @constant kDeviceDataConnectionOnHold
40 @constant kDeviceDisconnecting
46 kDeviceDataConnectionActive
,
47 kDeviceDataConnectionOnHold
,
53 @typedef DeviceOnHoldRef
54 @discussion This is the handle to a specific device
55 which is used by the DeviceOnHold APIs.
57 typedef const struct __DeviceOnHoldRef
* DeviceOnHoldRef
;
64 @function IsDeviceOnHoldSupported
65 @discussion Determines whether a device has the capability to have
66 a connection placed "on hold".
68 This function determines whether the device specified supports
69 the "on hold" capabality.
71 @param devname A CFStringRef that represents the device being queried.
72 @param options A CFDictionaryRef of various options for the device.
73 @result TRUE if device supports "on hold".
77 IsDeviceOnHoldSupported (
78 CFStringRef devname
, // e.g. "modem"
79 CFDictionaryRef options
83 @function DeviceOnHoldCreate
84 @discussion Creates a DeviceOnHoldRef for the specified device supports.
86 This function creates a DeviceOnHoldRef handle which will be used
87 in all subsequent calls to the "on hold" API's.
89 @param allocator A CFAllocatorRef.
90 @param devname A CFStringRef that represents the device being queried.
91 @param options A CFDictionaryRef of various options for the device.
92 @result DeviceOnHoldRef to pass to subsequent device hold api's.
97 CFAllocatorRef allocator
,
98 CFStringRef devname
, // e.g. "modem"
99 CFDictionaryRef options
104 @function DeviceOnHoldGetStatus
105 @discussion Returns the "on hold" status of the device.
107 @param deviceRef A DeviceOnHoldRef.
108 @result The status of device.
112 DeviceOnHoldGetStatus (
113 DeviceOnHoldRef deviceRef
118 @function DeviceOnHoldSuspend
119 @discussion Tells the device to go "on hold".
121 This function will signal the deviceRef to suspend operations
123 @param deviceRef A DeviceOnHoldRef.
124 @result Boolean if call succeeded.
128 DeviceOnHoldSuspend (
129 DeviceOnHoldRef deviceRef
133 @function DeviceOnHoldResume
134 @discussion Tells the device to resume.
136 This function will signal the deviceRef to resume operations
138 @param deviceRef A DeviceOnHoldRef.
139 @result Boolean if call succeeded.
144 DeviceOnHoldRef deviceRef
149 #endif /* _DEVICEONHOLD_H */