if (_trigger_queue.size()) {
to_run = _trigger_queue.back();
_trigger_queue.pop_back();
- }
- else
+ } else {
to_run = 0;
+ }
- int wakeup = std::min ((int) _execution_tokens, (int) _trigger_queue.size() );
+ int wakeup = std::min ((int) _execution_tokens, (int) _trigger_queue.size());
_execution_tokens -= wakeup;
- for (int i=0; i<wakeup; i++ )
+ for (int i=0; i<wakeup; i++ ) {
sem_post (&_execution_sem);
+ }
while (to_run == 0) {
_execution_tokens += 1;
static void get_rt()
{
+ if (!jack_is_realtime (AudioEngine::instance()->jack())) {
+ return;
+ }
+
int priority = jack_client_real_time_priority (AudioEngine::instance()->jack());
if (priority) {
pt->get_buffers();
get_rt();
-
while(1) {
- if (run_one())
+ if (run_one()) {
break;
+ }
}
+
pt->drop_buffers();
}
goto again;
}
- while(1) {
- if (run_one())
+ while (1) {
+ if (run_one()) {
break;
+ }
}
+
pt->drop_buffers();
}
}
int
-Graph::silent_process_routes (nframes_t nframes, sframes_t start_frame, sframes_t end_frame,
+Graph::silent_process_routes (nframes_t nframes, framepos_t start_frame, framepos_t end_frame,
bool can_record, bool rec_monitors_input, bool& need_butler)
{
_process_nframes = nframes;
}
int
-Graph::process_routes (nframes_t nframes, sframes_t start_frame, sframes_t end_frame, int declick,
+Graph::process_routes (nframes_t nframes, framepos_t start_frame, framepos_t end_frame, int declick,
bool can_record, bool rec_monitors_input, bool& need_butler)
{
_process_nframes = nframes;
}
int
-Graph::routes_no_roll (nframes_t nframes, sframes_t start_frame, sframes_t end_frame,
+Graph::routes_no_roll (nframes_t nframes, framepos_t start_frame, framepos_t end_frame,
bool non_rt_pending, bool can_record, int declick)
{
_process_nframes = nframes;