X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fmidi_playlist_source.cc;h=86bc2b6344bc70b65d25e4123a2eb04072672010;hb=fd23f89b357be720bd1cb4a2aeebb5bc017d5878;hp=5dfbf955c6cbf047069f39802796a91775f56d0c;hpb=6fa6514cfdb0ce38d93b51197f599dfd091bad1d;p=ardour.git diff --git a/libs/ardour/midi_playlist_source.cc b/libs/ardour/midi_playlist_source.cc index 5dfbf955c6..86bc2b6344 100644 --- a/libs/ardour/midi_playlist_source.cc +++ b/libs/ardour/midi_playlist_source.cc @@ -25,7 +25,7 @@ #include "ardour/midi_playlist.h" #include "ardour/midi_playlist_source.h" -#include "i18n.h" +#include "pbd/i18n.h" using namespace std; using namespace ARDOUR; @@ -54,7 +54,7 @@ on other ways to approach this issue. ********************************************************************************/ MidiPlaylistSource::MidiPlaylistSource (Session& s, const ID& orig, const std::string& name, boost::shared_ptr p, - uint32_t /*chn*/, frameoffset_t begin, framecnt_t len, Source::Flag flags) + uint32_t /*chn*/, sampleoffset_t begin, samplecnt_t len, Source::Flag flags) : Source (s, DataType::MIDI, name) , MidiSource (s, name, flags) , PlaylistSource (s, orig, name, p, DataType::MIDI, begin, len, flags) @@ -114,18 +114,22 @@ MidiPlaylistSource::set_state (const XMLNode& node, int version, bool with_desce return 0; } -framecnt_t -MidiPlaylistSource::length (framepos_t) const +samplecnt_t +MidiPlaylistSource::length (samplepos_t) const { - pair extent = _playlist->get_extent(); + pair extent = _playlist->get_extent(); return extent.second - extent.first; } -framecnt_t -MidiPlaylistSource::read_unlocked (Evoral::EventSink& dst, - framepos_t /*position*/, - framepos_t start, framecnt_t cnt, - MidiStateTracker*) const +samplecnt_t +MidiPlaylistSource::read_unlocked (const Lock& lock, + Evoral::EventSink& dst, + samplepos_t /*position*/, + samplepos_t start, + samplecnt_t cnt, + Evoral::Range* loop_range, + MidiStateTracker*, + MidiChannelFilter*) const { boost::shared_ptr mp = boost::dynamic_pointer_cast (_playlist); @@ -133,47 +137,48 @@ MidiPlaylistSource::read_unlocked (Evoral::EventSink& dst, return 0; } - return mp->read (dst, start, cnt); + return mp->read (dst, start, cnt, loop_range); } -framecnt_t -MidiPlaylistSource::write_unlocked (MidiRingBuffer&, - framepos_t, - framecnt_t) +samplecnt_t +MidiPlaylistSource::write_unlocked (const Lock&, + MidiRingBuffer&, + samplepos_t, + samplecnt_t) { fatal << string_compose (_("programming error: %1"), "MidiPlaylistSource::write_unlocked() called - should be impossible") << endmsg; - /*NOTREACHED*/ + abort(); /*NOTREACHED*/ return 0; } void -MidiPlaylistSource::append_event_unlocked_beats(const Evoral::Event& /*ev*/) +MidiPlaylistSource::append_event_beats(const Glib::Threads::Mutex::Lock& /*lock*/, const Evoral::Event& /*ev*/) { - fatal << string_compose (_("programming error: %1"), "MidiPlaylistSource::append_event_unlocked_beats() called - should be impossible") << endmsg; - /*NOTREACHED*/ + fatal << string_compose (_("programming error: %1"), "MidiPlaylistSource::append_event_beats() called - should be impossible") << endmsg; + abort(); /*NOTREACHED*/ } void -MidiPlaylistSource::append_event_unlocked_frames(const Evoral::Event& /* ev */, framepos_t /*source_start*/) +MidiPlaylistSource::append_event_samples(const Glib::Threads::Mutex::Lock& /*lock*/, const Evoral::Event& /* ev */, samplepos_t /*source_start*/) { - fatal << string_compose (_("programming error: %1"), "MidiPlaylistSource::append_event_unlocked_frames() called - should be impossible") << endmsg; - /*NOTREACHED*/ + fatal << string_compose (_("programming error: %1"), "MidiPlaylistSource::append_event_samples() called - should be impossible") << endmsg; + abort(); /*NOTREACHED*/ } void -MidiPlaylistSource::load_model (bool, bool) +MidiPlaylistSource::load_model (const Glib::Threads::Mutex::Lock&, bool) { /* nothing to do */ } void -MidiPlaylistSource::destroy_model () +MidiPlaylistSource::destroy_model (const Glib::Threads::Mutex::Lock&) { /* nothing to do */ } void -MidiPlaylistSource::flush_midi () +MidiPlaylistSource::flush_midi (const Lock& lock) { }