semf
timebase.h
Go to the documentation of this file.
1
10#ifndef SEMF_APP_SYSTEM_TIMEBASE_H_
11#define SEMF_APP_SYSTEM_TIMEBASE_H_
12
14
15namespace semf
16{
17namespace app
18{
36{
37public:
38 virtual ~TimeBase() = default;
39
44 virtual void add(TickReceiver& tickReceiver) = 0;
49 virtual void remove(TickReceiver& tickReceiver) = 0;
55 virtual void enable(bool enable = true) = 0;
61 virtual void disable(bool disable = true) = 0;
68 virtual bool isEnabled() const = 0;
69};
70} /* namespace app */
71} /* namespace semf */
72#endif /* SEMF_APP_SYSTEM_TIMEBASE_H_ */
Interface for all classes receiving ticks like DigitalInPolling or SoftwareTimer.
Definition: tickreceiver.h:29
A TimeBase is the bridge between e.g. a hardware timer (interrupt service routine) and TickReceiver o...
Definition: timebase.h:36
virtual ~TimeBase()=default
virtual void remove(TickReceiver &tickReceiver)=0
Removes e.g. a timer from this timebase.
virtual void add(TickReceiver &tickReceiver)=0
Adds e.g. a timer to this timebase.
virtual void enable(bool enable=true)=0
Enables the TimeBase.
virtual void disable(bool disable=true)=0
Disables the TimeBase.
virtual bool isEnabled() const =0
Returns if the TimeBase is enabled.