1 tony 1.1 // ===================================================================
2 // Title: User Devices 2.8
3 // Filename: Device28_User.mof
4 // Version: 2.8
5 // Status: Final
6 // Date: Jan 26, 2004
7 // ===================================================================
8 // Copyright 1998-2003 Distributed Management Task Force, Inc. (DMTF).
9 // All rights reserved.
10 // DMTF is a not-for-profit association of industry members dedicated
11 // to promoting enterprise and systems management and interoperability.
12 // DMTF specifications and documents may be reproduced for uses
13 // consistent with this purpose by members and non-members,
14 // provided that correct attribution is given.
15 // As DMTF specifications may be revised from time to time,
16 // the particular version and release date should always be noted.
17 //
18 // Implementation of certain elements of this standard or proposed
19 // standard may be subject to third party patent rights, including
20 // provisional patent rights (herein "patent rights"). DMTF makes
21 // no representations to users of the standard as to the existence
22 tony 1.1 // of such rights, and is not responsible to recognize, disclose, or
23 // identify any or all such third party patent right, owners or
24 // claimants, nor for any incomplete or inaccurate identification or
25 // disclosure of such rights, owners or claimants. DMTF shall have no
26 // liability to any party, in any manner or circumstance, under any
27 // legal theory whatsoever, for failure to recognize, disclose, or
28 // identify any such third party patent rights, or for such party's
29 // reliance on the standard or incorporation thereof in its product,
30 // protocols or testing procedures. DMTF shall have no liability to
31 // any party implementing such standard, whether such implementation
32 // is foreseeable or not, nor to any patent owner or claimant, and shall
33 // have no liability or responsibility for costs or losses incurred if
34 // a standard is withdrawn or modified after publication, and shall be
35 // indemnified and held harmless by any party implementing the
36 // standard from any and all claims of infringement by a patent owner
37 // for such implementations.
38 //
39 // For information about patents held by third-parties which have
40 // notified the DMTF that, in their opinion, such patent may relate to
41 // or impact implementations of DMTF standards, visit
42 // http://www.dmtf.org/about/policies/disclosures.php.
43 tony 1.1 // ===================================================================
44 // Description: The Device Model extends the management concepts that
45 // are related to LogicalDevices. This file models
46 // user devices (monitors, keyboards, pointing devices,
47 // etc.).
48 //
49 // The object classes below are listed in an order that
50 // avoids forward references. Required objects, defined
51 // by other working groups, are omitted.
52 // ==================================================================
53 // Change Log for v2.8 - None
54 //
55 // Change Log for v2.7
56 // CR622 - Fix the DMI mapping string to include the attribute number
57 // for PointingDevice.PointingType & .NumberOfButtons and
58 // Keyboard.Layout
59 // ==================================================================
60
61 #pragma locale ("en_US")
62
63
64 tony 1.1 // ===================================================================
65 // UserDevice
66 // ===================================================================
67 [Abstract, Version ( "2.6.0" ), Description (
68 "UserDevices are LogicalDevices that allow a ComputerSystem's "
69 "users to input, view or hear data. It is a superclass from "
70 "which other classes, such as Keyboard or DesktopMonitor, "
71 "descend.")]
72 class CIM_UserDevice : CIM_LogicalDevice {
73
74 [Description (
75 "An indication of whether the Device is locked, preventing "
76 "user input or output.")]
77 boolean IsLocked;
78 };
79
80
81 // ===================================================================
82 // PointingDevice
83 // ===================================================================
84 [Version ( "2.7.0" ), Description (
85 tony 1.1 "PointingDevice represents those Devices used to 'point' to "
86 "regions of a Display.")]
87 class CIM_PointingDevice : CIM_UserDevice {
88
89 [Description (
90 "The type of the pointing device."),
91 ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9" },
92 Values { "Other", "Unknown", "Mouse", "Track Ball",
93 "Track Point", "Glide Point", "Touch Pad", "Touch Screen",
94 "Mouse - Optical Sensor" },
95 MappingStrings { "MIF.DMTF|Pointing Device|003.1" }]
96 uint16 PointingType;
97
98 [Description (
99 "Number of buttons. If the PointingDevice has no buttons, "
100 "enter 0."),
101 MappingStrings { "MIF.DMTF|Pointing Device|003.4" }]
102 uint8 NumberOfButtons;
103
104 [Description (
105 "Integer indicating whether the PointingDevice is configured "
106 tony 1.1 "for right (value=2) or left handed operation (value=3). "
107 "Also, the values, \"Unknown\" (0) and \"Not Applicable\" "
108 "(1), can be defined."),
109 ValueMap { "0", "1", "2", "3" },
110 Values { "Unknown", "Not Applicable", "Right Handed Operation",
111 "Left Handed Operation" }]
112 uint16 Handedness;
113
114 [Description (
115 "Tracking resolution of the PointingDevice in Counts per "
116 "Inch."),
117 Units ( "Counts per Inch" )]
118 uint32 Resolution;
119 };
120
121
122 // ===================================================================
123 // Keyboard
124 // ===================================================================
125 [Version ( "2.7.0" ), Description (
126 "Capabilities and management of the Keyboard LogicalDevice.")]
127 tony 1.1 class CIM_Keyboard : CIM_UserDevice {
128
129 [Description (
130 "Number of function keys on the Keyboard.")]
131 uint16 NumberOfFunctionKeys;
132
133 [Description (
134 "A free-form string indicating the format and layout of the "
135 "Keyboard."),
136 MappingStrings { "MIF.DMTF|Keyboard|004.1" }]
137 string Layout;
138
139 [Description (
140 "An integer indicating whether a hardware-level password is "
141 "enabled at the keyboard (value=4), preventing local input. "
142 "Other values are: \"Disabled\" (3), \"Not Implemented\" "
143 "(5), \"Other\" (1) and \"Unknown\" (2)."),
144 ValueMap { "1", "2", "3", "4", "5" },
145 Values { "Other", "Unknown", "Disabled", "Enabled",
146 "Not Implemented" },
147 MappingStrings { "MIF.DMTF|System Hardware Security|001.2" }]
148 tony 1.1 uint16 Password;
149 };
150
151
152 // ===================================================================
153 // Display
154 // ===================================================================
155 [Abstract, Version ( "2.6.0" ), Description (
156 "Display is a superclass for grouping the miscellaneous display "
157 "devices that exist.")]
158 class CIM_Display : CIM_UserDevice {
159 };
160
161
162 // ===================================================================
163 // DesktopMonitor
164 // ===================================================================
165 [Version ( "2.6.0" ), Description (
166 "Capabilities and management of the DesktopMonitor (CRT) "
167 "LogicalDevice.")]
168 class CIM_DesktopMonitor : CIM_Display {
169 tony 1.1
170 [Description (
171 "The type of DesktopMonitor or CRT. For example, multiscan "
172 "color or monochrome monitors (values 2 or 3, respectively) "
173 "can be indicated in this property."),
174 ValueMap { "0", "1", "2", "3", "4", "5" },
175 Values { "Unknown", "Other", "Multiscan Color",
176 "Multiscan Monochrome", "Fixed Frequency Color",
177 "Fixed Frequency Monochrome" }]
178 uint16 DisplayType;
179
180 [Description (
181 "Monitor's bandwidth in MHertz. If unknown, enter 0."),
182 Units ( "MegaHertz" )]
183 uint32 Bandwidth;
184
185 [Description (
186 "The logical height of the Display in screen coordinates.")]
187 uint32 ScreenHeight;
188
189 [Description (
190 tony 1.1 "The logical width of the Display in screen coordinates.")]
191 uint32 ScreenWidth;
192 };
193
194
195 // ===================================================================
196 // FlatPanel
197 // ===================================================================
198 [Version ( "2.6.0" ), Description (
199 "Capabilities and management of the FlatPanel LogicalDevice.")]
200 class CIM_FlatPanel : CIM_Display {
201
202 [Description (
203 "FlatPanel's horizontal resolution in Pixels."),
204 Units ( "Pixels" )]
205 uint32 HorizontalResolution;
206
207 [Description (
208 "FlatPanel's vertical resolution in Pixels."),
209 Units ( "Pixels" )]
210 uint32 VerticalResolution;
211 tony 1.1
212 [Description (
213 "A FlatPanel's scan mode indicating either single (value=2) "
214 "or dual scan (3)."),
215 ValueMap { "0", "1", "2", "3" },
216 Values { "Unknown", "Other", "Single Scan", "Dual Scan" }]
217 uint16 ScanMode;
218
219 [Description (
220 "An integer enumeration describing the type of flat panel "
221 "display."),
222 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8" },
223 Values { "Unknown", "Other", "Passive Matrix LCD",
224 "Active Matrix LCD", "Cholesteric LCD",
225 "Field Emission Display", "Electro Luminescent Display",
226 "Gas Plasma", "LED" }]
227 uint16 DisplayType;
228
229 [Description (
230 "A description of the display illumination type. For "
231 "example, backlit (value=2) or reflective (4) can be "
232 tony 1.1 "specified."),
233 ValueMap { "0", "1", "2", "3", "4" },
234 Values { "Unknown", "Other", "Backlit", "Edgelit",
235 "Reflective" }]
236 uint16 LightSource;
237
238 [Description (
239 "Boolean indicating whether the FlatPanel supports color "
240 "display.")]
241 boolean SupportsColor;
242 };
243
244
245 // ===================================================================
246 // Scanner
247 // ===================================================================
248 [Version ( "2.6.0" ), Description (
249 "Capabilities and management of the Scanner LogicalDevice.")]
250 class CIM_Scanner : CIM_LogicalDevice {
251 };
252
253 tony 1.1
254 // ===================================================================
255 // Door
256 // ===================================================================
257 [Version ( "2.6.0" ), Description (
258 "A Door is the abstraction of hardware providing access to the "
259 "internal componentry of a System. When a Door is 'opened', "
260 "typically all accessible, moving components are stopped or "
261 "suspended to prevent physical harm.")]
262 class CIM_Door : CIM_LogicalDevice {
263
264 [Description (
265 "Boolean indicating the 'open' (TRUE) or 'closed' (FALSE) "
266 "status of the Door.")]
267 boolean Open;
268
269 [Description (
270 "Boolean indicating that the Door is 'locked' (TRUE) or "
271 "'unlocked' (FALSE). When the Door is locked, access to the "
272 "componentry is prevented, without the use of a physical key "
273 "or the issuance of a software unlock command.")]
274 tony 1.1 boolean Locked;
275
276 [Description (
277 "When a Door is 'Open', all accessible, moving componentry "
278 "and Device operation are typically stopped. The Timeout "
279 "property provides a mechanism to event on a Door left open "
280 "for a period of time (in seconds) exceeding the property's "
281 "value."),
282 Units ( "Seconds" )]
283 uint32 Timeout;
284
285 [Description (
286 "Date and time that the Door was last opened.")]
287 datetime LastOpened;
288
289 [Description (
290 "The Capabilities of the Door. For example, information on "
291 "whether the Door is \"Host System Lockable\" (value=2) "
292 "and/or whether a key is available (value=3) are specified "
293 "in this property. The value 4, \"All Drives Dismounted "
294 "Before Access\", pertains to a Door on a StorageLibrary or "
295 tony 1.1 "set of drive bays. If specified for the Door, it means that "
296 "it can not be opened unless all Media are first unloaded "
297 "from the accessible MediaAccessDevices."),
298 ValueMap { "0", "1", "2", "3", "4" },
299 Values { "Unknown", "Other", "Host System Lockable",
300 "Physical Key", "All Drives Dismounted Before Access" }]
301 uint16 Capabilities[];
302 };
303
304
305 // ===================================================================
306 // DoorAccessToPhysicalElement
307 // ===================================================================
308 [Association, Version ( "2.6.0" ), Description (
309 "Doors provide access to PhysicalElements for hot swap, repair "
310 "and similar activities. The entities accessed through a Door "
311 "are indicated in this relationship.")]
312 class CIM_DoorAccessToPhysicalElement : CIM_Dependency {
313
314 [Override ( "Antecedent" ), Description (
315 "The Door that provides access.")]
316 tony 1.1 CIM_Door REF Antecedent;
317
318 [Override ( "Dependent" ), Description (
319 "The PhysicalElement that is accessed.")]
320 CIM_PhysicalElement REF Dependent;
321 };
322
323
324 // ===================================================================
325 // DoorAccessToDevice
326 // ===================================================================
327 [Association, Version ( "2.6.0" ), Description (
328 "Doors provide access to PhysicalElements for hot swap, repair "
329 "and similar activities. In turn, PhysicalElements 'Realize' "
330 "LogicalDevices. Since it may not be possible to define all the "
331 "PhysicalElements that exist, and optimizing the retrieval of "
332 "Devices 'behind' the Door may be desirable, the DoorAccessTo "
333 "Device association provides a shortcut mechanism for defining "
334 "the LogicalDevices ('hardware') accessed through a Door.")]
335 class CIM_DoorAccessToDevice : CIM_Dependency {
336
337 tony 1.1 [Override ( "Antecedent" ), Description (
338 "The Door that provides access.")]
339 CIM_Door REF Antecedent;
340
341 [Override ( "Dependent" ), Description (
342 "The LogicalDevice that is accessed.")]
343 CIM_LogicalDevice REF Dependent;
344 };
345
346 // ===================================================================
347 // MonitorResolution
348 // ===================================================================
349 [Version ( "2.6.0" ), Description (
350 "MonitorResolution describes the relationship between "
351 "horizontal and vertical resolutions, refresh rate and scan "
352 "mode for a DesktopMonitor. The actual resolutions, etc. that "
353 "are in use, are the values specified in the VideoController "
354 "object.")]
355 class CIM_MonitorResolution : CIM_Setting {
356
357 [Key, Override ( "SettingID" ), Description (
358 tony 1.1 "The inherited SettingID serves as part of the key for a "
359 "MonitorResolution instance."),
360 MaxLen ( 256 )]
361 string SettingID;
362
363 [Description (
364 "Monitor's horizontal resolution in Pixels."),
365 Units ( "Pixels" ),
366 MappingStrings { "MIF.DMTF|Monitor Resolutions|002.2" },
367 ModelCorrespondence {
368 "CIM_VideoController.CurrentHorizontalResolution" }]
369 uint32 HorizontalResolution;
370
371 [Description (
372 "Monitor's vertical resolution in Pixels."),
373 Units ( "Pixels" ),
374 MappingStrings { "MIF.DMTF|Monitor Resolutions|002.3" },
375 ModelCorrespondence {
376 "CIM_VideoController.CurrentVerticalResolution" }]
377 uint32 VerticalResolution;
378
379 tony 1.1 [Description (
380 "Monitor's refresh rate in Hertz. If a range of rates is "
381 "supported, use the MinRefreshRate and MaxRefreshRate "
382 "properties, and set RefreshRate (this property) to 0."),
383 Units ( "Hertz" ),
384 MappingStrings { "MIF.DMTF|Monitor Resolutions|002.4" },
385 ModelCorrespondence { "CIM_VideoController.CurrentRefreshRate" }]
386 uint32 RefreshRate;
387
388 [Description (
389 "Monitor's minimum refresh rate in Hertz, when a range of "
390 "rates is supported at the specified resolutions."),
391 Units ( "Hertz" ),
392 MappingStrings { "MIF.DMTF|Monitor Resolutions|002.6" },
393 ModelCorrespondence { "CIM_VideoController.MinRefreshRate" }]
394 uint32 MinRefreshRate;
395
396 [Description (
397 "Monitor's maximum refresh rate in Hertz, when a range of "
398 "rates is supported at the specified resolutions."),
399 Units ( "Hertz" ),
400 tony 1.1 MappingStrings { "MIF.DMTF|Monitor Resolutions|002.7" },
401 ModelCorrespondence { "CIM_VideoController.MaxRefreshRate" }]
402 uint32 MaxRefreshRate;
403
404 [Description (
405 "Integer indicating whether the monitor operates in "
406 "interlaced (value=5) or non-interlaced (4) mode."),
407 ValueMap { "1", "2", "3", "4", "5" },
408 Values { "Other", "Unknown", "Not Supported",
409 "Non-Interlaced Operation", "Interlaced Operation" },
410 MappingStrings { "MIF.DMTF|Monitor Resolutions|002.5" },
411 ModelCorrespondence { "CIM_VideoController.CurrentScanMode" }]
412 uint16 ScanMode;
413 };
414
415
416 // ===================================================================
417 // MonitorSetting
418 // ===================================================================
419 [Association, Version ( "2.6.0" ), Description (
420 "MonitorSetting associates the MonitorResolution Setting object "
421 tony 1.1 "with the DesktopMonitor to which it applies.")]
422 class CIM_MonitorSetting : CIM_ElementSetting {
423
424 [Override ( "Element" ), Description (
425 "The DesktopMonitor.")]
426 CIM_DesktopMonitor REF Element;
427
428 [Override ( "Setting" ), Description (
429 "The MonitorResolution associated with the DesktopMonitor.")]
430 CIM_MonitorResolution REF Setting;
431 };
432
433
434 // ===================================================================
435 // end of file
436 // ===================================================================
|