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>
39 @discussion Returned status codes from DeviceOnHoldGetStatus()
42 @constant kDeviceConnecting
43 @constant kDeviceDataConnectionActive
44 @constant kDeviceDataConnectionOnHold
45 @constant kDeviceDisconnecting
51 kDeviceDataConnectionActive
,
52 kDeviceDataConnectionOnHold
,
58 @typedef DeviceOnHoldRef
59 @discussion This is the handle to a specific device
60 which is used by the DeviceOnHold APIs.
62 typedef const struct __DeviceOnHoldRef
* DeviceOnHoldRef
;
69 @function IsDeviceOnHoldSupported
70 @discussion Determines whether a device has the capability to have
71 a connection placed "on hold".
73 This function determines whether the device specified supports
74 the "on hold" capabality.
76 @param devname A CFStringRef that represents the device being queried.
77 @param options A CFDictionaryRef of various options for the device.
78 @result TRUE if device supports "on hold".
82 IsDeviceOnHoldSupported (
83 CFStringRef devname
, // e.g. "modem"
84 CFDictionaryRef options
88 @function DeviceOnHoldCreate
89 @discussion Creates a DeviceOnHoldRef for the specified device supports.
91 This function creates a DeviceOnHoldRef handle which will be used
92 in all subsequent calls to the "on hold" API's.
94 @param allocator A CFAllocatorRef.
95 @param devname A CFStringRef that represents the device being queried.
96 @param options A CFDictionaryRef of various options for the device.
97 @result DeviceOnHoldRef to pass to subsequent device hold api's.
102 CFAllocatorRef allocator
,
103 CFStringRef devname
, // e.g. "modem"
104 CFDictionaryRef options
109 @function DeviceOnHoldGetStatus
110 @discussion Returns the "on hold" status of the device.
112 @param deviceRef A DeviceOnHoldRef.
113 @result The status of device.
117 DeviceOnHoldGetStatus (
118 DeviceOnHoldRef deviceRef
123 @function DeviceOnHoldSuspend
124 @discussion Tells the device to go "on hold".
126 This function will signal the deviceRef to suspend operations
128 @param deviceRef A DeviceOnHoldRef.
129 @result Boolean if call succeeded.
133 DeviceOnHoldSuspend (
134 DeviceOnHoldRef deviceRef
138 @function DeviceOnHoldResume
139 @discussion Tells the device to resume.
141 This function will signal the deviceRef to resume operations
143 @param deviceRef A DeviceOnHoldRef.
144 @result Boolean if call succeeded.
149 DeviceOnHoldRef deviceRef
154 #endif /* _DEVICEONHOLD_H */