#include <bn_value_template_actions.h>
template<typename Value, typename Property, class PropertyManager>
cyclic_by_value_template_action class
Modifies the property of a value by delta from a minimum to a maximum. When the property is over the given maximum, it goes back to the given minimum and vice versa.
Template parameters | |
---|---|
Value | Value to modify. |
Property | Property of the value to modify. |
PropertyManager | Reads and writes the property of the value to modify. |
Constructors, destructors, conversion operators
- cyclic_by_value_template_action(const Value& value, const Property& delta_property, const Property& min_property, const Property& after_max_property) protected
- Constructor.
- cyclic_by_value_template_action(Value&& value, const Property& delta_property, const Property& min_property, const Property& after_max_property) protected
- Constructor.
Public functions
Protected functions
- auto value() const -> const Value&
- Returns the value to modify.
- auto delta_property() const -> const Property&
- Returns how much to add to the property when the action is updated.
- void set_min_property(const Property& min_property)
- Sets the minimum property.
- void set_after_max_property(const Property& after_max_property)
- Sets the immediate amount after the maximum property.
Function documentation
template<typename Value, typename Property, class PropertyManager>
bn:: cyclic_by_value_template_action<Value, Property, PropertyManager>:: cyclic_by_value_template_action(const Value& value,
const Property& delta_property,
const Property& min_property,
const Property& after_max_property) protected
Constructor.
Parameters | |
---|---|
value | Value to copy. |
delta_property | How much to add to the property when the action is updated. |
min_property | Minimum property. |
after_max_property | Immediate amount after the maximum property. |
template<typename Value, typename Property, class PropertyManager>
bn:: cyclic_by_value_template_action<Value, Property, PropertyManager>:: cyclic_by_value_template_action(Value&& value,
const Property& delta_property,
const Property& min_property,
const Property& after_max_property) protected
Constructor.
Parameters | |
---|---|
value | Value to move. |
delta_property | How much to add to the property when the action is updated. |
min_property | Minimum property. |
after_max_property | Immediate amount after the maximum property. |
template<typename Value, typename Property, class PropertyManager>
void bn:: cyclic_by_value_template_action<Value, Property, PropertyManager>:: update()
Adds delta_property to the property.
When the property reaches the maximum, it goes back to the minimum and vice versa.