|
Bluenet
5.7.0
Bluenet, firmware for nRF52 smart home devices
|
Object that defines when a state transition should occur. More...
#include <cs_SwitchBehaviour.h>


Public Types | |
| typedef std::array< uint8_t, WireFormat::size< Behaviour >()+WireFormat::size< PresenceCondition >()> | SerializedDataType |
Public Types inherited from Behaviour | |
| enum class | Type : uint8_t { Switch = 0 , Twilight = 1 , Extended = 2 , Undefined = 0xff } |
| typedef std::array< uint8_t, 1+13 > | SerializedDataType |
Public Member Functions | |
| virtual | ~SwitchBehaviour ()=default |
| SwitchBehaviour (uint8_t intensity, uint8_t profileid, DayOfWeekBitMask activedaysofweek, TimeOfDay from, TimeOfDay until, PresenceCondition presencecondition) | |
| SwitchBehaviour (SerializedDataType arr) | |
| SerializedDataType | serialize () |
| virtual uint8_t * | serialize (uint8_t *outbuff, size_t max_size) override |
| virtual size_t | serializedSize () const override |
| virtual Type | getType () const override |
| virtual void | print () |
| bool | gracePeriodForPresenceIsActive () |
| virtual bool | requiresPresence () override |
| virtual bool | requiresAbsence () override |
| virtual PresencePredicate | currentPresencePredicate () |
| virtual bool | isValid (Time currenttime, PresenceStateDescription currentpresence) |
| Does the behaviour apply to the current situation? If from() == until() the behaviour isValid all day. More... | |
| bool | isValid (PresenceStateDescription currentpresence) |
| bool | isValid (Time currenttime) |
| Does the behaviour apply to the current situation? If from() == until() the behaviour isValid all day. More... | |
Public Member Functions inherited from Behaviour | |
| virtual | ~Behaviour ()=default |
| Behaviour (Type typ, uint8_t intensity, uint8_t profileid, DayOfWeekBitMask activedaysofweek, TimeOfDay from, TimeOfDay until) | |
| Behaviour (SerializedDataType arr) | |
| SerializedDataType | serialize () |
| virtual uint8_t * | serialize (uint8_t *outbuff, size_t max_size) |
| virtual size_t | serializedSize () const |
| std::vector< uint8_t > | serialized () |
| virtual void | print () |
| virtual Type | getType () const |
| bool | isValid (Time currenttime) |
| Does the behaviour apply to the current situation? If from() == until() the behaviour isValid all day. More... | |
| virtual bool | requiresPresence () |
| virtual bool | requiresAbsence () |
| uint8_t | value () const |
| Returns the intended state when this behaviour is valid. More... | |
| TimeOfDay | from () const |
| Returns from (incl.) which time on this behaviour applies. More... | |
| TimeOfDay | until () const |
| Returns until (excl.) which time on this behaviour applies. More... | |
Protected Attributes | |
| PresenceCondition | presenceCondition |
Protected Attributes inherited from Behaviour | |
| Type | typ |
| uint8_t | activeIntensity = 0 |
| uint8_t | profileId = 0 |
| DayOfWeekBitMask | activeDays |
| TimeOfDay | behaviourAppliesFrom = TimeOfDay::Midnight() |
| TimeOfDay | behaviourAppliesUntil = TimeOfDay::Midnight() |
Private Member Functions | |
| bool | _isValid (PresenceStateDescription currentpresence) |
Private Attributes | |
| std::optional< uint32_t > | prevInRoomTimeStamp = {} |
Friends | |
| class | TestAccess< SwitchBehaviour > |
Object that defines when a state transition should occur.
It abstracts predicates such as: "fade to 100% in 10 minutes, starting 30 minutes before sunrise, if anyone is in this room"
| typedef std::array<uint8_t, WireFormat::size<Behaviour>() + WireFormat::size<PresenceCondition>()> SwitchBehaviour::SerializedDataType |
|
virtualdefault |
| SwitchBehaviour::SwitchBehaviour | ( | uint8_t | intensity, |
| uint8_t | profileid, | ||
| DayOfWeekBitMask | activedaysofweek, | ||
| TimeOfDay | from, | ||
| TimeOfDay | until, | ||
| PresenceCondition | presencecondition | ||
| ) |
|
private |
|
virtual |
Reimplemented in ExtendedSwitchBehaviour.
|
inlineoverridevirtual |
Reimplemented from Behaviour.
Reimplemented in ExtendedSwitchBehaviour.
| bool SwitchBehaviour::gracePeriodForPresenceIsActive | ( | ) |
| bool SwitchBehaviour::isValid | ( | PresenceStateDescription | currentpresence | ) |
| bool Behaviour::isValid | ( | Time | currenttime | ) |
|
virtual |
Does the behaviour apply to the current situation? If from() == until() the behaviour isValid all day.
Reimplemented in ExtendedSwitchBehaviour, and ExtendedSwitchBehaviour.
|
virtual |
Reimplemented from Behaviour.
Reimplemented in ExtendedSwitchBehaviour.
|
overridevirtual |
Reimplemented from Behaviour.
Reimplemented in ExtendedSwitchBehaviour.
|
overridevirtual |
Reimplemented from Behaviour.
Reimplemented in ExtendedSwitchBehaviour.
| SerializedDataType SwitchBehaviour::serialize | ( | ) |
|
overridevirtual |
Reimplemented from Behaviour.
Reimplemented in ExtendedSwitchBehaviour.
|
overridevirtual |
Reimplemented from Behaviour.
Reimplemented in ExtendedSwitchBehaviour.
|
friend |
|
protected |
|
private |