From f53f2e8e3306a56c99cc1c034f8aecee4325ec88 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 25 Oct 2007 00:09:23 +0000 Subject: Clean/strengthen up constructor/type stuff in new port system. git-svn-id: svn://localhost/ardour2/trunk@2572 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/ardour/audio_port.h | 2 -- libs/ardour/ardour/midi_port.h | 2 -- libs/ardour/ardour/port.h | 9 +++++---- 3 files changed, 5 insertions(+), 8 deletions(-) (limited to 'libs/ardour/ardour') diff --git a/libs/ardour/ardour/audio_port.h b/libs/ardour/ardour/audio_port.h index e412e09bc4..ce544aa7bc 100644 --- a/libs/ardour/ardour/audio_port.h +++ b/libs/ardour/ardour/audio_port.h @@ -33,8 +33,6 @@ class AudioEngine; class AudioPort : public virtual Port { public: - DataType type() const { return DataType::AUDIO; } - virtual Buffer& get_buffer () { return _buffer; } diff --git a/libs/ardour/ardour/midi_port.h b/libs/ardour/ardour/midi_port.h index 3711373c31..0787f66494 100644 --- a/libs/ardour/ardour/midi_port.h +++ b/libs/ardour/ardour/midi_port.h @@ -35,8 +35,6 @@ class MidiPort : public virtual Port { public: virtual ~MidiPort(); - DataType type() const { return DataType::MIDI; } - Buffer& get_buffer() { return _buffer; } diff --git a/libs/ardour/ardour/port.h b/libs/ardour/ardour/port.h index 5c8192b6e8..e9179ae326 100644 --- a/libs/ardour/ardour/port.h +++ b/libs/ardour/ardour/port.h @@ -74,7 +74,8 @@ class Port : public virtual sigc::trackable { if (_metering) { _metering--; } } - virtual DataType type() const = 0; + DataType type() const { return _type; } + virtual void cycle_start(nframes_t nframes) {} virtual void cycle_end() {} virtual Buffer& get_buffer() = 0; @@ -97,7 +98,7 @@ class Port : public virtual sigc::trackable { protected: friend class AudioEngine; - Port (Flags); + Port (DataType, Flags); virtual int disconnect () = 0; virtual void recompute_total_latency() const = 0; @@ -105,8 +106,8 @@ class Port : public virtual sigc::trackable { /* engine isn't supposed to access below here */ - Flags _flags; - std::string _type; + Flags _flags; + const DataType _type; std::string _name; unsigned short _metering; bool _last_monitor; -- cgit v1.2.3