Readable is not as generic as its name implies ;)
authorDavid Robillard <d@drobilla.net>
Thu, 19 Feb 2009 01:56:58 +0000 (01:56 +0000)
committerDavid Robillard <d@drobilla.net>
Thu, 19 Feb 2009 01:56:58 +0000 (01:56 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@4634 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/ardour/ardour/audiosource.h
libs/ardour/ardour/midi_source.h
libs/ardour/ardour/source.h

index eff21b898c7ffc284fbe153c99cda7e2a6f4a473..740d9bc7c49b9d7b8fc19158afe05725d8bcf106 100644 (file)
@@ -43,7 +43,9 @@ using std::vector;
 
 namespace ARDOUR {
 
-class AudioSource : virtual public Source, public boost::enable_shared_from_this<ARDOUR::AudioSource>
+class AudioSource : virtual public Source,
+               public ARDOUR::Readable,
+               public boost::enable_shared_from_this<ARDOUR::AudioSource>
 {
   public:
        AudioSource (Session&, Glib::ustring name);
index b17f78b9125e96ac1fc07140bedc13f7a08858bb..774b3ab37274c6cfef3fb8e91ca2da3bc5934e17 100644 (file)
@@ -47,12 +47,6 @@ class MidiSource : virtual public Source
        MidiSource (Session& session, const XMLNode&);
        virtual ~MidiSource ();
        
-       /* Stub Readable interface */
-       virtual nframes64_t read (Sample*, nframes64_t pos, nframes64_t cnt, int channel) const { return 0; }
-       virtual nframes64_t readable_length() const { return length(); }
-       virtual uint32_t    n_channels () const { return 1; }
-       
-       // FIXME: integrate this with the Readable::read interface somehow
        virtual nframes_t midi_read (MidiRingBuffer<nframes_t>& dst, nframes_t start, nframes_t cnt,
                        nframes_t stamp_offset, nframes_t negative_stamp_offset) const;
        virtual nframes_t midi_write (MidiRingBuffer<nframes_t>& src, nframes_t cnt);
index d89c33c74975e6cae9e2eb7dd482b853fec043ed..a388c8db3a5d947f61446ab78572d7e0d32572a3 100644 (file)
@@ -38,7 +38,7 @@ namespace ARDOUR {
 class Session;
 class Playlist;
 
-class Source : public SessionObject, public ARDOUR::Readable, public boost::noncopyable
+class Source : public SessionObject, public boost::noncopyable
 {
   public:
        enum Flag {