summaryrefslogtreecommitdiffstats
path: root/control/zone.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'control/zone.hpp')
-rw-r--r--control/zone.hpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/control/zone.hpp b/control/zone.hpp
index 1fdeaf2..fa3ed82 100644
--- a/control/zone.hpp
+++ b/control/zone.hpp
@@ -78,6 +78,17 @@ class Zone
void setActiveAllow(const Group* group, bool isActiveAllow);
/**
+ * @brief Sets the floor change allowed state
+ *
+ * @param[in] group - A group that affects floor changes
+ * @param[in] isAllow - Allow state according to group
+ */
+ inline void setFloorChangeAllow(const Group* group, bool isAllow)
+ {
+ _floorChange[*(group)] = isAllow;
+ }
+
+ /**
* @brief Sets a given object's property value
*
* @param[in] object - Name of the object containing the property
@@ -231,7 +242,8 @@ class Zone
/**
* @brief Set the floor speed to the given speed and increase target
- * speed to the floor when target is below floor.
+ * speed to the floor when target is below floor where floor changes
+ * are allowed.
*
* @param[in] speed - Speed to set the floor to
*/
@@ -454,6 +466,11 @@ class Zone
std::map<const Group, bool> _active;
/**
+ * @brief Map of floor change allowed by groups
+ */
+ std::map<const Group, bool> _floorChange;
+
+ /**
* @brief Map of group service names
*/
std::map<const Group, std::vector<Service>> _services;
OpenPOWER on IntegriCloud