From b58b072d2d42cc1a9dab3e6b27f2f3ae70fe7610 Mon Sep 17 00:00:00 2001 From: jacqueline Date: Wed, 21 Jun 2023 15:33:51 +1000 Subject: Add current playback timestamps --- src/audio/include/audio_events.hpp | 5 +++++ src/audio/include/audio_fsm.hpp | 4 ++++ 2 files changed, 9 insertions(+) (limited to 'src/audio/include') diff --git a/src/audio/include/audio_events.hpp b/src/audio/include/audio_events.hpp index 60a0740c..7359e8ac 100644 --- a/src/audio/include/audio_events.hpp +++ b/src/audio/include/audio_events.hpp @@ -6,6 +6,7 @@ #pragma once +#include #include #include "tinyfsm.hpp" @@ -23,6 +24,10 @@ struct PlayTrack : tinyfsm::Event { std::optional data; }; +struct PlaybackUpdate : tinyfsm::Event { + uint32_t seconds_elapsed; +}; + struct InputFileOpened : tinyfsm::Event {}; struct InputFileFinished : tinyfsm::Event {}; struct AudioPipelineIdle : tinyfsm::Event {}; diff --git a/src/audio/include/audio_fsm.hpp b/src/audio/include/audio_fsm.hpp index bd902706..1f3b1dbd 100644 --- a/src/audio/include/audio_fsm.hpp +++ b/src/audio/include/audio_fsm.hpp @@ -44,6 +44,8 @@ class AudioState : public tinyfsm::Fsm { virtual void react(const PlayTrack&) {} virtual void react(const PlayFile&) {} + virtual void react(const PlaybackUpdate&) {} + virtual void react(const InputFileOpened&) {} virtual void react(const InputFileFinished&) {} virtual void react(const AudioPipelineIdle&) {} @@ -87,6 +89,8 @@ class Playback : public AudioState { void react(const PlayTrack&) override; void react(const PlayFile&) override; + void react(const PlaybackUpdate&) override; + void react(const InputFileOpened&) override; void react(const InputFileFinished&) override; void react(const AudioPipelineIdle&) override; -- cgit v1.2.3