110 lines
5.4 KiB
Plaintext

// Copyright (c) 2012 DMTF. All rights reserved.
[Version ( "2.32.0" ),
UMLPackagePath ( "CIM::Device::Sensors" ),
Description (
"A Sensor is an entity capable of measuring or reporting the "
"characteristics of some physical property - for example, the "
"temperature or voltage characteristics of a Computer System." )]
class CIM_Sensor : CIM_LogicalDevice {
[Description (
"The Type of the Sensor, e.g. Voltage or Temperature "
"Sensor. If the type is set to \"Other\", then the "
"OtherSensorType Description can be used to further "
"identify the type, or if the Sensor has numeric "
"readings, then the type of the Sensor can be implicitly "
"determined by the Units. A description of the different "
"Sensor types is as follows: A Temperature Sensor "
"measures the environmental temperature. Voltage and "
"Current Sensors measure electrical voltage and current "
"readings. A Tachometer measures speed/revolutions of a "
"Device. For example, a Fan Device can have an associated "
"Tachometer which measures its speed. A Counter is a "
"general purpose Sensor that measures some numerical "
"property of a Device. A Counter value can be cleared, "
"but it never decreases. A Switch Sensor has states like "
"Open/Close, On/Off, or Up/Down. A Lock has states of "
"Locked/Unlocked. Humidity, Smoke Detection and Air Flow "
"Sensors measure the equivalent environmental "
"characteristics. A Presence Sensor detects the presence "
"of a PhysicalElement. A Power Consumption Sensor "
"measures the instantaneous power consumed by a managed "
"element. A Power Production Sensor measures the "
"instantaneous power produced by a managed element such "
"as a power supply or a voltage regulator. A pressure "
"sensor is used to report pressure. Intrusion sensor "
"reports an intrusion of an enclosure regardless whether "
"it was authorized or not." ),
ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
"10", "11", "12", "13", "14", "15", "16", "..",
"32768..65535" },
Values { "Unknown", "Other", "Temperature", "Voltage",
"Current", "Tachometer", "Counter", "Switch", "Lock",
"Humidity", "Smoke Detection", "Presence", "Air Flow",
"Power Consumption", "Power Production", "Pressure",
"Intrusion", "DMTF Reserved", "Vendor Reserved" },
ModelCorrespondence { "CIM_Sensor.OtherSensorTypeDescription" }]
uint16 SensorType;
[Description (
"A string describing the Sensor type - used when the "
"SensorType property is set to \"Other\"." ),
MaxLen ( 128 ),
ModelCorrespondence { "CIM_Sensor.SensorType" }]
string OtherSensorTypeDescription;
[Description (
"PossibleStates enumerates the string outputs of the "
"Sensor. For example, a \"Switch\" Sensor may output the "
"states \"On\", or \"Off\". Another implementation of the "
"Switch may output the states \"Open\", and \"Close\". "
"Another example is a NumericSensor supporting "
"thresholds. This Sensor can report the states like "
"\"Normal\", \"Upper Fatal\", \"Lower Non-Critical\", "
"etc. A NumericSensor that does not publish readings and "
"thresholds, but stores this data internally, can still "
"report its states." ),
MaxLen ( 128 )]
string PossibleStates[];
[Description (
"The current state indicated by the Sensor. This is "
"always one of the \"PossibleStates\"." ),
MaxLen ( 128 )]
string CurrentState;
[Description (
"The polling interval that the Sensor hardware or the "
"instrumentation uses to determine the current state of "
"the Sensor." ),
Units ( "NanoSeconds" ),
PUnit ( "second * 10^-9" )]
uint64 PollingInterval;
[Description (
"SensorContext indicates the purpose and context of the "
"sensor. For example, the property may indicate what "
"entity is being monitored or where the sensor is "
"installed. Contextual and location information should be "
"provided using associations to existing model elements. "
"This property may be used if additional differentiation "
"is necessary beyond that which is possible to convey "
"using associations or values of SensorType. The value "
"shall be formatted using the following algorithm: \n"
"<OrgID>:<LocalID> \n"
"Where <OrgID> and <LocalID> are separated by a colon "
"(:), and where <OrgID> shall include a copyrighted, "
"trademarked, or otherwise unique name that is owned by "
"the business entity that is creating or defining the "
"SensorContext or that is a registered ID assigned to the "
"business entity by a recognized global authority. In "
"addition, to ensure uniqueness, <OrgID> shall not "
"contain a colon (:). \n"
"<LocalID> is chosen by the business entity and should "
"not be reused to identify different underlying "
"(real-world) elements." )]
string SensorContext;
};