Chameleon

Chameleon Svn Source Tree

Root/branches/rewrite/i386/include/IOKit/storage/IOBlockStorageDriver.h

Source at commit 1129 created 12 years 11 months ago.
By meklort, Change options.o so that it reloads the system config as well. Also change it so that it uses that config for variables (NOTE: if the calue exists in chameleonConfig, it's used instead.
1/*
2 * Copyright (c) 1998-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/*!
25 * @header IOBlockStorageDriver
26 * @abstract
27 * This header contains the IOBlockStorageDriver class definition.
28 */
29
30#ifndef _IOBLOCKSTORAGEDRIVER_H
31#define _IOBLOCKSTORAGEDRIVER_H
32
33#include <IOKit/IOTypes.h>
34
35/*!
36 * @defined kIOBlockStorageDriverClass
37 * @abstract
38 * The name of the IOBlockStorageDriver class.
39 */
40
41#define kIOBlockStorageDriverClass "IOBlockStorageDriver"
42
43/*!
44 * @defined kIOBlockStorageDriverStatisticsKey
45 * @abstract
46 * Holds a table of numeric values describing the driver's
47 * operating statistics.
48 * @discussion
49 * This property holds a table of numeric values describing the driver's
50 * operating statistics. The table is an OSDictionary, where each entry
51 * describes one given statistic.
52 */
53
54#define kIOBlockStorageDriverStatisticsKey "Statistics"
55
56/*!
57 * @defined kIOBlockStorageDriverStatisticsBytesReadKey
58 * @abstract
59 * Describes the number of bytes read since the block storage
60 * driver was instantiated.
61 * @discussion
62 * This property describes the number of bytes read since the block storage
63 * driver was instantiated. It is one of the statistic entries listed under
64 * the top-level kIOBlockStorageDriverStatisticsKey property table. It has
65 * an OSNumber value.
66 */
67
68#define kIOBlockStorageDriverStatisticsBytesReadKey "Bytes (Read)"
69
70/*!
71 * @defined kIOBlockStorageDriverStatisticsBytesWrittenKey
72 * @abstract
73 * Describes the number of bytes written since the block storage
74 * driver was instantiated.
75 * @discussion
76 * This property describes the number of bytes written since the block storage
77 * driver was instantiated. It is one of the statistic entries listed under the
78 * top-level kIOBlockStorageDriverStatisticsKey property table. It has an
79 * OSNumber value.
80 */
81
82#define kIOBlockStorageDriverStatisticsBytesWrittenKey "Bytes (Write)"
83
84/*!
85 * @defined kIOBlockStorageDriverStatisticsReadErrorsKey
86 * @abstract
87 * Describes the number of read errors encountered since the block
88 * storage driver was instantiated.
89 * @discussion
90 * This property describes the number of read errors encountered since the block
91 * storage driver was instantiated. It is one of the statistic entries listed
92 * under the top-level kIOBlockStorageDriverStatisticsKey property table. It
93 * has an OSNumber value.
94 */
95
96#define kIOBlockStorageDriverStatisticsReadErrorsKey "Errors (Read)"
97
98/*!
99 * @defined kIOBlockStorageDriverStatisticsWriteErrorsKey
100 * @abstract
101 * Describes the number of write errors encountered since the
102 * block storage driver was instantiated.
103 * @discussion
104 * This property describes the number of write errors encountered since the
105 * block storage driver was instantiated. It is one of the statistic entries
106 * listed under the top-level kIOBlockStorageDriverStatisticsKey property table.
107 * It has an OSNumber value.
108 */
109
110#define kIOBlockStorageDriverStatisticsWriteErrorsKey "Errors (Write)"
111
112/*!
113 * @defined kIOBlockStorageDriverStatisticsLatentReadTimeKey
114 * @abstract
115 * Describes the number of nanoseconds of latency during reads
116 * since the block storage driver was instantiated.
117 * @discussion
118 * This property describes the number of nanoseconds of latency during reads
119 * since the block storage driver was instantiated. It is one of the statistic
120 * entries listed under the top-level kIOBlockStorageDriverStatisticsKey
121 * property table. It has an OSNumber value.
122 */
123
124#define kIOBlockStorageDriverStatisticsLatentReadTimeKey "Latency Time (Read)"
125
126/*!
127 * @defined kIOBlockStorageDriverStatisticsLatentWriteTimeKey
128 * @abstract
129 * Describes the number of nanoseconds of latency during writes
130 * since the block storage driver was instantiated.
131 * @discussion
132 * This property describes the number of nanoseconds of latency during writes
133 * since the block storage driver was instantiated. It is one of the statistic
134 * entries listed under the top-level kIOBlockStorageDriverStatisticsKey
135 * property table. It has an OSNumber value.
136 */
137
138#define kIOBlockStorageDriverStatisticsLatentWriteTimeKey "Latency Time (Write)"
139
140/*!
141 * @defined kIOBlockStorageDriverStatisticsReadsKey
142 * @abstract
143 * Describes the number of read operations processed since the
144 * block storage driver was instantiated.
145 * @discussion
146 * This property describes the number of read operations processed since the
147 * block storage driver was instantiated. It is one of the statistic entries
148 * listed under the top-level kIOBlockStorageDriverStatisticsKey property table.
149 * It has an OSNumber value.
150 */
151
152#define kIOBlockStorageDriverStatisticsReadsKey "Operations (Read)"
153
154/*!
155 * @defined kIOBlockStorageDriverStatisticsWritesKey
156 * @abstract
157 * Describes the number of write operations processed since the
158 * block storage driver was instantiated.
159 * @discussion
160 * This property describes the number of write operations processed since the
161 * block storage driver was instantiated. It is one of the statistic entries
162 * listed under the top-level kIOBlockStorageDriverStatisticsKey property table.
163 * It has an OSNumber value.
164 */
165
166#define kIOBlockStorageDriverStatisticsWritesKey "Operations (Write)"
167
168/*!
169 * @defined kIOBlockStorageDriverStatisticsReadRetriesKey
170 * @abstract
171 * Describes the number of read retries required since the block
172 * storage driver was instantiated.
173 * @discussion
174 * This property describes the number of read retries required since the block
175 * storage driver was instantiated. It is one of the statistic entries listed
176 * under the top-level kIOBlockStorageDriverStatisticsKey property table. It
177 * has an OSNumber value.
178 */
179
180#define kIOBlockStorageDriverStatisticsReadRetriesKey "Retries (Read)"
181
182/*!
183 * @defined kIOBlockStorageDriverStatisticsWriteRetriesKey
184 * @abstract
185 * Describes the number of write retries required since the block
186 * storage driver was instantiated.
187 * @discussion
188 * This property describes the number of write retries required since the block
189 * storage driver was instantiated. It is one of the statistic entries listed
190 * under the top-level kIOBlockStorageDriverStatisticsKey property table. It
191 * has an OSNumber value.
192 */
193
194#define kIOBlockStorageDriverStatisticsWriteRetriesKey "Retries (Write)"
195
196/*!
197 * @defined kIOBlockStorageDriverStatisticsTotalReadTimeKey
198 * @abstract
199 * Describes the number of nanoseconds spent performing reads
200 * since the block storage driver was instantiated.
201 * @discussion
202 * This property describes the number of nanoseconds spent performing reads
203 * since the block storage driver was instantiated. It is one of the statistic
204 * entries listed under the top-level kIOBlockStorageDriverStatisticsKey
205 * property table. It has an OSNumber value.
206 */
207
208#define kIOBlockStorageDriverStatisticsTotalReadTimeKey "Total Time (Read)"
209
210/*!
211 * @defined kIOBlockStorageDriverStatisticsTotalWriteTimeKey
212 * @abstract
213 * Describes the number of nanoseconds spent performing writes
214 * since the block storage driver was instantiated.
215 * @discussion
216 * This property describes the number of nanoseconds spent performing writes
217 * since the block storage driver was instantiated. It is one of the statistic
218 * entries listed under the top-level kIOBlockStorageDriverStatisticsKey
219 * property table. It has an OSNumber value.
220 */
221
222#define kIOBlockStorageDriverStatisticsTotalWriteTimeKey "Total Time (Write)"
223
224/*!
225 * @enum IOMediaState
226 * @abstract
227 * The different states that getMediaState() can report.
228 * @constant kIOMediaStateOffline
229 * Media is not available.
230 * @constant kIOMediaStateOnline
231 * Media is available and ready for operations.
232 * @constant kIOMediaStateBusy
233 * Media is available, but not ready for operations.
234 */
235
236enum
237{
238 kIOMediaStateOffline = 0,
239 kIOMediaStateOnline = 1,
240 kIOMediaStateBusy = 2
241};
242
243typedef UInt32 IOMediaState;
244
245#endif /* !_IOBLOCKSTORAGEDRIVER_H */
246

Archive Download this file

Revision: 1129