1/*
2 * Copyright (c) 2009 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
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
11 * file.
12 *
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.
20 *
21 * @APPLE_LICENSE_HEADER_END@
22 */
23/*
24     File:       DeviceControlPriv.k.h
25
26     Contains:   xxx put contents here xxx
27
28     Version:    xxx put version here xxx
29
30     DRI:        xxx put dri here xxx
31
32     Copyright:  � 1999-2001 by Apple Computer, Inc., all rights reserved.
33
34     Warning:    *** APPLE INTERNAL USE ONLY ***
35                 This file contains unreleased SPI's
36
37     BuildInfo:  Built by:            wgulland
38                 On:                  Tue Mar 12 16:49:09 2002
39                 With Interfacer:     3.0d35   (Mac OS X for PowerPC)
40                 From:                DeviceControlPriv.i
41                     Revision:        3
42                     Dated:           6/15/99
43                     Last change by:  KW
44                     Last comment:    fix screwup
45
46     Bugs:       Report bugs to Radar component "System Interfaces", "Latest"
47                 List the version information (from above) in the Problem Description.
48
49*/
50#ifndef __DEVICECONTROLPRIV_K__
51#define __DEVICECONTROLPRIV_K__
52
53#include <DeviceControlPriv.h>
54
55/*
56	Example usage:
57
58		#define DEVICECONTROL_BASENAME()	Fred
59		#define DEVICECONTROL_GLOBALS()	FredGlobalsHandle
60		#include <DeviceControlPriv.k.h>
61
62	To specify that your component implementation does not use globals, do not #define DEVICECONTROL_GLOBALS
63*/
64#ifdef DEVICECONTROL_BASENAME
65	#ifndef DEVICECONTROL_GLOBALS
66		#define DEVICECONTROL_GLOBALS()
67		#define ADD_DEVICECONTROL_COMMA
68	#else
69		#define ADD_DEVICECONTROL_COMMA ,
70	#endif
71	#define DEVICECONTROL_GLUE(a,b) a##b
72	#define DEVICECONTROL_STRCAT(a,b) DEVICECONTROL_GLUE(a,b)
73	#define ADD_DEVICECONTROL_BASENAME(name) DEVICECONTROL_STRCAT(DEVICECONTROL_BASENAME(),name)
74
75	EXTERN_API( ComponentResult  ) ADD_DEVICECONTROL_BASENAME(EnableAVCTransactions) (DEVICECONTROL_GLOBALS());
76
77	EXTERN_API( ComponentResult  ) ADD_DEVICECONTROL_BASENAME(DisableAVCTransactions) (DEVICECONTROL_GLOBALS());
78
79	EXTERN_API( ComponentResult  ) ADD_DEVICECONTROL_BASENAME(SetDeviceConnectionID) (DEVICECONTROL_GLOBALS() ADD_DEVICECONTROL_COMMA DeviceConnectionID  connectionID);
80
81	EXTERN_API( ComponentResult  ) ADD_DEVICECONTROL_BASENAME(GetDeviceConnectionID) (DEVICECONTROL_GLOBALS() ADD_DEVICECONTROL_COMMA DeviceConnectionID * connectionID);
82
83
84	/* MixedMode ProcInfo constants for component calls */
85	enum {
86		uppDeviceControlEnableAVCTransactionsProcInfo = 0x000000F0,
87		uppDeviceControlDisableAVCTransactionsProcInfo = 0x000000F0,
88		uppDeviceControlSetDeviceConnectionIDProcInfo = 0x000003F0,
89		uppDeviceControlGetDeviceConnectionIDProcInfo = 0x000003F0
90	};
91
92#endif	/* DEVICECONTROL_BASENAME */
93
94
95#endif /* __DEVICECONTROLPRIV_K__ */
96
97