diff options
author | David Robillard <d@drobilla.net> | 2013-01-14 02:42:29 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2013-01-14 02:42:29 +0000 |
commit | 08e702ada89b951466c7b9c787663e0a57846e5a (patch) | |
tree | ebc017225112c6245caeb310859b16cabf50fab0 /src/engine/JackDriver.cpp | |
parent | f111891cfbc183339e3119d5ff3718184cdedd21 (diff) | |
download | machina-08e702ada89b951466c7b9c787663e0a57846e5a.tar.gz machina-08e702ada89b951466c7b9c787663e0a57846e5a.tar.bz2 machina-08e702ada89b951466c7b9c787663e0a57846e5a.zip |
Make quantize spinner control step record and new node length.
Only quantize non-step recording if quantize checkbox is enabled.
git-svn-id: http://svn.drobilla.net/lad/trunk/machina@4977 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/JackDriver.cpp')
-rw-r--r-- | src/engine/JackDriver.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/engine/JackDriver.cpp b/src/engine/JackDriver.cpp index 840573e..8eada7c 100644 --- a/src/engine/JackDriver.cpp +++ b/src/engine/JackDriver.cpp @@ -41,8 +41,6 @@ JackDriver::JackDriver(Raul::Forge& forge, SPtr<Machine> machine) , _context(forge, 48000, MACHINA_PPQN, 120.0) , _frames_unit(TimeUnit::FRAMES, 48000) , _beats_unit(TimeUnit::BEATS, 19200) - , _bpm(120.0) - , _quantization(0.0f) , _stop(0) , _stop_flag(false) , _record_dur(_frames_unit) // = 0 @@ -421,17 +419,18 @@ JackDriver::set_play_state(PlayState state) finish_record(); } } - _play_state = state; + Driver::set_play_state(state); } void JackDriver::start_record(bool step) { + const double q = (step || _quantize_record) ? _quantization.get() : 0.0; switch (_play_state) { case PlayState::STOPPED: case PlayState::PLAYING: _recorder = SPtr<Recorder>( - new Recorder(_forge, 1024, _beats_unit, _quantization.get(), step)); + new Recorder(_forge, 1024, _beats_unit, q, step)); _recorder->start(); _record_dur = 0; break; |