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);
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);
class Session;
class Playlist;
-class Source : public SessionObject, public ARDOUR::Readable, public boost::noncopyable
+class Source : public SessionObject, public boost::noncopyable
{
public:
enum Flag {