summaryrefslogtreecommitdiffstats
path: root/mof/Cura_Fan.mof
diff options
context:
space:
mode:
Diffstat (limited to 'mof/Cura_Fan.mof')
-rw-r--r--mof/Cura_Fan.mof112
1 files changed, 112 insertions, 0 deletions
diff --git a/mof/Cura_Fan.mof b/mof/Cura_Fan.mof
new file mode 100644
index 0000000..b632889
--- /dev/null
+++ b/mof/Cura_Fan.mof
@@ -0,0 +1,112 @@
+//
+// Cura_Fan.mof
+//
+
+#pragma locale ("en_US")
+//#pragma namespace ("root/cimv2")
+
+// ===================================================================
+// Cura_Fan
+// ===================================================================
+
+[ Provider("cmpi:cmpiCura_FanProvider") ]
+class Cura_Fan : CIM_Fan {
+
+ [ Key, Override("DeviceID"),
+ Description("Uniquely identifies fan. It is a composition of
+ SysPath and Name glued with slash ('/').") ]
+ string DeviceID;
+
+ [ Override("Name"),
+ Description("Name of fan provided by system.") ]
+ string Name;
+
+ [ Description("Array of fan features, that are exposed through system
+ interface. In other words: those that are readible/writable."),
+ ValueMap { "1", "2", "3", "4", "5", "6", "7", "8" },
+ Values { "MinSpeed", "MaxSpeed", "Divisor", "Pulses", "Beep",
+ "Alarm", "MinAlarm", "MaxAlarm" }
+ ]
+ uint16 AccessibleFeatures[];
+
+ [ Description("Minimum speed value."),
+ Write,
+ Units("Revolutions per Minute") ]
+ uint64 MinSpeed;
+
+ [ Description("Maximum speed value."),
+ Write,
+ Units("Revolutions per Minute") ]
+ uint64 MaxSpeed;
+
+ [ Description("Fan divisisor. It affects Minimum and Maximum speed value
+ and accuracy of readings.
+ The drivers account for the 'fan divisor' in their calculation
+ of RPM. So changing the fan divisor will NOT change the
+ nominal RPM reading, it will only affect the minimum and maximum
+ readings and the accuracy of the readings.
+ The actual formula is RPM = (60 * 22500) / (count * divisor)"),
+ Write ]
+ uint32 Divisor;
+
+ [ Description("Number of tachometer pulses per fan revolution.
+ Integer value, typically between 1 and 4.
+ This value is a characteristic of the fan connected to the
+ device's input, so it has to be set in accordance with the fan
+ model."),
+ Write ]
+ uint32 Pulses;
+
+ [ Description("This indicates, whether a PC's speaker should beep
+ when an alarm occurs."),
+ Write ]
+ boolean Beep;
+
+ [ Description("ALARM warning indicating, that current speed is out of
+ range. This information is supplied by fan's chip driver.") ]
+ boolean Alarm;
+
+ [ Description("ALARM warning indicating, that current speed is below
+ the critical level. This information is supplied by fan's chip driver.")
+ ]
+ boolean MinAlarm;
+
+ [ Description("ALARM warning indicating, that current speed is above
+ the critical level. This information is supplied by fan's chip driver.")
+ ]
+ boolean MaxAlarm;
+
+};
+
+// ===================================================================
+// Cura_FanSensor
+// ===================================================================
+[ Provider("cmpi:cmpiCura_FanSensorProvider") ]
+class Cura_FanSensor : CIM_NumericSensor {
+
+ [ Key, Override("DeviceID"),
+ Description("Uniquely identifies fan. It is a composition of
+ SysPath and Name glued with slash ('/').") ]
+ string DeviceID;
+
+ [ Override("Name"),
+ Description("Name of fan provided by system.") ]
+ string Name;
+
+};
+
+
+// ===================================================================
+// Associations
+// ===================================================================
+[ Association,
+ Provider("cmpi:cmpiCura_FanAssociatedSensorProvider") ]
+class Cura_FanAssociatedSensor : CIM_AssociatedSensor {
+
+ [ Override("Antecedent") ]
+ Cura_FanSensor REF Antecedent;
+
+ [ Override("Dependent") ]
+ Cura_Fan REF Dependent;
+
+};