summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/port_engine.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-07-25 12:36:54 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-07-25 12:36:54 -0400
commit20b1a7d9d8800f8fdca8379cba01cc39757c34fc (patch)
treee7e4f67e1d9378fb02a53b85a501f3a44968345b /libs/ardour/ardour/port_engine.h
parent2af6491c1c779cda31b9a9bd8eee2fb47015e91f (diff)
most of libardour now actually compiles
Diffstat (limited to 'libs/ardour/ardour/port_engine.h')
-rw-r--r--libs/ardour/ardour/port_engine.h34
1 files changed, 20 insertions, 14 deletions
diff --git a/libs/ardour/ardour/port_engine.h b/libs/ardour/ardour/port_engine.h
index 3bea32620e..8dc35ec8f5 100644
--- a/libs/ardour/ardour/port_engine.h
+++ b/libs/ardour/ardour/port_engine.h
@@ -87,28 +87,39 @@ class PortEngine {
typedef void* PortHandle;
- virtual bool connected() const = 0;
+ virtual bool connected() const = 0;
+ virtual void* private_handle() const = 0;
virtual int set_port_name (PortHandle, const std::string&) = 0;
virtual std::string get_port_name (PortHandle) const = 0;
virtual PortHandle* get_port_by_name (const std::string&) const = 0;
- virtual PortHandle register_port (const std::string&, DataType::Symbol, ARDOUR::PortFlags) = 0;
+ virtual std::string make_port_name_relative (const std::string& name) const = 0;
+ virtual std::string make_port_name_non_relative (const std::string& name) const = 0;
+ virtual bool port_is_mine (const std::string& fullname) const = 0;
+
+ virtual PortHandle register_port (const std::string& shortname, ARDOUR::DataType, ARDOUR::PortFlags) = 0;
virtual void unregister_port (PortHandle) = 0;
+
virtual bool connected (PortHandle) = 0;
- virtual int disconnect_all (PortHandle) = 0;
virtual bool connected_to (PortHandle, const std::string&) = 0;
- virtual int get_connections (PortHandle, std::vector<std::string>&) = 0;
virtual bool physically_connected (PortHandle) = 0;
+
+ virtual int get_connections (PortHandle, std::vector<std::string>&) = 0;
+
virtual int connect (PortHandle, const std::string&) = 0;
virtual int disconnect (PortHandle, const std::string&) = 0;
+ virtual int disconnect_all (PortHandle) = 0;
+
+ virtual int connect (const std::string& src, const std::string& dst) = 0;
+ virtual int disconnect (const std::string& src, const std::string& dst) = 0;
/* MIDI */
- virtual void midi_event_get (pframes_t& timestamp, size_t& size, uint8_t** buf, void* port_buffer, uint32_t event_index) = 0;
- virtual int midi_event_put (void* port_buffer, pframes_t timestamp, const uint8_t* buffer, size_t size) = 0;
+ virtual void midi_event_get (pframes_t& timestamp, size_t& size, uint8_t** buf, void* port_buffer, uint32_t event_index) = 0;
+ virtual int midi_event_put (void* port_buffer, pframes_t timestamp, const uint8_t* buffer, size_t size) = 0;
virtual uint32_t get_midi_event_count (void* port_buffer);
- virtual void midi_clear (void* port_buffer);
+ virtual void midi_clear (void* port_buffer);
/* Monitoring */
@@ -120,13 +131,8 @@ class PortEngine {
/* Latency management
*/
- struct LatencyRange {
- uint32_t min;
- uint32_t max;
- };
-
- virtual void set_latency_range (PortHandle, int dir, LatencyRange) = 0;
- virtual LatencyRange get_latency_range (PortHandle, int dir) = 0;
+ virtual void set_latency_range (PortHandle, bool for_playback, LatencyRange) = 0;
+ virtual LatencyRange get_latency_range (PortHandle, bool for_playback) = 0;
virtual LatencyRange get_connected_latency_range (PortHandle, int dir) = 0;
virtual void* get_buffer (PortHandle, pframes_t) = 0;