Fix client_real_time_priority() calls (backend vs engine)

This commit is contained in:
Robin Gareus 2021-06-10 01:54:32 +02:00
parent 40e4a5a20d
commit 444af7b3e8
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
3 changed files with 13 additions and 11 deletions

View File

@ -161,6 +161,8 @@ public:
*/
virtual bool is_realtime () const = 0;
virtual int client_real_time_priority () { return PBD_RT_PRI_PROC; }
/* Discovering devices and parameters */
/** Return true if this backend requires the selection of a "driver"

View File

@ -109,22 +109,12 @@ class LIBARDOUR_API AudioEngine : public PortManager, public SessionHandlePtr
bool in_process_thread ();
uint32_t process_thread_count ();
/* internal backends
* -20 : main thread
* -21 : additional I/O threads e.g. MIDI
* -22 : client/process threads
*
* search for
* - pbd_realtime_pthread_create
* - pbd_set_thread_priority
*/
virtual int client_real_time_priority () { return PBD_RT_PRI_PROC; }
int backend_reset_requested();
void request_backend_reset();
void request_device_list_update();
void launch_device_control_app();
int client_real_time_priority ();
bool is_realtime() const;
// for the user which hold state_lock to check if reset operation is pending

View File

@ -1151,6 +1151,16 @@ AudioEngine::is_realtime() const
return _backend->is_realtime();
}
int
AudioEngine::client_real_time_priority ()
{
if (!_backend) {
return PBD_RT_PRI_PROC;
}
return _backend->client_real_time_priority();
}
void
AudioEngine::transport_start ()
{