- void check_note_onoffs(Evoral::MIDIEvent &event);
- void emit_pending_note_offs(MidiBuffer &dst, nframes_t time);
-
- MidiRingBuffer* _playback_buf;
- MidiRingBuffer* _capture_buf;
- MidiPort* _source_port;
- boost::shared_ptr<SMFSource> _write_source;
- nframes_t _last_flush_frame;
- NoteMode _note_mode;
- MidiStateTracker _midistate_tracker;
+
+ MidiRingBuffer<nframes_t>* _playback_buf;
+ MidiRingBuffer<nframes_t>* _capture_buf;
+ MidiPort* _source_port;
+ boost::shared_ptr<SMFSource> _write_source;
+ nframes_t _last_flush_frame;
+ NoteMode _note_mode;
+ MidiStateTracker _midi_state_tracker;
+ volatile gint _frames_written_to_ringbuffer;
+ volatile gint _frames_read_from_ringbuffer;