aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine/JackDriver.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/JackDriver.hpp')
-rw-r--r--src/engine/JackDriver.hpp13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/engine/JackDriver.hpp b/src/engine/JackDriver.hpp
index 3045165..14e84ec 100644
--- a/src/engine/JackDriver.hpp
+++ b/src/engine/JackDriver.hpp
@@ -43,8 +43,7 @@ class Node;
* "Ticks" are individual frames when running under this driver, and all code
* in the processing context must be realtime safe (non-blocking).
*/
-class JackDriver
- : public machina::Driver
+class JackDriver : public machina::Driver
{
public:
JackDriver(Raul::Forge& forge,
@@ -66,11 +65,7 @@ public:
void set_bpm(double bpm) { _bpm.set(bpm); }
void set_quantization(double q) { _quantization.set(q); }
- void stop();
-
- bool recording() { return _recording.load(); }
- void start_record(bool step);
- void finish_record();
+ void set_play_state(PlayState state);
void start_transport() { jack_transport_start(_client); }
void stop_transport() { jack_transport_stop(_client); }
@@ -100,6 +95,9 @@ private:
static int jack_process_cb(jack_nframes_t nframes, void* me);
static void jack_shutdown_cb(void* me);
+ void start_record(bool step);
+ void finish_record();
+
void on_process(jack_nframes_t nframes);
jack_client_t* _client;
@@ -122,7 +120,6 @@ private:
bool _stop_flag;
Raul::TimeDuration _record_dur;
- std::atomic<bool> _recording;
SPtr<Recorder> _recorder;
bool _is_activated;
};