Port *register_output_port (DataType, const std::string& portname);
int unregister_port (Port &);
+ bool port_is_physical (const std::string&) const;
+ void ensure_monitor_input (const std::string&, bool) const;
+
void split_cycle (pframes_t offset);
int connect (const std::string& source, const std::string& destination);
void get_physical_inputs (DataType type, std::vector<std::string>&);
void update_total_latencies ();
- void update_total_latency (const Port&);
Port *get_port_by_name (const std::string &);
*/
PBD::Signal3<void, Port *, Port *, bool> PortConnectedOrDisconnected;
- std::string make_port_name_relative (std::string);
- std::string make_port_name_non_relative (std::string);
+ std::string make_port_name_relative (std::string) const;
+ std::string make_port_name_non_relative (std::string) const;
+ bool port_is_mine (const std::string&) const;
static AudioEngine* instance() { return _instance; }
void died ();
boost::function<int(framecnt_t)> freewheel_action;
bool reconnect_on_halt;
int _usecs_per_cycle;
+ bool port_remove_in_progress;
SerializedRCUManager<Ports> ports;
- Port *register_port (DataType type, const std::string& portname, bool input);
+ Port* register_port (DataType type, const std::string& portname, bool input);
int process_callback (pframes_t nframes);
void* process_thread ();
- void finish_process_cycle (int status);
void remove_all_ports ();
ChanCount n_physical (unsigned long) const;
int jack_bufsize_callback (pframes_t);
int jack_sample_rate_callback (pframes_t);
-#ifdef HAVE_JACK_NEW_LATENCY
+ void set_jack_callbacks ();
+
static void _latency_callback (jack_latency_callback_mode_t, void*);
void jack_latency_callback (jack_latency_callback_mode_t);
-#endif
int connect_to_jack (std::string client_name, std::string session_uuid);
Glib::Thread* m_meter_thread;
static gint m_meter_exit;
-
+
ProcessThread* _main_thread;
struct ThreadData {