/*
- Copyright (C) 2012 Paul Davis
+ Copyright (C) 2012 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
class Parser;
}
+namespace ARDOUR {
+ class MidiPort;
+}
+
class MidiTracer : public ArdourWindow
{
- public:
+public:
MidiTracer ();
~MidiTracer();
- private:
+private:
Gtk::TextView text;
Gtk::ScrolledWindow scroller;
Gtk::Adjustment line_count_adjustment;
Gtk::SpinButton line_count_spinner;
Gtk::Label line_count_label;
Gtk::HBox line_count_box;
- struct timeval _last_receipt;
-
+ MIDI::samplecnt_t _last_receipt;
+
bool autoscroll;
bool show_hex;
bool show_delta_time;
*/
volatile gint _update_queued;
- RingBuffer<char *> fifo;
+ PBD::RingBuffer<char *> fifo;
Pool buffer_pool;
static const size_t buffer_size = 256;
- void tracer (MIDI::Parser&, MIDI::byte*, size_t);
+ void tracer (MIDI::Parser&, MIDI::byte*, size_t, MIDI::samplecnt_t);
void update ();
Gtk::CheckButton autoscroll_button;
void disconnect ();
PBD::ScopedConnection _parser_connection;
PBD::ScopedConnection _manager_connection;
+ MIDI::Parser my_parser;
+
+ boost::shared_ptr<ARDOUR::MidiPort> traced_port;
};
#endif /* __ardour_gtk_midi_tracer_h__ */