rem: csetup_repp->toggle_is_in_use(false);
context: void ECA_ENGINE::stop(void) {   // --  // as an exception, stop() will be performed even   // though status is not running anymore iff   // rt_running_rep is true (ie. rt-objects are still  // in running state and have to be stopped)  if (status() != ECA_ENGINE::engine_status_running &&       rt_running_rep != true) return;  ecadebug->msg(ECA_DEBUG::system_objects, "(eca-engine) Stop");  for (unsigned int adev_sizet = 0; adev_sizet != realtime_objects_rep.size(); adev_sizet++) {    if (realtime_objects_rep[adev_sizet]->is_running() == true) realtime_objects_rep[adev_sizet]->stop();  }    if (csetup_repp->multitrack_mode_rep == true) {    // ---    // Reset all rt-devices to make sure device buffers    // are in a clean state (to avoid sync problems)    reset_realtime_devices();  }  stop_servers();  rt_running_rep = false;  // ---  // Handle priority  // ---  if (csetup_repp->raised_priority() == true) {    struct sched_param sparam;    sparam.sched_priority = 0;    if (::sched_setscheduler(0, SCHED_OTHER, &sparam) == -1)      ecadebug->msg(ECA_DEBUG::info, "(eca-engine) Unable to change scheduling back to SCHED_OTHER!");    else      ecadebug->msg(ECA_DEBUG::system_objects, "(eca-engine) Changed back to non-realtime scheduling SCHED_OTHER.");  }  set_status(ECA_ENGINE::engine_status_stopped);  csetup_repp->toggle_is_in_use(false);  signal_stop();}