Ardour  9.0-pre0-822-g12e3bc5c20
MidiTracer Class Reference

#include <midi_tracer.h>

Inheritance diagram for MidiTracer:
[legend]

Classes

class  MidiPortCols
 

Public Member Functions

 MidiTracer ()
 
 ~MidiTracer ()
 
- Public Member Functions inherited from ArdourWindow
 ArdourWindow (std::string title)
 
 ArdourWindow (Gtk::Window &parent, std::string title)
 
virtual ~ArdourWindow ()
 
- Public Member Functions inherited from ARDOUR::SessionHandlePtr
 SessionHandlePtr (ARDOUR::Session *s)
 
 SessionHandlePtr ()
 
virtual ~SessionHandlePtr ()
 
virtual void set_session (ARDOUR::Session *)
 
virtual ARDOUR::Sessionsession () const
 
- Public Member Functions inherited from Gtkmm2ext::VisibilityTracker
 VisibilityTracker (Gtk::Window &)
 
virtual ~VisibilityTracker ()
 
void cycle_visibility ()
 
bool fully_visible () const
 
bool not_visible () const
 
bool partially_visible () const
 
Gtk::Window & window () const
 

Protected Member Functions

void on_show ()
 
void on_hide ()
 
- Protected Member Functions inherited from ArdourWindow
bool on_focus_in_event (GdkEventFocus *)
 
bool on_focus_out_event (GdkEventFocus *)
 
bool on_delete_event (GdkEventAny *)
 
bool on_key_press_event (GdkEventKey *)
 
bool on_key_release_event (GdkEventKey *)
 
void on_unmap ()
 
- Protected Member Functions inherited from ARDOUR::SessionHandlePtr
virtual void session_going_away ()
 

Private Member Functions

void tracer (MIDI::Parser &, MIDI::byte *, size_t, MIDI::samplecnt_t)
 
void update ()
 
void base_toggle ()
 
void autoscroll_toggle ()
 
void collect_toggle ()
 
void delta_toggle ()
 
void port_changed ()
 
void ports_changed ()
 
void disconnect ()
 

Private Attributes

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
 
MIDI::samplecnt_t _last_receipt
 
bool autoscroll
 
bool show_hex
 
bool show_delta_time
 
std::atomic< int > _update_queued
 
PBD::RingBuffer< char * > fifo
 
PBD::Pool buffer_pool
 
Gtk::CheckButton autoscroll_button
 
Gtk::CheckButton base_button
 
Gtk::CheckButton collect_button
 
Gtk::CheckButton delta_time_button
 
Gtk::ComboBox _midi_port_combo
 
MidiPortCols _midi_port_cols
 
Glib::RefPtr< Gtk::ListStore > _midi_port_list
 
PBD::ScopedConnection _parser_connection
 
PBD::ScopedConnection _manager_connection
 
std::shared_ptr< MIDI::Parser_midi_parser
 
std::shared_ptr< ARDOUR::MidiPorttracer_port
 
std::shared_ptr< ARDOUR::MidiPorttraced_port
 

Static Private Attributes

static const size_t buffer_size = 256
 
static unsigned int window_count
 

Additional Inherited Members

- Static Public Member Functions inherited from Gtkmm2ext::VisibilityTracker
static void set_use_window_manager_visibility (bool)
 
static bool use_window_manager_visibility ()
 
- Protected Attributes inherited from ARDOUR::SessionHandlePtr
ARDOUR::Session_session
 
PBD::ScopedConnectionList _session_connections
 

Detailed Description

Definition at line 51 of file midi_tracer.h.

Constructor & Destructor Documentation

◆ MidiTracer()

MidiTracer::MidiTracer ( )

◆ ~MidiTracer()

MidiTracer::~MidiTracer ( )

Member Function Documentation

◆ autoscroll_toggle()

void MidiTracer::autoscroll_toggle ( )
private

◆ base_toggle()

void MidiTracer::base_toggle ( )
private

◆ collect_toggle()

void MidiTracer::collect_toggle ( )
private

◆ delta_toggle()

void MidiTracer::delta_toggle ( )
private

◆ disconnect()

void MidiTracer::disconnect ( )
private

◆ on_hide()

void MidiTracer::on_hide ( )
protected

◆ on_show()

void MidiTracer::on_show ( )
protected

◆ port_changed()

void MidiTracer::port_changed ( )
private

◆ ports_changed()

void MidiTracer::ports_changed ( )
private

◆ tracer()

void MidiTracer::tracer ( MIDI::Parser ,
MIDI::byte ,
size_t  ,
MIDI::samplecnt_t   
)
private

◆ update()

void MidiTracer::update ( )
private

Member Data Documentation

◆ _last_receipt

MIDI::samplecnt_t MidiTracer::_last_receipt
private

Definition at line 68 of file midi_tracer.h.

◆ _manager_connection

PBD::ScopedConnection MidiTracer::_manager_connection
private

Definition at line 117 of file midi_tracer.h.

◆ _midi_parser

std::shared_ptr<MIDI::Parser> MidiTracer::_midi_parser
private

Definition at line 118 of file midi_tracer.h.

◆ _midi_port_cols

MidiPortCols MidiTracer::_midi_port_cols
private

Definition at line 105 of file midi_tracer.h.

◆ _midi_port_combo

Gtk::ComboBox MidiTracer::_midi_port_combo
private

Definition at line 91 of file midi_tracer.h.

◆ _midi_port_list

Glib::RefPtr<Gtk::ListStore> MidiTracer::_midi_port_list
private

Definition at line 106 of file midi_tracer.h.

◆ _parser_connection

PBD::ScopedConnection MidiTracer::_parser_connection
private

Definition at line 116 of file midi_tracer.h.

◆ _update_queued

std::atomic<int> MidiTracer::_update_queued
private

Incremented when an update is requested, decremented when one is handled; hence equal to 0 when an update is not queued. May temporarily be negative if a update is handled before it was noted that it had just been queued.

Definition at line 78 of file midi_tracer.h.

◆ autoscroll

bool MidiTracer::autoscroll
private

Definition at line 70 of file midi_tracer.h.

◆ autoscroll_button

Gtk::CheckButton MidiTracer::autoscroll_button
private

Definition at line 87 of file midi_tracer.h.

◆ base_button

Gtk::CheckButton MidiTracer::base_button
private

Definition at line 88 of file midi_tracer.h.

◆ buffer_pool

PBD::Pool MidiTracer::buffer_pool
private

Definition at line 81 of file midi_tracer.h.

◆ buffer_size

const size_t MidiTracer::buffer_size = 256
staticprivate

Definition at line 82 of file midi_tracer.h.

◆ collect_button

Gtk::CheckButton MidiTracer::collect_button
private

Definition at line 89 of file midi_tracer.h.

◆ delta_time_button

Gtk::CheckButton MidiTracer::delta_time_button
private

Definition at line 90 of file midi_tracer.h.

◆ fifo

PBD::RingBuffer<char *> MidiTracer::fifo
private

Definition at line 80 of file midi_tracer.h.

◆ line_count_adjustment

Gtk::Adjustment MidiTracer::line_count_adjustment
private

Definition at line 64 of file midi_tracer.h.

◆ line_count_box

Gtk::HBox MidiTracer::line_count_box
private

Definition at line 67 of file midi_tracer.h.

◆ line_count_label

Gtk::Label MidiTracer::line_count_label
private

Definition at line 66 of file midi_tracer.h.

◆ line_count_spinner

Gtk::SpinButton MidiTracer::line_count_spinner
private

Definition at line 65 of file midi_tracer.h.

◆ scroller

Gtk::ScrolledWindow MidiTracer::scroller
private

Definition at line 63 of file midi_tracer.h.

◆ show_delta_time

bool MidiTracer::show_delta_time
private

Definition at line 72 of file midi_tracer.h.

◆ show_hex

bool MidiTracer::show_hex
private

Definition at line 71 of file midi_tracer.h.

◆ text

Gtk::TextView MidiTracer::text
private

Definition at line 62 of file midi_tracer.h.

◆ traced_port

std::shared_ptr<ARDOUR::MidiPort> MidiTracer::traced_port
private

Definition at line 121 of file midi_tracer.h.

◆ tracer_port

std::shared_ptr<ARDOUR::MidiPort> MidiTracer::tracer_port
private

Definition at line 120 of file midi_tracer.h.

◆ window_count

unsigned int MidiTracer::window_count
staticprivate

Definition at line 123 of file midi_tracer.h.


The documentation for this class was generated from the following file: