summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/jack_portengine.h
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/ardour/jack_portengine.h')
-rw-r--r--libs/ardour/ardour/jack_portengine.h25
1 files changed, 12 insertions, 13 deletions
diff --git a/libs/ardour/ardour/jack_portengine.h b/libs/ardour/ardour/jack_portengine.h
index 80e34f3c92..bee87532d3 100644
--- a/libs/ardour/ardour/jack_portengine.h
+++ b/libs/ardour/ardour/jack_portengine.h
@@ -38,8 +38,8 @@ class JACKPortEngine : public PortEngine
{
public:
JACKPortEngine (PortManager&, boost::shared_ptr<JackConnection>);
+ ~JACKPortEngine();
- bool connected() const;
void* private_handle() const;
const std::string& my_name() const;
@@ -48,10 +48,6 @@ class JACKPortEngine : public PortEngine
std::string get_port_name (PortHandle) const;
PortHandle* get_port_by_name (const std::string&) const;
- std::string make_port_name_relative (const std::string& name) const;
- std::string make_port_name_non_relative (const std::string& name) const;
- bool port_is_mine (const std::string& fullname) const;
-
int get_ports (const std::string& port_name_pattern, DataType type, PortFlags flags, std::vector<std::string>&) const;
DataType port_data_type (PortHandle) const;
@@ -62,19 +58,16 @@ class JACKPortEngine : public PortEngine
bool connected (PortHandle);
bool connected_to (PortHandle, const std::string&);
bool physically_connected (PortHandle);
-
int get_connections (PortHandle, std::vector<std::string>&);
-
int connect (PortHandle, const std::string&);
int disconnect (PortHandle, const std::string&);
int disconnect_all (PortHandle);
-
int connect (const std::string& src, const std::string& dst);
int disconnect (const std::string& src, const std::string& dst);
/* MIDI */
- void midi_event_get (pframes_t& timestamp, size_t& size, uint8_t** buf, void* port_buffer, uint32_t event_index);
+ int midi_event_get (pframes_t& timestamp, size_t& size, uint8_t** buf, void* port_buffer, uint32_t event_index);
int midi_event_put (void* port_buffer, pframes_t timestamp, const uint8_t* buffer, size_t size);
uint32_t get_midi_event_count (void* port_buffer);
void midi_clear (void* port_buffer);
@@ -91,7 +84,8 @@ class JACKPortEngine : public PortEngine
void set_latency_range (PortHandle, bool for_playback, LatencyRange);
LatencyRange get_latency_range (PortHandle, bool for_playback);
- LatencyRange get_connected_latency_range (PortHandle, int dir);
+
+ /* Physical ports */
bool port_is_physical (PortHandle) const;
void get_physical_outputs (DataType type, std::vector<std::string>&);
@@ -99,9 +93,13 @@ class JACKPortEngine : public PortEngine
ChanCount n_physical_outputs () const;
ChanCount n_physical_inputs () const;
+ /* Getting access to the data buffer for a port */
+
void* get_buffer (PortHandle, pframes_t);
- framecnt_t last_frame_time () const;
+ /* Miscellany */
+
+ pframes_t sample_time_at_cycle_start ();
private:
boost::shared_ptr<JackConnection> _jack_connection;
@@ -110,10 +108,11 @@ class JACKPortEngine : public PortEngine
static void _registration_callback (jack_port_id_t, int, void *);
static void _connect_callback (jack_port_id_t, jack_port_id_t, int, void *);
- int graph_order_callback ();
-
void connect_callback (jack_port_id_t, jack_port_id_t, int);
+ ChanCount n_physical (unsigned long flags) const;
+ void get_physical (DataType type, unsigned long flags, std::vector<std::string>& phy) const;
+
};
} // namespace