Root/
Source at commit 1548 created 12 years 10 months ago. By blackosx, Added detection for FAT format created by Lion's Disk Utility. Enhanced install log. | |
---|---|
1 | /*␊ |
2 | * IOFireWireLocalNode.h␊ |
3 | * IOFireWireFamily␊ |
4 | *␊ |
5 | * Created by Niels on Fri Aug 16 2002.␊ |
6 | * Copyright (c) 2002 Apple Computer, Inc. All rights reserved.␊ |
7 | *␊ |
8 | * @APPLE_LICENSE_HEADER_START@␊ |
9 | * ␊ |
10 | * The contents of this file constitute Original Code as defined in and␊ |
11 | * are subject to the Apple Public Source License Version 1.1 (the␊ |
12 | * "License"). You may not use this file except in compliance with the␊ |
13 | * License. Please obtain a copy of the License at␊ |
14 | * http://www.apple.com/publicsource and read it before using this file.␊ |
15 | * ␊ |
16 | * This Original Code and all software distributed under the License are␊ |
17 | * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER␊ |
18 | * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,␊ |
19 | * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,␊ |
20 | * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the␊ |
21 | * License for the specific language governing rights and limitations␊ |
22 | * under the License.␊ |
23 | * ␊ |
24 | * @APPLE_LICENSE_HEADER_END@␊ |
25 | */␊ |
26 | /*␊ |
27 | ␉$Log: IOFireWireLocalNode.h,v $␊ |
28 | ␉Revision 1.8 2009/03/26 22:45:17 calderon␊ |
29 | ␉<rdar://6728033> User client fails to terminate with unexpected consuequences␊ |
30 | ␉␊ |
31 | ␉Revision 1.7 2008/11/14 00:17:12 arulchan␊ |
32 | ␉fix for rdar://5939334␊ |
33 | ␉␊ |
34 | ␉Revision 1.6 2005/02/18 22:56:53 gecko1␊ |
35 | ␉3958781 Q45C EVT: FireWire ASP reporter says port speed is 800 Mb/sec␊ |
36 | ␉␊ |
37 | ␉Revision 1.5 2003/02/20 02:00:12 collin␊ |
38 | ␉*** empty log message ***␊ |
39 | ␉␊ |
40 | ␉Revision 1.4 2003/02/17 21:47:53 collin␊ |
41 | ␉*** empty log message ***␊ |
42 | ␉␊ |
43 | ␉Revision 1.3 2002/10/18 23:29:44 collin␊ |
44 | ␉fix includes, fix cast which fails on new compiler␊ |
45 | ␉␊ |
46 | ␉Revision 1.2 2002/09/25 00:27:24 niels␊ |
47 | ␉flip your world upside-down␊ |
48 | ␉␊ |
49 | */␊ |
50 | ␊ |
51 | // public␊ |
52 | #import <IOKit/firewire/IOFireWireNub.h>␊ |
53 | ␊ |
54 | class IOFireWireLocalNode;␊ |
55 | ␊ |
56 | #pragma mark -␊ |
57 | ␊ |
58 | /*! ␊ |
59 | ␉@class IOFireWireLocalNodeAux␊ |
60 | */␊ |
61 | ␊ |
62 | class IOFireWireLocalNodeAux : public IOFireWireNubAux␊ |
63 | {␊ |
64 | OSDeclareDefaultStructors(IOFireWireLocalNodeAux)␊ |
65 | ␊ |
66 | ␉friend class IOFireWireLocalNode;␊ |
67 | ␉␊ |
68 | protected:␊ |
69 | ␉␊ |
70 | ␉/*! ␊ |
71 | ␉␉@struct ExpansionData␊ |
72 | ␉␉@discussion This structure will be used to expand the capablilties of the class in the future.␊ |
73 | */ ␊ |
74 | ␉ ␊ |
75 | struct ExpansionData { };␊ |
76 | ␊ |
77 | ␉/*! ␊ |
78 | ␉␉@var reserved␊ |
79 | ␉␉Reserved for future use. (Internal use only) ␊ |
80 | ␉*/␊ |
81 | ␊ |
82 | ␉ExpansionData * reserved;␊ |
83 | ␊ |
84 | virtual bool init( IOFireWireLocalNode * primary );␊ |
85 | ␉virtual␉void free();␊ |
86 | ␉␊ |
87 | private:␊ |
88 | OSMetaClassDeclareReservedUnused(IOFireWireLocalNodeAux, 0);␊ |
89 | OSMetaClassDeclareReservedUnused(IOFireWireLocalNodeAux, 1);␊ |
90 | OSMetaClassDeclareReservedUnused(IOFireWireLocalNodeAux, 2);␊ |
91 | OSMetaClassDeclareReservedUnused(IOFireWireLocalNodeAux, 3);␊ |
92 | ␉␊ |
93 | };␊ |
94 | ␊ |
95 | #pragma mark -␊ |
96 | ␊ |
97 | /*! @class IOFireWireLocalNode␊ |
98 | */␊ |
99 | ␊ |
100 | class IOFireWireLocalNode : public IOFireWireNub␊ |
101 | {␊ |
102 | OSDeclareDefaultStructors(IOFireWireLocalNode)␊ |
103 | ␊ |
104 | ␉friend class IOFireWireLocalNodeAux;␊ |
105 | ␊ |
106 | ␉/*------------------Useful info about device (also available in the registry)--------*/␊ |
107 | protected:␊ |
108 | ␊ |
109 | ␉/*-----------Methods provided to FireWire device clients-------------*/␊ |
110 | public:␊ |
111 | ␉␊ |
112 | ␉␉// Set up properties affected by bus reset␊ |
113 | ␉␉virtual void setNodeProperties(UInt32 generation, UInt16 nodeID, UInt32 *selfIDs, int numIDs, IOFWSpeed maxSpeed );␊ |
114 | ␉␉␊ |
115 | ␉␉/*␊ |
116 | ␉␉* Standard nub initialization␊ |
117 | ␉␉*/␊ |
118 | ␉␉virtual bool init(OSDictionary * propTable);␊ |
119 | ␉␉virtual bool attach(IOService * provider );␊ |
120 | ␉␊ |
121 | ␉␉virtual void handleClose( IOService *␉ forClient,␊ |
122 | ␉␉␉␉␉␉␉␉IOOptionBits␉ options ) ;␊ |
123 | ␉␉virtual bool handleOpen( ␉IOService *␉ forClient,␊ |
124 | ␉␉␉␉␉␉␉␉IOOptionBits␉ options,␊ |
125 | ␉␉␉␉␉␉␉␉void *␉␉ arg ) ;␊ |
126 | ␉␉virtual bool handleIsOpen( const IOService * forClient ) const;␊ |
127 | ␉␊ |
128 | ␉␉/*␊ |
129 | ␉␉* Trick method to create protocol user clients␊ |
130 | ␉␉*/␊ |
131 | ␉␉virtual IOReturn setProperties( OSObject * properties );␊ |
132 | ␊ |
133 | protected:␊ |
134 | ␉␊ |
135 | ␉virtual IOFireWireNubAux * createAuxiliary( void );␊ |
136 | ␊ |
137 | public:␊ |
138 | ␉virtual IOReturn message( UInt32 type, IOService * provider, void * argument );␊ |
139 | ␉virtual void free();␊ |
140 | ␊ |
141 | protected:␊ |
142 | ␉OSSet * fOpenClients;␊ |
143 | };␊ |
144 |