summaryrefslogtreecommitdiff
path: root/src/drivers/include
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2022-11-15 14:40:17 +1100
committerjacqueline <me@jacqueline.id.au>2022-11-15 14:40:17 +1100
commitaef2eb7566e7f8f6caf2481942ce67a31f007563 (patch)
tree12a039f2a9e60e35c523f0c2d328de4514438df3 /src/drivers/include
parent530fd15e66a2c89c0dcd6edd1b2a318958c349a4 (diff)
downloadtangara-fw-aef2eb7566e7f8f6caf2481942ce67a31f007563.tar.gz
fix build
Diffstat (limited to 'src/drivers/include')
-rw-r--r--src/drivers/include/a2dp_audio_output.hpp8
-rw-r--r--src/drivers/include/audio_output.hpp25
-rw-r--r--src/drivers/include/audio_playback.hpp12
-rw-r--r--src/drivers/include/i2s_audio_output.hpp26
4 files changed, 35 insertions, 36 deletions
diff --git a/src/drivers/include/a2dp_audio_output.hpp b/src/drivers/include/a2dp_audio_output.hpp
index 43b55956..32398880 100644
--- a/src/drivers/include/a2dp_audio_output.hpp
+++ b/src/drivers/include/a2dp_audio_output.hpp
@@ -1,15 +1,15 @@
#pragma once
+#include <cstdint>
#include "audio_common.h"
#include "audio_element.h"
#include "audio_output.hpp"
-#include <cstdint>
namespace drivers {
class A2DPAudioOutput : IAudioOutput {
- public:
- virtual auto SetVolume(uint8_t volume) -> void;
+ public:
+ virtual auto SetVolume(uint8_t volume) -> void;
};
-} // namespace drivers
+} // namespace drivers
diff --git a/src/drivers/include/audio_output.hpp b/src/drivers/include/audio_output.hpp
index 63cba465..739dddfe 100644
--- a/src/drivers/include/audio_output.hpp
+++ b/src/drivers/include/audio_output.hpp
@@ -1,27 +1,24 @@
#pragma once
+#include <cstdint>
+#include <memory>
#include "audio_common.h"
#include "audio_element.h"
-#include <cstdint>
namespace drivers {
class IAudioOutput {
- public:
- IAudioOutput(audio_element_handle_t element) : element_(element) {}
- virtual ~IAudioOutput() {
- audio_element_deinit(element_);
- }
+ public:
+ IAudioOutput(audio_element_handle_t element) : element_(element) {}
+ virtual ~IAudioOutput() { audio_element_deinit(element_); }
- auto GetAudioElement() -> audio_element_handle_t {
- return element_;
- }
+ auto GetAudioElement() -> audio_element_handle_t { return element_; }
- virtual auto SetVolume(uint8_t volume) -> void = 0;
- virtual auto Configure(audio_element_info_t info) -> void = 0;
+ virtual auto SetVolume(uint8_t volume) -> void = 0;
+ virtual auto Configure(audio_element_info_t& info) -> void = 0;
- protected:
- audio_element_handle_t element_;
+ protected:
+ audio_element_handle_t element_;
};
-} // namespace drivers
+} // namespace drivers
diff --git a/src/drivers/include/audio_playback.hpp b/src/drivers/include/audio_playback.hpp
index dd0f7f7a..d26fcda2 100644
--- a/src/drivers/include/audio_playback.hpp
+++ b/src/drivers/include/audio_playback.hpp
@@ -32,10 +32,10 @@ class AudioPlayback {
static auto create(std::unique_ptr<IAudioOutput> output)
-> cpp::result<std::unique_ptr<AudioPlayback>, Error>;
- AudioPlayback(std::unqiue_ptr<IAudioOutput> output,
- audio_pipeline_handle_t pipeline,
- audio_element_handle_t source_element,
- audio_event_iface_handle_t event_interface);
+ AudioPlayback(std::unique_ptr<IAudioOutput>& output,
+ audio_pipeline_handle_t pipeline,
+ audio_element_handle_t source_element,
+ audio_event_iface_handle_t event_interface);
~AudioPlayback();
/*
@@ -77,10 +77,10 @@ class AudioPlayback {
private:
PlaybackState current_state_;
- enum Decoder {NONE, MP3, AMR, OPUS, OGG, FLAC, WAV, AAC};
+ enum Decoder { NONE, MP3, AMR, OPUS, OGG, FLAC, WAV, AAC };
auto GetDecoderForFilename(std::string filename) -> Decoder;
auto CreateDecoder(Decoder decoder) -> audio_element_handle_t;
- void ReconfigurePipeline();
+ auto ReconfigurePipeline(Decoder decoder) -> void;
std::unique_ptr<IAudioOutput> output_;
std::mutex playback_lock_;
diff --git a/src/drivers/include/i2s_audio_output.hpp b/src/drivers/include/i2s_audio_output.hpp
index 531bddbc..1ec97307 100644
--- a/src/drivers/include/i2s_audio_output.hpp
+++ b/src/drivers/include/i2s_audio_output.hpp
@@ -1,30 +1,32 @@
#pragma once
-#include "audio_common.h"
-#include "audio_element.h"
#include "audio_output.hpp"
+#include "dac.hpp"
#include "gpio-expander.hpp"
+#include "result.hpp"
+
#include <cstdint>
#include <memory>
-#include "result.hpp"
-#include "dac.hpp"
+
+#include "audio_element.h"
namespace drivers {
class I2SAudioOutput : public IAudioOutput {
- public:
+ public:
enum Error { DAC_CONFIG, I2S_CONFIG, STREAM_INIT };
- static auto create(GpioExpander* expander)
- -> cpp::result<std::unique_ptr<I2SAudioOutput>, Error>;
+ static auto create(GpioExpander* expander)
+ -> cpp::result<std::unique_ptr<I2SAudioOutput>, Error>;
- I2SAudioOutput(AudioDac* dac, audio_element_handle_t element);
+ I2SAudioOutput(std::unique_ptr<AudioDac>& dac,
+ audio_element_handle_t element);
~I2SAudioOutput();
virtual auto SetVolume(uint8_t volume) -> void;
- virtual auto Configure(audio_element_info_t info) -> void;
+ virtual auto Configure(audio_element_info_t& info) -> void;
- private:
- std::unique_ptr<AudioDac> dac_;
+ private:
+ std::unique_ptr<AudioDac> dac_;
};
-} // namespace drivers
+} // namespace drivers