16 #ifndef ALEXA_CLIENT_SDK_AVSCOMMON_SDKINTERFACES_INCLUDE_AVSCOMMON_SDKINTERFACES_TIMING_TIMERDELEGATEINTERFACE_H_ 17 #define ALEXA_CLIENT_SDK_AVSCOMMON_SDKINTERFACES_INCLUDE_AVSCOMMON_SDKINTERFACES_TIMING_TIMERDELEGATEINTERFACE_H_ 24 namespace sdkInterfaces {
79 std::chrono::nanoseconds delay,
80 std::chrono::nanoseconds period,
83 std::function<
void()> task) = 0;
93 virtual void stop() = 0;
121 #endif // ALEXA_CLIENT_SDK_AVSCOMMON_SDKINTERFACES_INCLUDE_AVSCOMMON_SDKINTERFACES_TIMING_TIMERDELEGATEINTERFACE_H_ Definition: TimerDelegateInterface.h:31
static const size_t FOREVER
Definition: TimerDelegateInterface.h:40
virtual bool isActive() const =0
static size_t getForever()
Static member function to get FOREVER.
Definition: TimerDelegateInterface.h:43
virtual bool activate()=0
virtual ~TimerDelegateInterface()=default
Destructor.
Whether or not curl logs should be emitted.
Definition: AVSConnectionManager.h:36
PeriodType
Specifies different ways to apply the period of a recurring task.
Definition: TimerDelegateInterface.h:48
virtual void start(std::chrono::nanoseconds delay, std::chrono::nanoseconds period, PeriodType periodType, size_t maxCount, std::function< void()> task)=0