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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2