Bluenet
5.7.0
Bluenet, firmware for nRF52 smart home devices
|
Class to derrive behaviours from, centralizing common variables such as from and until times. More...
#include <cs_Behaviour.h>
Public Types | |
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 | ~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 | |
Type | typ |
uint8_t | activeIntensity = 0 |
uint8_t | profileId = 0 |
DayOfWeekBitMask | activeDays |
TimeOfDay | behaviourAppliesFrom = TimeOfDay::Midnight() |
TimeOfDay | behaviourAppliesUntil = TimeOfDay::Midnight() |
Class to derrive behaviours from, centralizing common variables such as from and until times.
typedef std::array<uint8_t, 1 + 13> Behaviour::SerializedDataType |
|
strong |
|
virtualdefault |
Behaviour::Behaviour | ( | Type | typ, |
uint8_t | intensity, | ||
uint8_t | profileid, | ||
DayOfWeekBitMask | activedaysofweek, | ||
TimeOfDay | from, | ||
TimeOfDay | until | ||
) |
TimeOfDay Behaviour::from | ( | ) | const |
Returns from (incl.) which time on this behaviour applies.
|
inlinevirtual |
Reimplemented in ExtendedSwitchBehaviour, SwitchBehaviour, and TwilightBehaviour.
bool Behaviour::isValid | ( | Time | currenttime | ) |
|
virtual |
Reimplemented in ExtendedSwitchBehaviour, SwitchBehaviour, and TwilightBehaviour.
|
inlinevirtual |
Reimplemented in ExtendedSwitchBehaviour, and SwitchBehaviour.
|
inlinevirtual |
Reimplemented in ExtendedSwitchBehaviour, and SwitchBehaviour.
SerializedDataType Behaviour::serialize | ( | ) |
|
virtual |
Reimplemented in ExtendedSwitchBehaviour, SwitchBehaviour, and TwilightBehaviour.
std::vector< uint8_t > Behaviour::serialized | ( | ) |
|
virtual |
Reimplemented in ExtendedSwitchBehaviour, SwitchBehaviour, and TwilightBehaviour.
TimeOfDay Behaviour::until | ( | ) | const |
Returns until (excl.) which time on this behaviour applies.
uint8_t Behaviour::value | ( | ) | const |
Returns the intended state when this behaviour is valid.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |