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