Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
TimeOfDay Class Reference

Author: Crownstone Team Copyright: Crownstone (https://crownstone.rocks) Date: Sep 24, 2019 License: LGPLv3+, Apache License 2.0, and/or MIT (triple-licensed) More...

#include <cs_TimeOfDay.h>

Public Types

enum class  BaseTime : uint8_t { Midnight = 0 , Sunrise = 1 , Sunset = 2 }
 
typedef std::array< uint8_t, 5 > SerializedDataType
 

Public Member Functions

 TimeOfDay (BaseTime basetime, int32_t secondsSinceBase)
 
 TimeOfDay (SerializedDataType rawData)
 
 TimeOfDay (uint32_t h, uint32_t m, uint32_t s)
 
 TimeOfDay (uint32_t secondsSinceMidnight)
 
SerializedDataType serialize () const
 
TimeOfDay convert (BaseTime newBase)
 
uint8_t h ()
 
uint8_t m ()
 
uint8_t s ()
 
 operator uint32_t ()
 Implicit cast operators, returns seconds since midnight (enables built in relational operators). More...
 

Static Public Member Functions

static TimeOfDay Midnight ()
 
static TimeOfDay Sunrise ()
 
static TimeOfDay Sunset ()
 

Private Member Functions

void wrap ()
 
int32_t baseTimeSinceMidnight (BaseTime b)
 

Private Attributes

BaseTime base
 
int32_t secSinceBase
 

Detailed Description

Author: Crownstone Team Copyright: Crownstone (https://crownstone.rocks) Date: Sep 24, 2019 License: LGPLv3+, Apache License 2.0, and/or MIT (triple-licensed)

Objects of this type represent a time of day. They are stored as time offset relative to one of several key events like midnight and sunrise.

Member Typedef Documentation

◆ SerializedDataType

typedef std::array<uint8_t, 5> TimeOfDay::SerializedDataType

Member Enumeration Documentation

◆ BaseTime

enum class TimeOfDay::BaseTime : uint8_t
strong
Enumerator
Midnight 
Sunrise 
Sunset 

Constructor & Destructor Documentation

◆ TimeOfDay() [1/4]

TimeOfDay::TimeOfDay ( BaseTime  basetime,
int32_t  secondsSinceBase 
)

◆ TimeOfDay() [2/4]

◆ TimeOfDay() [3/4]

TimeOfDay::TimeOfDay ( uint32_t  h,
uint32_t  m,
uint32_t  s 
)

◆ TimeOfDay() [4/4]

TimeOfDay::TimeOfDay ( uint32_t  secondsSinceMidnight)

Member Function Documentation

◆ baseTimeSinceMidnight()

int32_t TimeOfDay::baseTimeSinceMidnight ( BaseTime  b)
private

◆ convert()

TimeOfDay TimeOfDay::convert ( BaseTime  newBase)

◆ h()

uint8_t TimeOfDay::h ( )

◆ m()

uint8_t TimeOfDay::m ( )

◆ Midnight()

static TimeOfDay TimeOfDay::Midnight ( )
static

◆ operator uint32_t()

TimeOfDay::operator uint32_t ( )

Implicit cast operators, returns seconds since midnight (enables built in relational operators).

◆ s()

uint8_t TimeOfDay::s ( )

◆ serialize()

SerializedDataType TimeOfDay::serialize ( ) const

◆ Sunrise()

static TimeOfDay TimeOfDay::Sunrise ( )
static

◆ Sunset()

static TimeOfDay TimeOfDay::Sunset ( )
static

◆ wrap()

void TimeOfDay::wrap ( )
private

Member Data Documentation

◆ base

BaseTime TimeOfDay::base
private

◆ secSinceBase

int32_t TimeOfDay::secSinceBase
private

The documentation for this class was generated from the following file: