File tree Expand file tree Collapse file tree 2 files changed +16
-3
lines changed
include/interface/drivers Expand file tree Collapse file tree 2 files changed +16
-3
lines changed Original file line number Diff line number Diff line change 14
14
15
15
namespace leka {
16
16
17
- class CoreDAC : public interface ::DACBase
17
+ class CoreDAC : public interface ::DACDMA
18
18
{
19
19
public:
20
20
CoreDAC (interface::STM32Hal &hal, interface::STM32HalBasicTimer &hal_timer);
@@ -24,9 +24,9 @@ class CoreDAC : public interface::DACBase
24
24
void initialize () final ;
25
25
void terminate () final ;
26
26
27
- void registerDataToPlay (std::span<uint16_t > data);
27
+ void registerDataToPlay (std::span<uint16_t > data) final ;
28
28
void registerDMACallbacks (std::function<void ()> const &on_half_transfer,
29
- std::function<void()> const &on_complete_transfer);
29
+ std::function<void()> const &on_complete_transfer) final ;
30
30
31
31
void start () final ;
32
32
void stop () final ;
Original file line number Diff line number Diff line change 4
4
5
5
#pragma once
6
6
7
+ #include < functional>
8
+ #include < span>
9
+
7
10
#include " interface/drivers/STM32Hal.h"
8
11
9
12
namespace leka ::interface {
@@ -22,4 +25,14 @@ class DACBase
22
25
virtual void stop () = 0;
23
26
};
24
27
28
+ class DACDMA : public DACBase
29
+ {
30
+ public:
31
+ virtual ~DACDMA () = default ;
32
+
33
+ virtual void registerDataToPlay (std::span<uint16_t > data) = 0;
34
+ virtual void registerDMACallbacks (std::function<void ()> const &on_half_transfer,
35
+ std::function<void()> const &on_complete_transfer) = 0;
36
+ };
37
+
25
38
} // namespace leka::interface
You can’t perform that action at this time.
0 commit comments