sigc::signal<void,MidiSource *> MidiSource::MidiSourceCreated;
-MidiSource::MidiSource (string name)
- : Source (name, DataType::MIDI)
+MidiSource::MidiSource (Session& s, string name)
+ : Source (s, name, DataType::MIDI)
+ , _model(new MidiModel())
+ , _model_loaded (false)
{
_read_data_count = 0;
_write_data_count = 0;
}
-MidiSource::MidiSource (const XMLNode& node)
- : Source (node)
+MidiSource::MidiSource (Session& s, const XMLNode& node)
+ : Source (s, node)
+ , _model(new MidiModel())
+ , _model_loaded (false)
{
_read_data_count = 0;
_write_data_count = 0;
MidiSource::~MidiSource ()
{
+ delete _model;
}
XMLNode&
return 0;
}
-jack_nframes_t
-MidiSource::read (MidiRingBuffer& dst, jack_nframes_t start, jack_nframes_t cnt) const
+nframes_t
+MidiSource::read (MidiRingBuffer& dst, nframes_t start, nframes_t cnt, nframes_t stamp_offset) const
{
Glib::Mutex::Lock lm (_lock);
- return read_unlocked (dst, start, cnt);
+ return read_unlocked (dst, start, cnt, stamp_offset);
}
-jack_nframes_t
-MidiSource::write (MidiRingBuffer& dst, jack_nframes_t cnt)
+nframes_t
+MidiSource::write (MidiRingBuffer& dst, nframes_t cnt)
{
Glib::Mutex::Lock lm (_lock);
return write_unlocked (dst, cnt);