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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2