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

   1 tony  1.1 // ===================================================================
   2           // Title:       Device Sensors and Alarms 2.8
   3           // Filename:    Device28_Sensors.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 describes
  46           //              the management of sensors (including LEDs, Buzzers,
  47           //              WatchDog processors, 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 Final
  54           // CR1036 - Sensor cleanup
  55           // CR1223 - SysDev Omnibus CR - minor MOF corrections.
  56           // 
  57           // Change Log for v2.7
  58           // CR621 - Promote subclassing of PackageTempSensor and PackageAlarm
  59           //         from Dependency to PackageDependency and deprecate them.
  60           // CR771 - Add the composition qualifer to CollectionOfSensors
  61           // ==================================================================
  62           
  63           #pragma locale ("en_US")
  64 tony  1.1 
  65           
  66           // ===================================================================
  67           // Sensor
  68           // ===================================================================
  69              [Abstract, Version ( "2.6.0" ), Description (
  70                  "A Sensor is a hardware device capable of measuring the "
  71                  "characteristics of some physical property - for example, the "
  72                  "temperature or voltage characteristics of a UnitaryComputer "
  73                  "System.")]
  74           class CIM_Sensor : CIM_LogicalDevice {
  75           
  76                 [Description (
  77                     "The Type of the Sensor, e.g. Voltage or Temperature Sensor. "
  78                     "If the type is set to \"Other\", then the OtherSensorType "
  79                     "Description can be used to further identify the type, or if "
  80                     "the Sensor has numeric readings, then the type of the "
  81                     "Sensor can be implicitly determined by the Units. A "
  82                     "description of the different Sensor types is as follows: A "
  83                     "Temperature Sensor measures the environmental temperature. "
  84                     "Voltage and Current Sensors measure electrical voltage and "
  85 tony  1.1           "current readings. A Tachometer measures speed/revolutions "
  86                     "of a Device. For example, a Fan Device can have an "
  87                     "associated Tachometer which measures its speed. A Counter "
  88                     "is a general purpose Sensor that measures some numerical "
  89                     "property of a Device. A Counter value can be cleared, but "
  90                     "it never decreases. A Switch Sensor has states like "
  91                     "Open/Close, On/Off, or Up/Down. A Lock has states of "
  92                     "Locked/Unlocked. Humidity, Smoke Detection and Air Flow "
  93                     "Sensors measure the equivalent environmental "
  94                     "characteristics. A Presence Sensor detects the presence of "
  95                     "a PhysicalElement."), 
  96                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
  97                     "10", "11", "12" }, 
  98                  Values { "Unknown", "Other", "Temperature", "Voltage",
  99                     "Current", "Tachometer", "Counter", "Switch", "Lock",
 100                     "Humidity", "Smoke Detection", "Presence", "Air Flow" }, 
 101                  ModelCorrespondence { "CIM_Sensor.OtherSensorTypeDescription" }]
 102              uint16 SensorType;
 103           
 104                 [Description (
 105                     "A string describing the Sensor type - used when the "
 106 tony  1.1           "SensorType property is set to \"Other\"."), 
 107                  MaxLen ( 128 ), 
 108                  ModelCorrespondence { "CIM_Sensor.SensorType" }]
 109              string OtherSensorTypeDescription;
 110           
 111                 [Description (
 112                     "PossibleStates enumerates the string outputs of the Sensor. "
 113                     "For example, a \"Switch\" Sensor may output the states "
 114                     "\"On\", or \"Off\". Another implementation of the Switch "
 115                     "may output the states \"Open\", and \"Close\". Another "
 116                     "example is a NumericSensor supporting thresholds. This "
 117                     "Sensor can report the states like \"Normal\", \"Upper "
 118                     "Fatal\", \"Lower Non-Critical\", etc. A NumericSensor that "
 119                     "does not publish readings and thresholds, but stores this "
 120                     "data internally, can still report its states."), 
 121                  MaxLen ( 128 )]
 122              string PossibleStates[];
 123           
 124                 [Description (
 125                     "The current state indicated by the Sensor. This is always "
 126                     "one of the \"PossibleStates\"."), 
 127 tony  1.1        MaxLen ( 128 )]
 128              string CurrentState;
 129           
 130                 [Description (
 131                     "The polling interval that the Sensor hardware or the "
 132                     "instrumentation uses to determine the current state of the "
 133                     "Sensor."), 
 134                  Units ( "NanoSeconds" )]
 135              uint64 PollingInterval;
 136           };
 137           
 138           
 139           // ===================================================================
 140           // AssociatedSensor
 141           // ===================================================================
 142              [Association, Version ( "2.6.0" ), Description (
 143                  "Many Devices include Sensors or have Sensors installed nearby, "
 144                  "in order to measure critical input and output properties. This "
 145                  "association indicates that relationship.")]
 146           class CIM_AssociatedSensor : CIM_Dependency {
 147           
 148 tony  1.1       [Override ( "Antecedent" ), Description (
 149                     "The Sensor.")]
 150              CIM_Sensor REF Antecedent;
 151           
 152                 [Override ( "Dependent" ), Description (
 153                     "The LogicalDevice for which information is measured by the "
 154                     "Sensor.")]
 155              CIM_LogicalDevice REF Dependent;
 156           };
 157           
 158           
 159           // ===================================================================
 160           // BinarySensor
 161           // ===================================================================
 162              [Deprecated { "CIM_Sensor" }, Version ( "2.8.0" ), Description (
 163                  "A BinarySensor provides a boolean output. The use of this "
 164                  "class is being deprecated in lieu of creating a Sensor with "
 165                  "two PossibleStates.")]
 166           class CIM_BinarySensor : CIM_Sensor {
 167           
 168                 [Deprecated { "CIM_Sensor.SensorType" }, Description (
 169 tony  1.1           "The current value indicated by the Sensor.")]
 170              boolean CurrentReading;
 171           
 172                 [Deprecated { "CIM_Sensor.SensorType" }, Description (
 173                     "ExpectedReading indicates the 'normal' value for the "
 174                     "Sensor.")]
 175              boolean ExpectedReading;
 176           
 177                 [Deprecated { "CIM_Sensor.PossibleStates" }, Description (
 178                     "InterpretationOfTrue is a string indicating what a 'True' "
 179                     "value from the BinarySensor means. This information could "
 180                     "be displayed to a user."), 
 181                  MaxLen ( 64 )]
 182              string InterpretationOfTrue;
 183           
 184                 [Deprecated { "CIM_Sensor.PossibleStates" }, Description (
 185                     "InterpretationOfFalse is a string indicating what a 'False' "
 186                     "value from the BinarySensor means. This information could "
 187                     "be displayed to a user."), 
 188                  MaxLen ( 64 )]
 189              string InterpretationOfFalse;
 190 tony  1.1 };
 191           
 192           
 193           // ===================================================================
 194           // MultiStateSensor
 195           // ===================================================================
 196              [Version ( "2.6.0" ), Description (
 197                  "A Multi-StateSensor is a multi-member set of Sensors.")]
 198           class CIM_MultiStateSensor : CIM_Sensor {
 199           };
 200           
 201           
 202           // ===================================================================
 203           // CollectionOfSensors
 204           // ===================================================================
 205              [Association, Aggregation, Composition, Version ( "2.7.0" ), 
 206               Description (
 207                  "The CollectionOfSensors association indicates the Sensors that "
 208                  "make up a MultiStateSensor.")]
 209           class CIM_CollectionOfSensors : CIM_Component {
 210           
 211 tony  1.1       [Aggregate, Override ( "GroupComponent" ), Max ( 1 ), 
 212                  Description (
 213                     "The MultiStateSensor.")]
 214              CIM_MultiStateSensor REF GroupComponent;
 215           
 216                 [Override ( "PartComponent" ), Min ( 2 ), Description (
 217                     "A Sensor that is part of the MultiStateSensor.")]
 218              CIM_Sensor REF PartComponent;
 219           };
 220           
 221           
 222           // ===================================================================
 223           // NumericSensor
 224           // ===================================================================
 225              [Version ( "2.8.0" ), Description (
 226                  "A Numeric Sensor is capable of returning numeric readings and "
 227                  "optionally supports thresholds settings.")]
 228           class CIM_NumericSensor : CIM_Sensor {
 229           
 230                 [Description (
 231                     "The base unit of the values returned by this Sensor. All "
 232 tony  1.1           "the values returned by this Sensor are represented in the "
 233                     "units obtained by (BaseUnits * 10 raised to the power of "
 234                     "the UnitModifier). For example, if BaseUnits is Volts and "
 235                     "the UnitModifier is -6, then the units of the values "
 236                     "returned are MicroVolts. However, if the RateUnits property "
 237                     "is set to a value other than \"None\", then the units are "
 238                     "further qualified as rate units. In the above example, if "
 239                     "RateUnits is set to \"Per Second\", then the values "
 240                     "returned by the Sensor are in MicroVolts/Second. The units "
 241                     "apply to all numeric properties of the Sensor, unless "
 242                     "explicitly overridden by the Units qualifier."), 
 243                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
 244                     "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
 245                     "20", "21", "22", "23", "24", "25", "26", "27", "28", "29",
 246                     "30", "31", "32", "33", "34", "35", "36", "37", "38", "39",
 247                     "40", "41", "42", "43", "44", "45", "46", "47", "48", "49",
 248                     "50", "51", "52", "53", "54", "55", "56", "57", "58", "59",
 249                     "60", "61", "62", "63", "64", "65" }, 
 250                  Values { "Unknown", "Other", "Degrees C", "Degrees F",
 251                     "Degrees K", "Volts", "Amps", "Watts", "Joules", "Coulombs", 
 252                     //10 
 253 tony  1.1           "VA", "Nits", "Lumens", "Lux", "Candelas", "kPa", "PSI",
 254                     "Newtons", "CFM", "RPM", 
 255                     //20 
 256                     "Hertz", "Seconds", "Minutes", "Hours", "Days", "Weeks",
 257                     "Mils", "Inches", "Feet", "Cubic Inches", 
 258                     //30 
 259                     "Cubic Feet", "Meters", "Cubic Centimeters", "Cubic Meters",
 260                     "Liters", "Fluid Ounces", "Radians", "Steradians",
 261                     "Revolutions", "Cycles", 
 262                     //40 
 263                     "Gravities", "Ounces", "Pounds", "Foot-Pounds",
 264                     "Ounce-Inches", "Gauss", "Gilberts", "Henries", "Farads",
 265                     "Ohms", 
 266                     //50 
 267                     "Siemens", "Moles", "Becquerels", "PPM (parts/million)",
 268                     "Decibels", "DbA", "DbC", "Grays", "Sieverts",
 269                     "Color Temperature Degrees K", 
 270                     //60 
 271                     "Bits", "Bytes", "Words (data)", "DoubleWords", "QuadWords",
 272                     "Percentage" }, 
 273                  ModelCorrespondence { "CIM_NumericSensor.UnitModifier",
 274 tony  1.1           "CIM_NumericSensor.RateUnits" }]
 275              uint16 BaseUnits;
 276           
 277                 [Description (
 278                     "The unit multiplier for the values returned by this Sensor. "
 279                     "All the values returned by this Sensor are represented in "
 280                     "the units obtained by (BaseUnits * 10 raised to the power "
 281                     "of the UnitModifier). For example, if BaseUnits is Volts "
 282                     "and the Unit Modifier is -6, then the units of the values "
 283                     "returned are MicroVolts. However, if the RateUnits property "
 284                     "is set to a value other than \"None\", then the units are "
 285                     "further qualified as rate units. In the above example, if "
 286                     "RateUnits is set to \"Per Second\", then the values "
 287                     "returned by the Sensor are in MicroVolts/Second. The units "
 288                     "apply to all numeric properties of the Sensor, unless "
 289                     "explicitly overridden by the Units qualifier."), 
 290                  ModelCorrespondence { "CIM_NumericSensor.BaseUnits",
 291                     "CIM_NumericSensor.RateUnits" }]
 292              sint32 UnitModifier;
 293           
 294                 [Description (
 295 tony  1.1           "Specifies if the units returned by this Sensor are rate "
 296                     "units. All the values returned by this Sensor are "
 297                     "represented in the units obtained by (BaseUnits * 10 raised "
 298                     "to the power of the UnitModifier). This is true unless this "
 299                     "property (RateUnits) has a value different than \"None\". "
 300                     "For example, if BaseUnits is Volts and the UnitModifier is "
 301                     "-6, then the units of the values returned are MicroVolts. "
 302                     "But, if the RateUnits property is set to a value other than "
 303                     "\"None\", then the units are further qualified as rate "
 304                     "units. In the above example, if RateUnits is set to \"Per "
 305                     "Second\", then the values returned by the Sensor are in "
 306                     "MicroVolts/Second. The units apply to all numeric "
 307                     "properties of the Sensor, unless explicitly overridden by "
 308                     "the Units qualifier. Any implementation of CurrentReading "
 309                     "should be qualified with either a Counter or a Gauge "
 310                     "qualifier, depending on the characteristics of the sensor "
 311                     "being modeled."), 
 312                  ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" }, 
 313                  Values { "None", "Per MicroSecond", "Per MilliSecond",
 314                     "Per Second", "Per Minute", "Per Hour", "Per Day",
 315                     "Per Week", "Per Month", "Per Year" }, 
 316 tony  1.1        ModelCorrespondence { "CIM_NumericSensor.UnitModifier",
 317                     "CIM_NumericSensor.BaseUnits" }]
 318              uint16 RateUnits;
 319           
 320                 [Description (
 321                     "The current value indicated by the Sensor."), 
 322                  MappingStrings { "MIF.DMTF|Temperature Probe|002.5",
 323                     "MIF.DMTF|Electrical Current Probe|001.5",
 324                     "MIF.DMTF|Voltage Probe|001.5" }]
 325              sint32 CurrentReading;
 326           
 327                 [Description (
 328                     "NominalReading indicates the 'normal' or expected value for "
 329                     "the NumericSensor."), 
 330                  MappingStrings { "MIF.DMTF|Temperature Probe|002.6",
 331                     "MIF.DMTF|Electrical Current Probe|001.6",
 332                     "MIF.DMTF|Voltage Probe|001.6" }]
 333              sint32 NominalReading;
 334           
 335                 [Description (
 336                     "NormalMax provides guidance for the user as to the normal "
 337 tony  1.1           "maximum range for the NumericSensor."), 
 338                  MappingStrings { "MIF.DMTF|Temperature Probe|002.7",
 339                     "MIF.DMTF|Electrical Current Probe|001.7",
 340                     "MIF.DMTF|Voltage Probe|001.7" }]
 341              sint32 NormalMax;
 342           
 343                 [Description (
 344                     "NormalMin provides guidance for the user as to the normal "
 345                     "minimum range for the NumericSensor."), 
 346                  MappingStrings { "MIF.DMTF|Temperature Probe|002.8",
 347                     "MIF.DMTF|Electrical Current Probe|001.8",
 348                     "MIF.DMTF|Voltage Probe|001.8" }]
 349              sint32 NormalMin;
 350           
 351                 [Description (
 352                     "MaxReadable indicates the largest value of the measured "
 353                     "property that can be read by the NumericSensor."), 
 354                  MappingStrings { "MIF.DMTF|Temperature Probe|002.9",
 355                     "MIF.DMTF|Electrical Current Probe|001.9",
 356                     "MIF.DMTF|Voltage Probe|001.9" }]
 357              sint32 MaxReadable;
 358 tony  1.1 
 359                 [Description (
 360                     "MinReadable indicates the smallest value of the measured "
 361                     "property that can be read by the NumericSensor."), 
 362                  MappingStrings { "MIF.DMTF|Temperature Probe|002.10",
 363                     "MIF.DMTF|Electrical Current Probe|001.10",
 364                     "MIF.DMTF|Voltage Probe|001.10" }]
 365              sint32 MinReadable;
 366           
 367                 [Description (
 368                     "Resolution indicates the ability of the Sensor to resolve "
 369                     "differences in the measured property. The units for this "
 370                     "measurement are determined by "
 371                     "BaseUnit*UnitModifier/RateUnit."), 
 372                  MappingStrings { "MIF.DMTF|Temperature Probe|002.17",
 373                     "MIF.DMTF|Electrical Current Probe|001.17",
 374                     "MIF.DMTF|Voltage Probe|001.17" }]
 375              uint32 Resolution;
 376           
 377                 [Deprecated { "CIM_NumericSensor.Resolution",
 378                     "CIM_NumericSensor.Accuracy" }, Description (
 379 tony  1.1           "This property is being deprecated in lieu of using the "
 380                     "Resolution and Accuracy properties. \n"
 381                     "Indicates the tolerance of the Sensor for the measured "
 382                     "property. Tolerance, along with Resolution and Accuracy, is "
 383                     "used to calculate the actual value of the measured physical "
 384                     "property. Tolerance may vary depending on whether the "
 385                     "Device is linear over its dynamic range.")]
 386              sint32 Tolerance;
 387           
 388                 [Description (
 389                     "Indicates the accuracy of the Sensor for the measured "
 390                     "property. Its value is recorded as plus/minus hundredths of "
 391                     "a percent. Accuracy, along with Resolution, is used to "
 392                     "calculate the actual value of the measured physical "
 393                     "property. Accuracy may vary depending on whether the Device "
 394                     "is linear over its dynamic range."), 
 395                  Units ( "Hundredths of Percent" ), 
 396                  MappingStrings { "MIF.DMTF|Temperature Probe|002.19",
 397                     "MIF.DMTF|Electrical Current Probe|001.19",
 398                     "MIF.DMTF|Voltage Probe|001.19" }]
 399              sint32 Accuracy;
 400 tony  1.1 
 401                 [Description (
 402                     "Indicates that the Sensor is linear over its dynamic range.")]
 403              boolean IsLinear;
 404           
 405                 [Description (
 406                     "Indicates the margin built around the thresholds. This "
 407                     "margin prevents unnecessary state changes when the Sensor "
 408                     "reading may fluctuate very close to its thresholds. This "
 409                     "could be due to the Sensor's tolerance/accuracy/resolution "
 410                     "or due to environmental factors. Once a threshold is "
 411                     "crossed, the state of the Sensor should change. However, "
 412                     "the state should not fluctuate between the old and new "
 413                     "states unless the Sensor's change in the reading exceeds "
 414                     "the hysteresis value. The units for this measurement are "
 415                     "determined by BaseUnit*UnitModifier/RateUnit.")]
 416              uint32 Hysteresis;
 417           
 418                 [Description (
 419                     "The Sensor's threshold values specify the ranges (min and "
 420                     "max values) for determining whether the Sensor is operating "
 421 tony  1.1           "under Normal, NonCritical, Critical or Fatal conditions. If "
 422                     "Current Reading is between LowerThresholdNonCritical and "
 423                     "Upper ThresholdNonCritical, then the Sensor is reporting a "
 424                     "normal value. If CurrentReading is between "
 425                     "LowerThresholdNonCritical and LowerThresholdCritical, then "
 426                     "the CurrentState is NonCritical."), 
 427                  MappingStrings { "MIF.DMTF|Temperature Probe|002.11",
 428                     "MIF.DMTF|Electrical Current Probe|001.11",
 429                     "MIF.DMTF|Voltage Probe|001.11" }]
 430              sint32 LowerThresholdNonCritical;
 431           
 432                 [Description (
 433                     "The Sensor's threshold values specify the ranges (min and "
 434                     "max values) for determining whether the Sensor is operating "
 435                     "under Normal, NonCritical, Critical or Fatal conditions. If "
 436                     "the CurrentReading is between LowerThresholdNonCritical and "
 437                     "UpperThresholdNonCritical, then the Sensor is reporting a "
 438                     "normal value. If the CurrentReading is between "
 439                     "UpperThreshold NonCritical and UpperThresholdCritical, then "
 440                     "the CurrentState is NonCritical."), 
 441                  MappingStrings { "MIF.DMTF|Temperature Probe|002.12",
 442 tony  1.1           "MIF.DMTF|Electrical Current Probe|001.12",
 443                     "MIF.DMTF|Voltage Probe|001.12" }]
 444              sint32 UpperThresholdNonCritical;
 445           
 446                 [Description (
 447                     "The Sensor's threshold values specify the ranges (min and "
 448                     "max values) for determining whether the Sensor is operating "
 449                     "under Normal, NonCritical, Critical or Fatal conditions. If "
 450                     "the CurrentReading is between LowerThresholdCritical and "
 451                     "Lower ThresholdFatal, then the CurrentState is Critical."), 
 452                  MappingStrings { "MIF.DMTF|Temperature Probe|002.13",
 453                     "MIF.DMTF|Electrical Current Probe|001.13",
 454                     "MIF.DMTF|Voltage Probe|001.13" }]
 455              sint32 LowerThresholdCritical;
 456           
 457                 [Description (
 458                     "The Sensor's threshold values specify the ranges (min and "
 459                     "max values) for determining whether the Sensor is operating "
 460                     "under Normal, NonCritical, Critical or Fatal conditions. If "
 461                     "the CurrentReading is between UpperThresholdCritical and "
 462                     "Upper ThresholdFatal, then the CurrentState is Critical."), 
 463 tony  1.1        MappingStrings { "MIF.DMTF|Temperature Probe|002.14",
 464                     "MIF.DMTF|Electrical Current Probe|001.14",
 465                     "MIF.DMTF|Voltage Probe|001.14" }]
 466              sint32 UpperThresholdCritical;
 467           
 468                 [Description (
 469                     "The Sensor's threshold values specify the ranges (min and "
 470                     "max values) for determining whether the Sensor is operating "
 471                     "under Normal, NonCritical, Critical or Fatal conditions. If "
 472                     "the CurrentReading is below LowerThresholdFatal, then the "
 473                     "Current State is Fatal."), 
 474                  MappingStrings { "MIF.DMTF|Temperature Probe|002.15",
 475                     "MIF.DMTF|Electrical Current Probe|001.15",
 476                     "MIF.DMTF|Voltage Probe|001.15" }]
 477              sint32 LowerThresholdFatal;
 478           
 479                 [Description (
 480                     "The Sensor's threshold values specify the ranges (min and "
 481                     "max values) for determining whether the Sensor is operating "
 482                     "under Normal, NonCritical, Critical or Fatal conditions. If "
 483                     "the CurrentReading is above UpperThresholdFatal, then the "
 484 tony  1.1           "Current State is Fatal."), 
 485                  MappingStrings { "MIF.DMTF|Temperature Probe|002.16",
 486                     "MIF.DMTF|Electrical Current Probe|001.16",
 487                     "MIF.DMTF|Voltage Probe|001.16" }]
 488              sint32 UpperThresholdFatal;
 489           
 490                 [Description (
 491                     "An array representing the thresholds supported by this "
 492                     "Sensor."), 
 493                  ValueMap { "0", "1", "2", "3", "4", "5" }, 
 494                  Values { "LowerThresholdNonCritical",
 495                     "UpperThresholdNonCritical", "LowerThresholdCritical",
 496                     "UpperThresholdCritical", "LowerThresholdFatal",
 497                     "UpperThresholdFatal" }]
 498              uint16 SupportedThresholds[];
 499           
 500                 [Description (
 501                     "An array representing the thresholds that are currently "
 502                     "enabled for this Sensor."), 
 503                  ValueMap { "0", "1", "2", "3", "4", "5" }, 
 504                  Values { "LowerThresholdNonCritical",
 505 tony  1.1           "UpperThresholdNonCritical", "LowerThresholdCritical",
 506                     "UpperThresholdCritical", "LowerThresholdFatal",
 507                     "UpperThresholdFatal" }]
 508              uint16 EnabledThresholds[];
 509           
 510                 [Description (
 511                     "An array representing the writable thresholds supported by "
 512                     "Sensor."), 
 513                  ValueMap { "0", "1", "2", "3", "4", "5" }, 
 514                  Values { "LowerThresholdNonCritical",
 515                     "UpperThresholdNonCritical", "LowerThresholdCritical",
 516                     "UpperThresholdCritical", "LowerThresholdFatal",
 517                     "UpperThresholdFatal" }]
 518              uint16 SettableThresholds[];
 519           
 520                 [Description (
 521                     "This method resets the values of the thresholds to hardware "
 522                     "defaults. This method returns 0 if successful, 1 if "
 523                     "unsupported and any other value if an error occurred. In a "
 524                     "subclass, the set of possible return codes could be "
 525                     "specified, using a ValueMap qualifier on the method. The "
 526 tony  1.1           "strings to which the ValueMap contents are 'translated' may "
 527                     "also be specified in the subclass as a Values array "
 528                     "qualifier.")]
 529              uint32 RestoreDefaultThresholds(); 
 530           
 531                 [Deprecated { "No Value" }, Description (
 532                     "The use of this method is being deprecated, since Current "
 533                     "senor reading can be retrieved through the GetInstance "
 534                     "operation. \n"
 535                     "For a non-linear Sensor, the resolution, accuracy, "
 536                     "tolerance and hysteresis vary as the current reading moves. "
 537                     "This method can be used to get these factors for a given "
 538                     "reading. It returns 0 if successful, 1 if unsupported, and "
 539                     "any other value if an error occurred. In a subclass, the "
 540                     "set of possible return codes could be specified, using a "
 541                     "ValueMap qualifier on the method. The strings to which the "
 542                     "ValueMap contents are 'translated' may also be specified in "
 543                     "the subclass as a Values array qualifier.")]
 544              uint32 GetNonLinearFactors( 
 545                    [IN, Description (
 546                        "The sensor reading to get information for.")]
 547 tony  1.1       sint32 SensorReading, 
 548                    [IN ( false ), OUT, Description (
 549                        "The accuracy of the reading.")]
 550                 sint32 Accuracy, 
 551                    [IN ( false ), OUT, Description (
 552                        "The resolution of the reading.")]
 553                 uint32 Resolution, 
 554                    [IN ( false ), OUT, Description (
 555                        "The tolerance of the reading.")]
 556                 sint32 Tolerance, 
 557                    [IN ( false ), OUT, Description (
 558                        "The Hysteresis of the reading.")]
 559                 uint32 Hysteresis); 
 560           };
 561           
 562           // ===================================================================
 563           // DiscreteSensor
 564           // ===================================================================
 565              [Deprecated { "CIM_Sensor" }, Version ( "2.8.0" ), Description (
 566                  "A DiscreteSensor has a set of legal string values, that it can "
 567                  "report. These values are enumerated in the Sensor's "
 568 tony  1.1        "PossibleValues property. A DiscreteSensor will always have a "
 569                  "'current reading' that corresponds to one of the enumerated "
 570                  "values. \n"
 571                  "The use of this class is being deprecated in lieu of "
 572                  "CIM_Sensor. Information in the CurrentReading and "
 573                  "PossibleValues properties will typically have the same values "
 574                  "and semantics as for the CurrentState and PossibleStates "
 575                  "properties, inherited from Sensor.")]
 576           class CIM_DiscreteSensor : CIM_Sensor {
 577           
 578                 [Deprecated { "CIM_Sensor.CurrentState" }, Description (
 579                     "The current value indicated by the Sensor."), 
 580                  MaxLen ( 64 )]
 581              string CurrentReading;
 582           
 583                 [Deprecated { "CIM_Sensor.PossibleStates" }, Description (
 584                     "PossibleValues enumerates the string outputs that can be "
 585                     "reported by the DiscreteSensor."), 
 586                  MaxLen ( 64 )]
 587              string PossibleValues[];
 588           
 589 tony  1.1       [Deprecated { "No Value" }, Description (
 590                     "AcceptableValues details which of the PossibleValues "
 591                     "strings are considered 'acceptable' (ie, 'not an error')."), 
 592                  MaxLen ( 64 )]
 593              string AcceptableValues[];
 594           };
 595           
 596           
 597           // ===================================================================
 598           // TemperatureSensor
 599           // ===================================================================
 600              [Deprecated { "CIM_NumericSensor" }, Version ( "2.8.0" ), 
 601               Description (
 602                  "The use of this class is being deprecated in lieu of the "
 603                  "additions to Sensor and Numeric Sensor. A TemperatureSensor "
 604                  "can be defined by setting the SensorType property, inherited "
 605                  "from Sensor, to 2 (\"Temperature\").")]
 606           class CIM_TemperatureSensor : CIM_NumericSensor {
 607           
 608                 [Deprecated { "No Value" }, Override ( "SensorType" )]
 609              uint16 SensorType = 2;
 610 tony  1.1 
 611                 [Deprecated { "No Value" }, Override ( "BaseUnits" )]
 612              uint16 BaseUnits = 2;
 613           
 614                 [Deprecated { "No Value" }, Override ( "UnitModifier" )]
 615              sint32 UnitModifier = -1;
 616           
 617                 [Deprecated { "No Value" }, Override ( "RateUnits" )]
 618              uint16 RateUnits = 0;
 619           
 620                 [Deprecated { "No Value" }, Override ( "CurrentReading" ), 
 621                  MappingStrings { "MIF.DMTF|Temperature Probe|002.5" }]
 622              sint32 CurrentReading;
 623           
 624                 [Deprecated { "No Value" }, Override ( "NominalReading" ), 
 625                  MappingStrings { "MIF.DMTF|Temperature Probe|002.6" }]
 626              sint32 NominalReading;
 627           
 628                 [Deprecated { "No Value" }, Override ( "NormalMax" ), 
 629                  MappingStrings { "MIF.DMTF|Temperature Probe|002.7" }]
 630              sint32 NormalMax;
 631 tony  1.1 
 632                 [Deprecated { "No Value" }, Override ( "NormalMin" ), 
 633                  MappingStrings { "MIF.DMTF|Temperature Probe|002.8" }]
 634              sint32 NormalMin;
 635           
 636                 [Deprecated { "No Value" }, Override ( "MaxReadable" ), 
 637                  MappingStrings { "MIF.DMTF|Temperature Probe|002.9" }]
 638              sint32 MaxReadable;
 639           
 640                 [Deprecated { "No Value" }, Override ( "MinReadable" ), 
 641                  MappingStrings { "MIF.DMTF|Temperature Probe|002.10" }]
 642              sint32 MinReadable;
 643           
 644                 [Deprecated { "No Value" }, Override ( "Resolution" ),
 645                     Units ( "Hundredths of Degrees C" ), 
 646                  MappingStrings { "MIF.DMTF|Temperature Probe|002.17" }]
 647              uint32 Resolution;
 648           
 649                 [Deprecated { "No Value" }, Override ( "Tolerance" ), 
 650                  MappingStrings { "MIF.DMTF|Temperature Probe|002.18" }]
 651              sint32 Tolerance;
 652 tony  1.1 
 653                 [Deprecated { "No Value" }, Override ( "Accuracy" ), 
 654                  MappingStrings { "MIF.DMTF|Temperature Probe|002.19" }]
 655              sint32 Accuracy;
 656           
 657                 [Deprecated { "No Value" },
 658                     Override ( "LowerThresholdNonCritical" ), 
 659                  MappingStrings { "MIF.DMTF|Temperature Probe|002.11" }]
 660              sint32 LowerThresholdNonCritical;
 661           
 662                 [Deprecated { "No Value" },
 663                     Override ( "UpperThresholdNonCritical" ), 
 664                  MappingStrings { "MIF.DMTF|Temperature Probe|002.12" }]
 665              sint32 UpperThresholdNonCritical;
 666           
 667                 [Deprecated { "No Value" }, Override ( "LowerThresholdCritical" ), 
 668                  MappingStrings { "MIF.DMTF|Temperature Probe|002.13" }]
 669              sint32 LowerThresholdCritical;
 670           
 671                 [Deprecated { "No Value" }, Override ( "UpperThresholdCritical" ), 
 672                  MappingStrings { "MIF.DMTF|Temperature Probe|002.14" }]
 673 tony  1.1    sint32 UpperThresholdCritical;
 674           
 675                 [Deprecated { "No Value" }, Override ( "LowerThresholdFatal" ), 
 676                  MappingStrings { "MIF.DMTF|Temperature Probe|002.15" }]
 677              sint32 LowerThresholdFatal;
 678           
 679                 [Deprecated { "No Value" }, Override ( "UpperThresholdFatal" ), 
 680                  MappingStrings { "MIF.DMTF|Temperature Probe|002.16" }]
 681              sint32 UpperThresholdFatal;
 682           };
 683           
 684           // ===================================================================
 685           // CurrentSensor
 686           // ===================================================================
 687              [Deprecated { "CIM_NumericSensor" }, Version ( "2.8.0" ), 
 688               Description (
 689                  "The use of this class is being deprecated in lieu of the "
 690                  "additions to Sensor and NumericSensor. A CurrentSensor can be "
 691                  "defined by setting the SensorType property, inherited from "
 692                  "Sensor, to 4 (\"Current\").")]
 693           class CIM_CurrentSensor : CIM_NumericSensor {
 694 tony  1.1 
 695                 [Deprecated { "No Value" }, Override ( "SensorType" )]
 696              uint16 SensorType = 4;
 697           
 698                 [Deprecated { "No Value" }, Override ( "BaseUnits" )]
 699              uint16 BaseUnits = 6;
 700           
 701                 [Deprecated { "No Value" }, Override ( "UnitModifier" )]
 702              sint32 UnitModifier = -3;
 703           
 704                 [Deprecated { "No Value" }, Override ( "RateUnits" )]
 705              uint16 RateUnits = 0;
 706           
 707                 [Deprecated { "No Value" }, Override ( "CurrentReading" ), 
 708                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.5" }]
 709              sint32 CurrentReading;
 710           
 711                 [Deprecated { "No Value" }, Override ( "NominalReading" ), 
 712                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.6" }]
 713              sint32 NominalReading;
 714           
 715 tony  1.1       [Deprecated { "No Value" }, Override ( "NormalMax" ), 
 716                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.7" }]
 717              sint32 NormalMax;
 718           
 719                 [Deprecated { "No Value" }, Override ( "NormalMin" ), 
 720                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.8" }]
 721              sint32 NormalMin;
 722           
 723                 [Deprecated { "No Value" }, Override ( "MaxReadable" ), 
 724                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.9" }]
 725              sint32 MaxReadable;
 726           
 727                 [Deprecated { "No Value" }, Override ( "MinReadable" ), 
 728                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.10" }]
 729              sint32 MinReadable;
 730           
 731                 [Deprecated { "No Value" }, Override ( "Resolution" ),
 732                     Units ( "Tenths of MilliAmps" ), 
 733                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.17" }]
 734              uint32 Resolution;
 735           
 736 tony  1.1       [Deprecated { "No Value" }, Override ( "Tolerance" ), 
 737                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.18" }]
 738              sint32 Tolerance;
 739           
 740                 [Deprecated { "No Value" }, Override ( "Accuracy" ), 
 741                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.19" }]
 742              sint32 Accuracy;
 743           
 744                 [Deprecated { "No Value" },
 745                     Override ( "LowerThresholdNonCritical" ), 
 746                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.11" }]
 747              sint32 LowerThresholdNonCritical;
 748           
 749                 [Deprecated { "No Value" },
 750                     Override ( "UpperThresholdNonCritical" ), 
 751                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.12" }]
 752              sint32 UpperThresholdNonCritical;
 753           
 754                 [Deprecated { "No Value" }, Override ( "LowerThresholdCritical" ), 
 755                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.13" }]
 756              sint32 LowerThresholdCritical;
 757 tony  1.1 
 758                 [Deprecated { "No Value" }, Override ( "UpperThresholdCritical" ), 
 759                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.14" }]
 760              sint32 UpperThresholdCritical;
 761           
 762                 [Deprecated { "No Value" }, Override ( "LowerThresholdFatal" ), 
 763                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.15" }]
 764              sint32 LowerThresholdFatal;
 765           
 766                 [Deprecated { "No Value" }, Override ( "UpperThresholdFatal" ), 
 767                  MappingStrings { "MIF.DMTF|Electrical Current Probe|001.16" }]
 768              sint32 UpperThresholdFatal;
 769           };
 770           
 771           // ===================================================================
 772           // VoltageSensor
 773           // ===================================================================
 774              [Deprecated { "CIM_NumericSensor" }, Version ( "2.8.0" ), 
 775               Description (
 776                  "The use of this class is being deprecated in lieu of the "
 777                  "additions to Sensor and NumericSensor. A VoltageSensor can be "
 778 tony  1.1        "defined by setting the SensorType property, inherited from "
 779                  "Sensor, to 3 (\"Voltage\").")]
 780           class CIM_VoltageSensor : CIM_NumericSensor {
 781           
 782                 [Deprecated { "No value" }, Override ( "SensorType" )]
 783              uint16 SensorType = 3;
 784           
 785                 [Deprecated { "No value" }, Override ( "BaseUnits" )]
 786              uint16 BaseUnits = 5;
 787           
 788                 [Deprecated { "No value" }, Override ( "UnitModifier" )]
 789              sint32 UnitModifier = -3;
 790           
 791                 [Deprecated { "No value" }, Override ( "RateUnits" )]
 792              uint16 RateUnits = 0;
 793           
 794                 [Deprecated { "No value" }, Override ( "CurrentReading" ), 
 795                  MappingStrings { "MIF.DMTF|Voltage Probe|001.5" }]
 796              sint32 CurrentReading;
 797           
 798                 [Deprecated { "No value" }, Override ( "NominalReading" ), 
 799 tony  1.1        MappingStrings { "MIF.DMTF|Voltage Probe|001.6" }]
 800              sint32 NominalReading;
 801           
 802                 [Deprecated { "No value" }, Override ( "NormalMax" ), 
 803                  MappingStrings { "MIF.DMTF|Voltage Probe|001.7" }]
 804              sint32 NormalMax;
 805           
 806                 [Deprecated { "No value" }, Override ( "NormalMin" ), 
 807                  MappingStrings { "MIF.DMTF|Voltage Probe|001.8" }]
 808              sint32 NormalMin;
 809           
 810                 [Deprecated { "No value" }, Override ( "MaxReadable" ), 
 811                  MappingStrings { "MIF.DMTF|Voltage Probe|001.9" }]
 812              sint32 MaxReadable;
 813           
 814                 [Deprecated { "No value" }, Override ( "MinReadable" ), 
 815                  MappingStrings { "MIF.DMTF|Voltage Probe|001.10" }]
 816              sint32 MinReadable;
 817           
 818                 [Deprecated { "No value" }, Override ( "Resolution" ),
 819                     Units ( "Tenths of MilliVolts" ), 
 820 tony  1.1        MappingStrings { "MIF.DMTF|Voltage Probe|001.17" }]
 821              uint32 Resolution;
 822           
 823                 [Deprecated { "No value" }, Override ( "Tolerance" ), 
 824                  MappingStrings { "MIF.DMTF|Voltage Probe|001.18" }]
 825              sint32 Tolerance;
 826           
 827                 [Deprecated { "No value" }, Override ( "Accuracy" ), 
 828                  MappingStrings { "MIF.DMTF|Voltage Probe|001.19" }]
 829              sint32 Accuracy;
 830           
 831                 [Deprecated { "No value" },
 832                     Override ( "LowerThresholdNonCritical" ), 
 833                  MappingStrings { "MIF.DMTF|Voltage Probe|001.11" }]
 834              sint32 LowerThresholdNonCritical;
 835           
 836                 [Deprecated { "No value" },
 837                     Override ( "UpperThresholdNonCritical" ), 
 838                  MappingStrings { "MIF.DMTF|Voltage Probe|001.12" }]
 839              sint32 UpperThresholdNonCritical;
 840           
 841 tony  1.1       [Deprecated { "No value" }, Override ( "LowerThresholdCritical" ), 
 842                  MappingStrings { "MIF.DMTF|Voltage Probe|001.13" }]
 843              sint32 LowerThresholdCritical;
 844           
 845                 [Deprecated { "No value" }, Override ( "UpperThresholdCritical" ), 
 846                  MappingStrings { "MIF.DMTF|Voltage Probe|001.14" }]
 847              sint32 UpperThresholdCritical;
 848           
 849                 [Deprecated { "No value" }, Override ( "LowerThresholdFatal" ), 
 850                  MappingStrings { "MIF.DMTF|Voltage Probe|001.15" }]
 851              sint32 LowerThresholdFatal;
 852           
 853                 [Deprecated { "No value" }, Override ( "UpperThresholdFatal" ), 
 854                  MappingStrings { "MIF.DMTF|Voltage Probe|001.16" }]
 855              sint32 UpperThresholdFatal;
 856           };
 857           
 858           
 859           // ===================================================================
 860           // Tachometer
 861           // ===================================================================
 862 tony  1.1    [Deprecated { "CIM_NumericSensor" }, Version ( "2.8.0" ), 
 863               Description (
 864                  "The use of this class is deprecated in lieu of the additions "
 865                  "to Sensor and NumericSensor. A Tachometer can be defined by "
 866                  "setting the SensorType property. inherited from Sensor, to 5 "
 867                  "(\"Tachometer\").")]
 868           class CIM_Tachometer : CIM_NumericSensor {
 869           
 870                 [Deprecated { "No value" }, Override ( "SensorType" )]
 871              uint16 SensorType = 5;
 872           
 873                 [Deprecated { "No value" }, Override ( "BaseUnits" )]
 874              uint16 BaseUnits = 38;
 875           
 876                 [Deprecated { "No value" }, Override ( "UnitModifier" )]
 877              sint32 UnitModifier = 1;
 878           
 879                 [Deprecated { "No value" }, Override ( "RateUnits" )]
 880              uint16 RateUnits = 4;
 881           
 882                 [Deprecated { "No value" }, Override ( "Resolution" ),
 883 tony  1.1           Units ( "Tenths of Revolutions per Minute" )]
 884              uint32 Resolution;
 885           };
 886           
 887           // ===================================================================
 888           // AssociatedSupplyVoltageSensor
 889           // ===================================================================
 890              [Association, Deprecated { "CIM_AssociatedSensor" },
 891                  Version ( "2.8.0" ), Description (
 892                  "The use of this association is being deprecated in lieu of "
 893                  "using AssociatedSensor, since the use of the referenced class "
 894                  "VoltageSensor is deprecated. \n"
 895                  "A PowerSupply may have an associated VoltageSensor, monitoring "
 896                  "its input voltage. This is described by this association.")]
 897           class CIM_AssociatedSupplyVoltageSensor : CIM_AssociatedSensor {
 898           
 899                 [Deprecated { "CIM_AssociatedSensor.Antecedent" },
 900                     Override ( "Antecedent" ), Description (
 901                     "The VoltageSensor.")]
 902              CIM_VoltageSensor REF Antecedent;
 903           
 904 tony  1.1       [Deprecated { "CIM_AssociatedSensor.Dependent" },
 905                     Override ( "Dependent" ), Description (
 906                     "The PowerSupply associated with the VoltageSensor.")]
 907              CIM_PowerSupply REF Dependent;
 908           
 909                 [Deprecated { "No Value" }, Description (
 910                     "Indicates the PowerSupply's input voltage range measured by "
 911                     "the associated sensor. Range 1, 2 or both can be specified "
 912                     "using the values 2, 3 or 4, respectively."), 
 913                  ValueMap { "0", "1", "2", "3", "4" }, 
 914                  Values { "Unknown", "Other", "Range 1", "Range 2",
 915                     "Both Range 1 and 2" }]
 916              uint16 MonitoringRange;
 917           };
 918           
 919           // ===================================================================
 920           // AssociatedSupplyCurrentSensor
 921           // ===================================================================
 922              [Association, Deprecated { "CIM_AssociatedSensor" },
 923                  Version ( "2.8.0" ), Description (
 924                  "The use of this association is being deprecated in lieu of "
 925 tony  1.1        "using AssociatedSensor, since the use of the referenced class "
 926                  "CurrentSensor is deprecated. \n"
 927                  "A PowerSupply may have an associated CurrentSensor, monitoring "
 928                  "its input frequency. This is described by this association.")]
 929           class CIM_AssociatedSupplyCurrentSensor : CIM_AssociatedSensor {
 930           
 931                 [Deprecated { "CIM_AssociatedSensor.Antecedent" },
 932                     Override ( "Antecedent" ), Description (
 933                     "The CurrentSensor.")]
 934              CIM_CurrentSensor REF Antecedent;
 935           
 936                 [Deprecated { "CIM_AssociatedSensor.Dependent" },
 937                     Override ( "Dependent" ), Description (
 938                     "The PowerSupply associated with the CurrentSensor.")]
 939              CIM_PowerSupply REF Dependent;
 940           
 941                 [Deprecated { "No Value" }, Description (
 942                     "Indicates the PowerSupply's input frequency range measured "
 943                     "by the associated sensor. Range 1, 2 or both can be "
 944                     "specified using the values 2, 3 or 4, respectively."), 
 945                  ValueMap { "0", "1", "2", "3", "4" }, 
 946 tony  1.1        Values { "Unknown", "Other", "Range 1", "Range 2",
 947                     "Both Range 1 and 2" }]
 948              uint16 MonitoringRange;
 949           };
 950           
 951           // ==================================================================
 952           // PackageTempSensor
 953           // ==================================================================
 954              [Association, Deprecated { "CIM_PackageDependency" },
 955                  Version ( "2.7.0" ), Description (
 956                  "Often, a TemperatureSensor is installed in a Package such as a "
 957                  "Chassis or a Rack, not to measure any particular Device, but "
 958                  "the Package's environment in general. The use of this "
 959                  "association has been deprecated. Instead, use "
 960                  "PackageDependency to describe this relationship.")]
 961           class CIM_PackageTempSensor : CIM_PackageDependency {
 962           
 963                 [Deprecated { "CIM_PackageDependency.Antecedent" },
 964                     Override ( "Antecedent" ), Description (
 965                     "The TemperatureSensor for the Package.")]
 966              CIM_TemperatureSensor REF Antecedent;
 967 tony  1.1 
 968                 [Deprecated { "CIM_PackageDependency.Dependent" },
 969                     Override ( "Dependent" ), Description (
 970                     "The PhysicalPackage whose environment is monitored.")]
 971              CIM_PhysicalPackage REF Dependent;
 972           };
 973           
 974           
 975           // ====================================================================
 976           // AlarmDevice
 977           // ===================================================================
 978              [Version ( "2.8.0" ), Description (
 979                  "An AlarmDevice is a type of Device that emits audible or "
 980                  "visible indications related to a problem situation.")]
 981           class CIM_AlarmDevice : CIM_LogicalDevice {
 982           
 983                 [Description (
 984                     "Boolean indicating that the Alarm is audible.")]
 985              boolean AudibleAlarm;
 986           
 987                 [Description (
 988 tony  1.1           "Boolean indicating that the Alarm is visible.")]
 989              boolean VisibleAlarm;
 990           
 991                 [Description (
 992                     "Boolean indicating that the Alarm causes motion of the "
 993                     "Device.")]
 994              boolean MotionAlarm;
 995           
 996                 [Description (
 997                     "Urgency is an enumerated value that indicates the relative "
 998                     "frequency at which the Alarm flashes, vibrates and/or emits "
 999                     "audible tones."), 
1000                  ValueMap { "0", "1", "2", "3", "4", "5", "6" }, 
1001                  Values { "Unknown", "Other", "Not Supported", "Informational",
1002                     "Non-Critical", "Critical", "Unrecoverable" }]
1003              uint16 Urgency;
1004           
1005                 [Description (
1006                     "The current state of the alarm."), 
1007                  ValueMap { "0", "1", "2", "3" }, 
1008                  Values { "Unknown", "Off", "Steady", "Alternating" }]
1009 tony  1.1    uint16 AlarmState;
1010           
1011                 [Description (
1012                     "True indicates that the audio of an AlarmState indicator "
1013                     "has been disabled (i.e. muted). A disabled state here does "
1014                     "not imply that the AlarmState is off.")]
1015              boolean AudioIndicatorIsDisabled;
1016           
1017                 [Description (
1018                     "True indicates that the visual of an AlarmState indicator "
1019                     "has been disabled (i.e. dimmed). A disabled state here does "
1020                     "not imply that the AlarmState is off.")]
1021              boolean VisualIndicatorIsDisabled;
1022           
1023                 [Description (
1024                     "True indicates that the motion of an AlarmState indicator "
1025                     "has been disabled (i.e. stopped). A disabled state here "
1026                     "does not imply that the AlarmState is off.")]
1027              boolean MotionIndicatorIsDisabled;
1028           
1029                 [Description (
1030 tony  1.1           "SetAlarmState is a method for defining the current state of "
1031                     "the Alarm. Its input parameter, RequestedAlarmState, is "
1032                     "specified using the Values list of AlarmDevice's AlarmState "
1033                     "property. SetAlarmState returns 0 if the request is "
1034                     "successfully implemented, 1 if the specified RequestedAlarm "
1035                     "State is not supported, and some other value if any other "
1036                     "error occurred. In a subclass, the set of possible return "
1037                     "codes should be specified using a ValueMap qualifier on the "
1038                     "method. The strings to which the ValueMap contents are "
1039                     "'translated' should be specified as a Values array "
1040                     "qualifier.")]
1041              uint32 SetAlarmState ( 
1042                    [IN, Description (
1043                        "The desired state for the alarm."), 
1044                     ValueMap { "0", "1", "2", "3" }, 
1045                     Values { "Unknown", "Off", "Steady", "Alternating" }]
1046                 uint16 RequestedAlarmState); 
1047           
1048                 [Description (
1049                     "SetAlarmIndicator is a method for enabling or disabling the "
1050                     "indicator of the AlarmState function, without changing the "
1051 tony  1.1           "current AlarmState. It has 3 input parameters, Audio "
1052                     "Indicator, VisualIndicator and MotionIndicator. For all of "
1053                     "the input parameters, a value of 0 indicates no change to "
1054                     "the AlarmState indicator, 1 indicates Disable, and 2 "
1055                     "indicates Enable. The method returns 0 if the request is "
1056                     "successfully implemented, 1 if the specified request is not "
1057                     "supported, and some other value if any other error "
1058                     "occurred. In a subclass, the set of possible return codes "
1059                     "should be specified using a ValueMap qualifier on the "
1060                     "method. The strings to which the ValueMap contents are "
1061                     "'translated' should be specified as a Values array "
1062                     "qualifier.")]
1063              uint32 SetAlarmIndicator ( 
1064                    [IN, Description (
1065                        "The state for the audio indicator."), 
1066                     ValueMap { "0", "1", "2" }, 
1067                     Values { "No Change", "Disable", "Enable" }]
1068                 uint16 AudioIndicator, 
1069                    [IN, Description (
1070                        "The state for the visual indicator."), 
1071                     ValueMap { "0", "1", "2" }, 
1072 tony  1.1           Values { "No Change", "Disable", "Enable" }]
1073                 uint16 VisualIndicator, 
1074                    [IN, Description (
1075                        "The state for the motion indicator."), 
1076                     ValueMap { "0", "1", "2" }, 
1077                     Values { "No Change", "Disable", "Enable" }]
1078                 uint16 MotionIndicator); 
1079           
1080                 [Description (
1081                     "SetUrgency is a method for defining the desired urgency "
1082                     "level for the Alarm. Its input parameter, RequestedUrgency, "
1083                     "is specified using the Values list of AlarmDevice's Urgency "
1084                     "property. SetUrgency returns 0 if the request is "
1085                     "successfully implemented, 1 if the specified Urgency level "
1086                     "is not supported, and some other value if any other error "
1087                     "occurred. In a subclass, the set of possible return codes "
1088                     "should be specified using a ValueMap qualifier on the "
1089                     "method. The strings to which the ValueMap contents are "
1090                     "'translated' should be specified as a Values array "
1091                     "qualifier.")]
1092              uint32 SetUrgency ( 
1093 tony  1.1          [IN, Description (
1094                        "Desired urgency for the alarm."), 
1095                     ValueMap { "1", "3", "4", "5", "6" }, 
1096                     Values { "Other", "Informational", "Non-Critical",
1097                        "Critical", "Unrecoverable" }]
1098                 uint16 RequestedUrgency); 
1099           };
1100           
1101           
1102           // ===================================================================
1103           // AssociatedAlarm
1104           // ===================================================================
1105              [Association, Version ( "2.6.0" ), Description (
1106                  "LogicalDevices may have one or more AlarmDevices associated "
1107                  "with them, in order to indicate problem situations. This "
1108                  "relationship is indicated by the AssociatedAlarm dependency.")]
1109           class CIM_AssociatedAlarm : CIM_Dependency {
1110           
1111                 [Override ( "Antecedent" ), Description (
1112                     "The AlarmDevice.")]
1113              CIM_AlarmDevice REF Antecedent;
1114 tony  1.1 
1115                 [Override ( "Dependent" ), Description (
1116                     "The LogicalDevice that is alarmed.")]
1117              CIM_LogicalDevice REF Dependent;
1118           };
1119           
1120           
1121           // ==================================================================
1122           // PackageAlarm
1123           // ==================================================================
1124              [Association, Deprecated { "CIM_PackageDependency" },
1125                  Version ( "2.7.0" ), Description (
1126                  "Often, an AlarmDevice is installed as part of a Package, not "
1127                  "to indicate issues with any particular LogicalDevice or "
1128                  "PhysicalComponent, but with the Package's environment in "
1129                  "general, its security state or its overall health. The use of "
1130                  "this association has been deprecated. Instead, use "
1131                  "PackageDependency to describe this relationship.")]
1132           class CIM_PackageAlarm : CIM_PackageDependency {
1133           
1134                 [Deprecated { "CIM_PackageDependency.Antecedent" },
1135 tony  1.1           Override ( "Antecedent" ), Description (
1136                     "The AlarmDevice for the Package.")]
1137              CIM_AlarmDevice REF Antecedent;
1138           
1139                 [Deprecated { "CIM_PackageDependency.Dependent" },
1140                     Override ( "Dependent" ), Description (
1141                     "The PhysicalPackage whose health, security, environment, "
1142                     "etc. is alarmed.")]
1143              CIM_PhysicalPackage REF Dependent;
1144           };
1145           
1146           
1147           // ===================================================================
1148           // end of file
1149           // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2