(file) Return to Device_CoolingAndPower.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIMPrelim29

  1 karl  1.1 // ===================================================================
  2           // Title:  Device Cooling and Power
  3           // $State: Preliminary $
  4           // $Date: 2004/03/19 15:28:38 $
  5           // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Device_CoolingAndPower.mof,v $
  6           // $Revision: 1.2 $
  7           // ===================================================================
  8           //#pragma inLine ("Includes/copyright.inc")
  9           // Copyright 1998-2004 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 karl  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 karl  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 defines
 48           //              the concepts and classes to manage cooling and
 49           //              supply power to devices.
 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 2.8 Final.
 56           // CR1223 - SysDev Omnibus CR - Minor MOF corrections.
 57           // 
 58           // Change Log for v2.7
 59           // CR621 - Deprecate PackageCooling
 60           // CR622 - Fix the DMI mapping string to include the attribute number
 61           //         for Battery.BatteryStatus, .EstimatedRunTime, .Chemistry,
 62           //           .DesignCapacity, .FullChargeCapacity, .DesignVoltage,
 63           //           .SmartBatteryVersion, & .TimeToFullCharge,
 64 karl  1.1 //         PowerSupply.Range1InputVoltageLow, .Range1InputVoltageHigh,
 65           //           .Range1InputFrequencyLow, .Range1InputFrequencyHigh,
 66           //           .Range2InputVoltageLow, .Range2InputVoltageHigh,
 67           //           .Range2InputFrequencyLow, .Range2InputFrequencyHigh,
 68           //           .ActiveInputVoltage, .TypeOfRangeSwitching, &
 69           //           .TotalOutputPower
 70           // ==================================================================
 71           
 72           #pragma locale ("en_US")
 73           
 74           
 75           // ===================================================================
 76           // CoolingDevice
 77           // ===================================================================
 78              [Version ( "2.6.0" ), Description (
 79                  "Capabilities and management of CoolingDevices.")]
 80           class CIM_CoolingDevice : CIM_LogicalDevice {
 81           
 82                 [Description (
 83                     "ActiveCooling is a boolean indicating that the Cooling "
 84                     "Device provides active (as opposed to passive) cooling.")]
 85 karl  1.1    boolean ActiveCooling;
 86           };
 87           
 88           
 89           // ===================================================================
 90           // Refrigeration
 91           // ===================================================================
 92              [Version ( "2.6.0" ), Description (
 93                  "Capabilities and management of a Refrigeration CoolingDevice.")]
 94           class CIM_Refrigeration : CIM_CoolingDevice {
 95           };
 96           
 97           
 98           // ===================================================================
 99           // HeatPipe
100           // ===================================================================
101              [Version ( "2.6.0" ), Description (
102                  "Capabilities and management of a HeatPipe CoolingDevice.")]
103           class CIM_HeatPipe : CIM_CoolingDevice {
104           };
105           
106 karl  1.1 
107           // ===================================================================
108           // Fan
109           // ===================================================================
110              [Version ( "2.6.0" ), Description (
111                  "Capabilities and management of a Fan CoolingDevice.")]
112           class CIM_Fan : CIM_CoolingDevice {
113           
114                 [Description (
115                     "Indication of whether the fan supports variable speeds.")]
116              boolean VariableSpeed;
117           
118                 [Description (
119                     "DesiredSpeed is the currently requested fan speed, defined "
120                     "in Revolutions per Minute, when a variable speed fan is "
121                     "supported (VariableSpeed boolean = TRUE). The current speed "
122                     "is determined via a sensor (CIM_Tachometer) that is "
123                     "associated with the Fan using the CIM_AssociatedSensor "
124                     "relationship."), 
125                  Units ( "Revolutions per Minute" )]
126              uint64 DesiredSpeed;
127 karl  1.1 
128                 [Description (
129                     "Requests that the Fan speed be set to the value specified "
130                     "in the method's input parameter. The return value should be "
131                     "0 if the request was successfully executed, 1 if the "
132                     "request is not supported and some other value if an error "
133                     "occurred. In a subclass, the set of possible return codes "
134                     "could be specified, using a ValueMap qualifier on the "
135                     "method. The strings to which the ValueMap contents are "
136                     "'translated' may also be specified in the subclass as a "
137                     "Values array qualifier.")]
138              uint32 SetSpeed ( 
139                    [IN, Description (
140                        "The desired speed for the fan.")]
141                 uint64 DesiredSpeed); 
142           };
143           
144           
145           // ===================================================================
146           // AssociatedCooling
147           // ===================================================================
148 karl  1.1    [Association, Version ( "2.6.0" ), Description (
149                  "Many Devices, such as processors or power supplies, require "
150                  "their own cooling devices. This association indicates where "
151                  "fans or other CoolingDevices are specific to a Device, versus "
152                  "providing enclosure or cabinet cooling.")]
153           class CIM_AssociatedCooling : CIM_Dependency {
154           
155                 [Override ( "Antecedent" ), Description (
156                     "The CoolingDevice.")]
157              CIM_CoolingDevice REF Antecedent;
158           
159                 [Override ( "Dependent" ), Description (
160                     "The LogicalDevice being cooled.")]
161              CIM_LogicalDevice REF Dependent;
162           };
163           
164           
165           // ===================================================================
166           // Battery
167           // ===================================================================
168              [Version ( "2.7.0" ), Description (
169 karl  1.1        "Capabilities and management of the Battery LogicalDevice. This "
170                  "class applies to both batteries in Laptop Systems and other "
171                  "internal/external batteries, such as used in, or as UPSs.")]
172           class CIM_Battery : CIM_LogicalDevice {
173           
174                 [Description (
175                     "Description of the Battery's charge status. Values such as "
176                     "\"Fully Charged\" (value=3) or \"Partially Charged\" (11) "
177                     "can be specified. The value, 10, is not valid in the CIM "
178                     "Schema since in DMI it represents that no battery is "
179                     "installed. In this case, this object should not be "
180                     "instantiated."), 
181                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10",
182                     "11" }, 
183                  Values { "Other", "Unknown", "Fully Charged", "Low", "Critical",
184                     "Charging", "Charging and High", "Charging and Low",
185                     "Charging and Critical", 
186                     // 10             
187                     "Undefined", "Partially Charged" }, 
188                  MappingStrings { "MIF.DMTF|Portable Battery|003.14" }]
189              uint16 BatteryStatus;
190 karl  1.1 
191                 [Description (
192                     "TimeOnBattery indicates the elapsed time in seconds since "
193                     "the ComputerSystem, UPS, ... last switched to battery "
194                     "power, or the time since the System or UPS was last "
195                     "restarted, whichever is less. Zero shall be returned if the "
196                     "Battery is 'on line'."), 
197                  Units ( "Seconds" )]
198              uint32 TimeOnBattery;
199           
200                 [Description (
201                     "EstimatedRunTime is an estimate in minutes of the time to "
202                     "battery charge depletion under the present load conditions "
203                     "if the utility power is off, or lost and remains off, or a "
204                     "Laptop is disconnected from a power source."), 
205                  Units ( "Minutes" ), 
206                  MappingStrings { "MIF.DMTF|Portable Battery|003.15" }]
207              uint32 EstimatedRunTime;
208           
209                 [Description (
210                     "An estimate of the percentage of full charge remaining."), 
211 karl  1.1        Units ( "Percent" ), Gauge]
212              uint16 EstimatedChargeRemaining;
213           
214                 [Description (
215                     "An enumeration that describes the Battery's chemistry."), 
216                  ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" }, 
217                  Values { "Other", "Unknown", "Lead Acid", "Nickel Cadmium",
218                     "Nickel Metal Hydride", "Lithium-ion", "Zinc air",
219                     "Lithium Polymer" }, 
220                  MappingStrings { "MIF.DMTF|Portable Battery|003.7" }]
221              uint16 Chemistry;
222           
223                 [Description (
224                     "The design capacity of the battery in mWatt-hours. If this "
225                     "property is not supported, enter 0."), 
226                  Units ( "MilliWattHours" ), 
227                  MappingStrings { "MIF.DMTF|Portable Battery|003.8" }]
228              uint32 DesignCapacity;
229           
230                 [Description (
231                     "The full charge capacity of the battery in mWatt-hours. "
232 karl  1.1           "Comparison of this value to the Battery DesignCapacity "
233                     "determines when the Battery requires replacement. A "
234                     "Battery's end of life is typically when the FullCharge "
235                     "Capacity falls below 80% of the DesignCapacity. If this "
236                     "property is not supported, enter 0."), 
237                  Units ( "MilliWattHours" ), 
238                  MappingStrings { "MIF.DMTF|Portable Battery|003.11" }]
239              uint32 FullChargeCapacity;
240           
241                 [Description (
242                     "The design voltage of the battery in mVolts. If this "
243                     "attribute is not supported, enter 0."), 
244                  Units ( "MilliVolts" ), 
245                  MappingStrings { "MIF.DMTF|Portable Battery|003.9" }]
246              uint64 DesignVoltage;
247           
248                 [Description (
249                     "The Smart Battery Data Specification version number "
250                     "supported by this Battery. If the Battery does not support "
251                     "this function, the value should be left blank."), 
252                  MaxLen ( 64 ), 
253 karl  1.1        MappingStrings { "MIF.DMTF|Portable Battery|003.10" }]
254              string SmartBatteryVersion;
255           
256                 [Description (
257                     "The remaining time to charge the battery fully in minutes "
258                     "at the current charging rate and usage."), 
259                  Units ( "Minutes" ), 
260                  MappingStrings { "MIF.DMTF|Portable Battery|003.16" }]
261              uint32 TimeToFullCharge;
262           
263                 [Description (
264                     "Indicates the Battery's expected lifetime in minutes, "
265                     "assuming that the Battery is fully charged. This property "
266                     "represents the total expected life of the Battery, not its "
267                     "current remaining life, which is indicated by the "
268                     "EstimatedRunTime property."), 
269                  Units ( "Minutes" )]
270              uint32 ExpectedLife;
271           
272                 [Description (
273                     "MaxRechargeTime indicates the maximum time, in minutes, to "
274 karl  1.1           "fully charge the Battery. This property represents the time "
275                     "to recharge a fully depleted Battery, not the current "
276                     "remaining charging time, which is indicated in the "
277                     "TimeToFullCharge property."), 
278                  Units ( "Minutes" )]
279              uint32 MaxRechargeTime;
280           };
281           
282           
283           // ===================================================================
284           // AssociatedBattery
285           // ===================================================================
286              [Association, Version ( "2.6.0" ), Description (
287                  "A LogicalDevice may use or require one or more Batteries. This "
288                  "relationship is described by the AssociatedBattery dependency. "
289                  "It is also possible to model the individual Batteries that "
290                  "comprise a UPS, using this association.")]
291           class CIM_AssociatedBattery : CIM_Dependency {
292           
293                 [Override ( "Antecedent" ), Description (
294                     "The Battery.")]
295 karl  1.1    CIM_Battery REF Antecedent;
296           
297                 [Override ( "Dependent" ), Description (
298                     "The LogicalDevice needing or associated with the Battery.")]
299              CIM_LogicalDevice REF Dependent;
300           };
301           
302           
303           // ===================================================================
304           // PowerSupply
305           // ===================================================================
306              [Version ( "2.7.0" ), Description (
307                  "Capabilities and management of the PowerSupply LogicalDevice.")]
308           class CIM_PowerSupply : CIM_LogicalDevice {
309           
310                 [Description (
311                     "Boolean indicating that the PowerSupply is a switching (vs "
312                     "linear) supply.")]
313              boolean IsSwitchingSupply;
314           
315                 [Description (
316 karl  1.1           "The low voltage of Input Voltage Range 1 for this Power "
317                     "Supply, in millivolts. A value of 0 denotes 'unknown'."), 
318                  Units ( "MilliVolts" ), 
319                  MappingStrings { "MIF.DMTF|Power Supply|004.7" }]
320              uint32 Range1InputVoltageLow;
321           
322                 [Description (
323                     "The high voltage of Input Voltage Range 1 for this Power "
324                     "Supply, in millivolts. A value of 0 denotes 'unknown'."), 
325                  Units ( "MilliVolts" ), 
326                  MappingStrings { "MIF.DMTF|Power Supply|004.8" }]
327              uint32 Range1InputVoltageHigh;
328           
329                 [Description (
330                     "The frequency (in Hertz) at the low end of this Power "
331                     "Supply's Input Frequency Range 1. A value of zero implies "
332                     "DC."), 
333                  Units ( "Hertz" ), 
334                  MappingStrings { "MIF.DMTF|Power Supply|004.17" }]
335              uint32 Range1InputFrequencyLow;
336           
337 karl  1.1       [Description (
338                     "The frequency (in Hertz) at the high end of this Power "
339                     "Supply's Input Frequency Range 1. A value of zero implies "
340                     "DC."), 
341                  Units ( "Hertz" ), 
342                  MappingStrings { "MIF.DMTF|Power Supply|004.18" }]
343              uint32 Range1InputFrequencyHigh;
344           
345                 [Description (
346                     "The low voltage of Input Voltage Range 2 for this Power "
347                     "Supply, in millivolts. A value of 0 denotes 'unknown'."), 
348                  Units ( "MilliVolts" ), 
349                  MappingStrings { "MIF.DMTF|Power Supply|004.11" }]
350              uint32 Range2InputVoltageLow;
351           
352                 [Description (
353                     "The high voltage of Input Voltage Range 2 for this Power "
354                     "Supply, in millivolts. A value of 0 denotes 'unknown'."), 
355                  Units ( "MilliVolts" ), 
356                  MappingStrings { "MIF.DMTF|Power Supply|004.12" }]
357              uint32 Range2InputVoltageHigh;
358 karl  1.1 
359                 [Description (
360                     "The frequency (in Hertz) at the low end of this Power "
361                     "Supply's Input Frequency Range 2. A value of zero implies "
362                     "DC."), 
363                  Units ( "Hertz" ), 
364                  MappingStrings { "MIF.DMTF|Power Supply|004.19" }]
365              uint32 Range2InputFrequencyLow;
366           
367                 [Description (
368                     "The frequency (in Hertz) at the high end of this Power "
369                     "Supply's Input Frequency Range 2. A value of zero implies "
370                     "DC."), 
371                  Units ( "Hertz" ), 
372                  MappingStrings { "MIF.DMTF|Power Supply|004.20" }]
373              uint32 Range2InputFrequencyHigh;
374           
375                 [Description (
376                     "ActiveInputVoltage indicates which input voltage range is "
377                     "currently in use. Range 1, 2 or both can be specified using "
378                     "the values 3, 4 or 5, respectively. If the Supply is not "
379 karl  1.1           "currently drawing power, the value 6 (\"Neither\") can be "
380                     "specified. This information is necessary in the case of a "
381                     "UPS, a subclass of PowerSupply."), 
382                  ValueMap { "1", "2", "3", "4", "5", "6" }, 
383                  Values { "Other", "Unknown", "Range 1", "Range 2", "Both",
384                     "Neither" }, 
385                  MappingStrings { "MIF.DMTF|Power Supply|004.15" }]
386              uint16 ActiveInputVoltage;
387           
388                 [Description (
389                     "TypeOfRangeSwitching describes the kind of input voltage "
390                     "range switching implemented in this PowerSupply. For "
391                     "example, autoswitching can be specified (value=4)."), 
392                  ValueMap { "1", "2", "3", "4", "5", "6" }, 
393                  Values { "Other", "Unknown", "Manual", "Autoswitch",
394                     "Wide Range", "Not Applicable" }, 
395                  MappingStrings { "MIF.DMTF|Power Supply|004.16" }]
396              uint16 TypeOfRangeSwitching;
397           
398                 [Description (
399                     "Represents the total output power of the PowerSupply in "
400 karl  1.1           "milliWatts. 0 denotes 'unknown'."), 
401                  Units ( "MilliWatts" ), 
402                  MappingStrings { "MIF.DMTF|Power Supply|004.21" }]
403              uint32 TotalOutputPower;
404           };
405           
406           
407           // ===================================================================
408           // SuppliesPower
409           // ===================================================================
410              [Association, Version ( "2.6.0" ), Description (
411                  "The SuppliesPower relationship indicates that a Device is in "
412                  "the power domain of the referenced PowerSupply or UPS. It "
413                  "indicates which Device(s) are dependent on the PowerSupply, "
414                  "and hence, which Devices are affected if the Supply is lost.")]
415           class CIM_SuppliesPower : CIM_Dependency {
416           
417                 [Override ( "Antecedent" ), Description (
418                     "The Supply providing power.")]
419              CIM_PowerSupply REF Antecedent;
420           
421 karl  1.1       [Override ( "Dependent" ), Description (
422                     "A LogicalDevice in the power domain of the Supply.")]
423              CIM_LogicalDevice REF Dependent;
424           };
425           
426           
427           // ===================================================================
428           // UninterruptiblePowerSupply
429           // ===================================================================
430              [Version ( "2.6.0" ), Description (
431                  "Capabilities and management of an UninterruptiblePowerSupply. "
432                  "The properties of the UPS Device indicate when incoming power "
433                  "is trimmed or boosted, and the aggregated information of the "
434                  "batteries, generators, etc. that comprise the Device. These "
435                  "individual components (for example, multiple batteries) can "
436                  "also be independently modeled and associated with the UPS.")]
437           class CIM_UninterruptiblePowerSupply : CIM_PowerSupply {
438           
439                 [Override ( "Range1InputVoltageLow" ), Description (
440                     "If the voltage (in millivolts) drops below the value "
441                     "specified by Range1InputVoltageLow, the UPS will compensate "
442 karl  1.1           "by boosting the voltage using its power source(s). A value "
443                     "of 0 indicates that the voltage at which boosting occurs is "
444                     "'unknown'."), 
445                  Units ( "MilliVolts" )]
446              uint32 Range1InputVoltageLow;
447           
448                 [Override ( "Range1InputVoltageHigh" ), Description (
449                     "If the voltage (in millivolts) rises above the value "
450                     "specified by Range1InputVoltageHigh, the UPS will "
451                     "compensate by trimming the voltage. A value of 0 indicates "
452                     "that the voltage at which trimming occurs is 'unknown'."), 
453                  Units ( "MilliVolts" )]
454              uint32 Range1InputVoltageHigh;
455           
456                 [Override ( "Range2InputVoltageLow" ), Description (
457                     "If the voltage (in millivolts) drops below the value "
458                     "specified by Range2InputVoltageLow, the UPS will compensate "
459                     "by boosting the voltage using its power source(s). A value "
460                     "of 0 indicates that the voltage at which boosting occurs is "
461                     "'unknown'."), 
462                  Units ( "MilliVolts" )]
463 karl  1.1    uint32 Range2InputVoltageLow;
464           
465                 [Override ( "Range2InputVoltageHigh" ), Description (
466                     "If the voltage (in millivolts) rises above the value "
467                     "specified by Range2InputVoltageHigh, the UPS will "
468                     "compensate by trimming the voltage. A value of 0 indicates "
469                     "that the voltage at which trimming occurs is 'unknown'."), 
470                  Units ( "MilliVolts" )]
471              uint32 Range2InputVoltageHigh;
472           
473                 [Description (
474                     "The indication of the capacity remaining in the UPS' "
475                     "batteries, generator, ... A value of \"Normal\" (2) "
476                     "indicates that the remaining estimated minutes of run-time "
477                     "is greater than the UPS' defined 'low power' state "
478                     "(typically two minutes). A value of \"Low\" (3) indicates "
479                     "that the remaining estimated minutes of run-time is less "
480                     "than or equal to the UPS' defined 'low power' state. A "
481                     "value of \"Depleted\" (4) indicates that the UPS will be "
482                     "unable to sustain the present load when and if the utility "
483                     "power is lost (including the possibility that the utility "
484 karl  1.1           "power is currently absent)."), 
485                  ValueMap { "1", "2", "3", "4" }, 
486                  Values { "Unknown", "Normal", "Low", "Depleted" }, 
487                  MappingStrings { "MIF.DMTF|UPS Battery|001.1" }]
488              uint16 RemainingCapacityStatus;
489           
490                 [Description (
491                     "TimeOnBackup indicates the elapsed time in seconds since "
492                     "the UPS last switched to battery power, generator, ... Or, "
493                     "the time since the UPS was last restarted, whichever is "
494                     "less. Zero shall be returned if the UPS is 'on line'."), 
495                  Units ( "Seconds" ), 
496                  MappingStrings { "MIF.DMTF|UPS Battery|001.2" }]
497              uint32 TimeOnBackup;
498           
499                 [Description (
500                     "EstimatedRunTime is an estimate in minutes of the time to "
501                     "battery, generator, ... depletion under the present load "
502                     "conditions if the utility power is off, or lost and remains "
503                     "off."), 
504                  Units ( "Minutes" ), 
505 karl  1.1        MappingStrings { "MIF.DMTF|UPS Battery|001.3" }]
506              uint32 EstimatedRunTime;
507           
508                 [Description (
509                     "An estimate of the percentage of full charge remaining for "
510                     "a UPS (that uses battery technology)."), 
511                  Units ( "Percent" ), Gauge, 
512                  MappingStrings { "MIF.DMTF|UPS Battery|001.4" }]
513              uint16 EstimatedChargeRemaining;
514           };
515           
516           // ==================================================================
517           // PackageCooling
518           // ==================================================================
519              [Association, Deprecated { "CIM_PackageDependency" },
520                  Version ( "2.7.0" ), Description (
521                  "Often, a CoolingDevice is installed in a Package such as a "
522                  "Chassis or a Rack, not for a specific Device, but to assist in "
523                  "the cooling of the Package in general. The use of this "
524                  "association has been deprecated. Instead, the more generic "
525                  "PackageDependency relationship should be used.")]
526 karl  1.1 class CIM_PackageCooling : CIM_PackageDependency {
527           
528                 [Deprecated { "CIM_PackageDependency.Antecedent" },
529                     Override ( "Antecedent" ), Description (
530                     "The CoolingDevice for the Package.")]
531              CIM_CoolingDevice REF Antecedent;
532           
533                 [Deprecated { "CIM_PackageDependency.Dependent" },
534                     Override ( "Dependent" ), Description (
535                     "The PhysicalPackage whose environment is cooled.")]
536              CIM_PhysicalPackage REF Dependent;
537           };
538           
539           
540           // ===================================================================
541           // end of file
542           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2