diff options
author | Matthew Barth <msbarth@us.ibm.com> | 2017-08-04 11:18:28 -0500 |
---|---|---|
committer | Matthew Barth <msbarth@us.ibm.com> | 2017-08-07 15:30:10 -0500 |
commit | 604329ef36d8ba2cd324f7132427d7e5724c074e (patch) | |
tree | 20b319dc2ff32e408ef0cb6bad272d2ea749c299 /control/zone.hpp | |
parent | eb639c575a7964b849117cc70b6102f17a2dc32a (diff) | |
download | phosphor-fan-presence-604329ef36d8ba2cd324f7132427d7e5724c074e.tar.gz phosphor-fan-presence-604329ef36d8ba2cd324f7132427d7e5724c074e.zip |
Add precondition that checks property states
The property state check precondition validates that each given property
matches the defined value. When all the precondition groups' property
states match, the given set speed event is initialized and activated
allowing the zone speeds to be active controlled.
Change-Id: Ic16a0e1fc584c6fa695e354fa80fb1993002ffc7
Signed-off-by: Matthew Barth <msbarth@us.ibm.com>
Diffstat (limited to 'control/zone.hpp')
-rw-r--r-- | control/zone.hpp | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/control/zone.hpp b/control/zone.hpp index 077bfcf..f618c10 100644 --- a/control/zone.hpp +++ b/control/zone.hpp @@ -119,6 +119,29 @@ class Zone }; /** + * @brief Get the object's property variant + * + * @param[in] object - Name of the object containing the property + * @param[in] interface - Interface name containing the property + * @param[in] property - Property name + * + * @return - The property variant + */ + inline auto getPropValueVariant(const std::string& object, + const std::string& interface, + const std::string& property) + { + return _properties.at(object).at(interface).at(property); + }; + + /** + * @brief Initialize a set speed event properties and actions + * + * @param[in] event - Set speed event + */ + void initEvent(const SetSpeedEvent& event); + + /** * @brief Get the default floor speed * * @return - The defined default floor speed @@ -329,13 +352,6 @@ class Zone std::vector<sdbusplus::server::match::match> _matches; /** - * @brief Initialize a set speed event properties and actions - * - * @param[in] event - Set speed event - */ - void initEvent(const SetSpeedEvent& event); - - /** * @brief Refresh the given property's cached value * * @param[in] bus - the bus to use |