Ardour  9.0-pre0-582-g084a23a80d
GenericMidiControlProtocol Class Reference

#include <generic_midi_control_protocol.h>

Inheritance diagram for GenericMidiControlProtocol:
[legend]

Classes

struct  MapInfo
 
struct  MIDIPendingControllable
 

Public Member Functions

 GenericMidiControlProtocol (ARDOUR::Session &)
 
virtual ~GenericMidiControlProtocol ()
 
void do_request (GenericMIDIRequest *)
 
int stop ()
 
void thread_init ()
 
int set_active (bool yn)
 
void stripable_selection_changed ()
 
std::list< std::shared_ptr< ARDOUR::Bundle > > bundles ()
 
std::shared_ptr< ARDOUR::Portinput_port () const
 
std::shared_ptr< ARDOUR::Portoutput_port () const
 
void set_feedback_interval (PBD::microseconds_t)
 
int set_feedback (bool yn)
 
bool get_feedback () const
 
std::shared_ptr< PBD::Controllablelookup_controllable (std::string const &, MIDIControllable &) const
 
void maybe_start_touch (std::shared_ptr< PBD::Controllable >)
 
XMLNodeget_state () const
 
int set_state (const XMLNode &, int version)
 
bool has_editor () const
 
void * get_gui () const
 
void tear_down_gui ()
 
int load_bindings (const std::string &)
 
void drop_bindings ()
 
void drop_all ()
 
void check_used_event (int, int)
 
std::string current_binding () const
 
void reload_maps ()
 
void set_current_bank (uint32_t)
 
void next_bank ()
 
void prev_bank ()
 
void set_motorised (bool)
 
bool motorised () const
 
void set_threshold (int)
 
int threshold () const
 
void add_rid_to_selection (int rid)
 
void set_rid_selection (int rid)
 
void toggle_rid_selection (int rid)
 
void remove_rid_from_selection (int rid)
 
 CONTROL_PROTOCOL_THREADS_NEED_TEMPO_MAP_DECL ()
 
- Public Member Functions inherited from ARDOUR::ControlProtocol
 ControlProtocol (Session &, std::string name)
 
virtual ~ControlProtocol ()
 
virtual std::string name () const
 
virtual bool active () const
 
virtual void midi_connectivity_established (bool)
 
void add_stripable_to_selection (std::shared_ptr< ARDOUR::Stripable >)
 
void set_stripable_selection (std::shared_ptr< ARDOUR::Stripable >)
 
void toggle_stripable_selection (std::shared_ptr< ARDOUR::Stripable >)
 
void remove_stripable_from_selection (std::shared_ptr< ARDOUR::Stripable >)
 
void clear_stripable_selection ()
 
std::shared_ptr< ARDOUR::Stripablefirst_selected_stripable () const
 
void set_route_table_size (uint32_t size)
 
void set_route_table (uint32_t table_index, std::shared_ptr< ARDOUR::Route >)
 
bool set_route_table (uint32_t table_index, uint32_t remote_control_id)
 
void route_set_rec_enable (uint32_t table_index, bool yn)
 
bool route_get_rec_enable (uint32_t table_index)
 
float route_get_gain (uint32_t table_index)
 
void route_set_gain (uint32_t table_index, float)
 
float route_get_effective_gain (uint32_t table_index)
 
float route_get_peak_input_power (uint32_t table_index, uint32_t which_input)
 
bool route_get_muted (uint32_t table_index)
 
void route_set_muted (uint32_t table_index, bool)
 
bool route_get_soloed (uint32_t table_index)
 
void route_set_soloed (uint32_t table_index, bool)
 
std::string route_get_name (uint32_t table_index)
 
- Public Member Functions inherited from PBD::Stateful
 Stateful ()
 
virtual ~Stateful ()
 
virtual bool apply_change (PropertyBase const &)
 
PropertyChange apply_changes (PropertyList const &)
 
const OwnedPropertyListproperties () const
 
void add_property (PropertyBase &s)
 
void add_extra_xml (XMLNode &)
 
XMLNodeextra_xml (const std::string &str, bool add_if_missing=false)
 
void save_extra_xml (const XMLNode &)
 
const PBD::IDid () const
 
bool set_id (const XMLNode &)
 
void set_id (const std::string &)
 
void reset_id ()
 
void clear_changes ()
 
virtual void clear_owned_changes ()
 
PropertyListget_changes_as_properties (PBD::Command *) const
 
virtual void rdiff (std::vector< PBD::Command * > &) const
 
bool changed () const
 
virtual PropertyListproperty_factory (const XMLNode &) const
 
virtual void suspend_property_changes ()
 
virtual void resume_property_changes ()
 
bool property_changes_suspended () const
 
- Public Member Functions inherited from PBD::ScopedConnectionList
 ScopedConnectionList ()
 
 ScopedConnectionList (const ScopedConnectionList &)=delete
 
ScopedConnectionListoperator= (const ScopedConnectionList &)=delete
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 
- Public Member Functions inherited from BasicUI
 BasicUI (ARDOUR::Session &)
 
virtual ~BasicUI ()
 
void add_marker (const std::string &=std::string())
 
void remove_marker_at_playhead ()
 
void register_thread (std::string name)
 
void loop_toggle ()
 
void loop_location (Temporal::timepos_t const &start, Temporal::timepos_t const &end)
 
void access_action (std::string action_path)
 
void goto_zero ()
 
void goto_start (bool and_roll=false)
 
void goto_end ()
 
void button_varispeed (bool fwd)
 
void rewind ()
 
void ffwd ()
 
void transport_stop ()
 
void transport_play (bool jump_back=false)
 
void set_transport_speed (double speed)
 
double get_transport_speed () const
 
double transport_rolling () const
 
void jump_by_seconds (double sec, ARDOUR::LocateTransportDisposition ltd=ARDOUR::RollIfAppropriate)
 
void jump_by_bars (int bars, ARDOUR::LocateTransportDisposition ltd=ARDOUR::RollIfAppropriate)
 
void jump_by_beats (int beats, ARDOUR::LocateTransportDisposition ltd=ARDOUR::RollIfAppropriate)
 
ARDOUR::samplepos_t transport_sample ()
 
void locate (ARDOUR::samplepos_t sample, ARDOUR::LocateTransportDisposition ltd)
 
void locate (ARDOUR::samplepos_t sample, bool)
 
bool locating ()
 
bool locked ()
 
void save_state ()
 
void prev_marker ()
 
void next_marker ()
 
void undo ()
 
void redo ()
 
void toggle_punch_in ()
 
void toggle_punch_out ()
 
void mark_in ()
 
void mark_out ()
 
void toggle_click ()
 
void midi_panic ()
 
void trigger_cue_row (int cue)
 
void trigger_stop_all (bool stop_now=false)
 
void trigger_stop_col (int col, bool immediately=false)
 
void store_mixer_scene (int scn)
 
void apply_mixer_scene (int scn)
 
void toggle_monitor_mute ()
 
void toggle_monitor_dim ()
 
void toggle_monitor_mono ()
 
void cancel_all_solo ()
 
void quick_snapshot_stay ()
 
void quick_snapshot_switch ()
 
void toggle_roll (bool with_abort, bool roll_out_of_bounded_mode)
 
void stop_forget ()
 
void set_punch_range ()
 
void set_loop_range ()
 
void set_session_range ()
 
void set_record_enable (bool yn)
 
bool get_record_enabled ()
 
void fit_1_track ()
 
void fit_2_tracks ()
 
void fit_4_tracks ()
 
void fit_8_tracks ()
 
void fit_16_tracks ()
 
void fit_32_tracks ()
 
void fit_all_tracks ()
 
void zoom_10_ms ()
 
void zoom_100_ms ()
 
void zoom_1_sec ()
 
void zoom_10_sec ()
 
void zoom_1_min ()
 
void zoom_5_min ()
 
void zoom_10_min ()
 
void zoom_to_session ()
 
void temporal_zoom_in ()
 
void temporal_zoom_out ()
 
void scroll_up_1_track ()
 
void scroll_dn_1_track ()
 
void scroll_up_1_page ()
 
void scroll_dn_1_page ()
 
void rec_enable_toggle ()
 
void toggle_all_rec_enables ()
 
void all_tracks_rec_in ()
 
void all_tracks_rec_out ()
 
void goto_nth_marker (int n)
 
ARDOUR::samplecnt_t timecode_frames_per_hour ()
 
void timecode_time (samplepos_t where, Timecode::Time &)
 
void timecode_to_sample (Timecode::Time &timecode, samplepos_t &sample, bool use_offset, bool use_subframes) const
 
void sample_to_timecode (samplepos_t sample, Timecode::Time &timecode, bool use_offset, bool use_subframes) const
 
bool stop_button_onoff () const
 
bool play_button_onoff () const
 
bool ffwd_button_onoff () const
 
bool rewind_button_onoff () const
 
bool loop_button_onoff () const
 
void tbank_set_size (int route_width, int row_height)
 
void tbank_step_routes (int step_size)
 
void tbank_step_rows (int step_size)
 
float trigger_progress_at (int x)
 
TriggerDisplay trigger_display_at (int x, int y)
 
void bang_trigger_at (int x, int y)
 
void unbang_trigger_at (int x, int y)
 
std::shared_ptr< ARDOUR::Triggerfind_trigger (int x, int y)
 
- Public Member Functions inherited from AbstractUI< GenericMIDIRequest >
 AbstractUI (const std::string &name)
 
virtual ~AbstractUI ()
 
void register_thread (pthread_t, std::string, uint32_t num_requests)
 
bool call_slot (EventLoop::InvalidationRecord *, const std::function< void()> &)
 
Glib::Threads::RWLock & slot_invalidation_rwlock ()
 
- Public Member Functions inherited from BaseUI
 BaseUI (const std::string &name)
 
virtual ~BaseUI ()
 
BaseUIbase_instance ()
 
Glib::RefPtr< Glib::MainLoop > main_loop () const
 
bool caller_is_self () const
 
bool ok () const
 
void run ()
 
void quit ()
 
- Public Member Functions inherited from PBD::EventLoop
 EventLoop (std::string const &)
 
virtual ~EventLoop ()
 
virtual bool call_slot (InvalidationRecord *, const std::function< void()> &)=0
 
std::string event_loop_name () const
 

Public Attributes

std::list< MapInfomap_info
 
PBD::Signal< void()> ConnectionChange
 
- Public Attributes inherited from ARDOUR::ControlProtocol
PBD::Signal< void()> ActiveChanged
 
- Public Attributes inherited from PBD::Stateful
PBD::Signal< void(const PropertyChange &)> PropertyChanged
 
- Public Attributes inherited from AbstractUI< GenericMIDIRequest >
Glib::Threads::RWLock request_buffer_map_lock
 
- Public Attributes inherited from PBD::EventLoop
std::list< InvalidationRecord * > trash
 

Private Types

enum  ConnectionState { InputConnected = 0x1 , OutputConnected = 0x2 }
 
typedef std::list< MIDIControllable * > MIDIControllables
 
typedef std::list< MIDIFunction * > MIDIFunctions
 
typedef std::list< MIDIAction * > MIDIActions
 
typedef std::list< MIDIPendingControllable * > MIDIPendingControllables
 

Private Member Functions

void _send_feedback ()
 
void send_feedback ()
 
bool start_learning (std::weak_ptr< PBD::Controllable >)
 
void stop_learning (std::weak_ptr< PBD::Controllable >)
 
void learning_stopped (MIDIControllable *)
 
MIDIControllablecreate_binding (const XMLNode &)
 
MIDIFunctioncreate_function (const XMLNode &)
 
MIDIActioncreate_action (const XMLNode &)
 
void reset_controllables ()
 
bool connection_handler (std::weak_ptr< ARDOUR::Port >, std::string name1, std::weak_ptr< ARDOUR::Port >, std::string name2, bool yn)
 
void build_gui ()
 
bool midi_input_handler (Glib::IOCondition ioc, std::weak_ptr< ARDOUR::AsyncMIDIPort > port)
 
void start_midi_handling ()
 
void stop_midi_handling ()
 

Private Attributes

std::shared_ptr< ARDOUR::Bundle_input_bundle
 
std::shared_ptr< ARDOUR::Bundle_output_bundle
 
std::shared_ptr< ARDOUR::AsyncMIDIPort_input_port
 
std::shared_ptr< ARDOUR::AsyncMIDIPort_output_port
 
PBD::microseconds_t _feedback_interval
 
PBD::microseconds_t last_feedback_time
 
bool do_feedback
 
MIDIControllables controllables
 
MIDIFunctions functions
 
MIDIActions actions
 
MIDIPendingControllables pending_controllables
 
Glib::Threads::Mutex controllables_lock
 
Glib::Threads::Mutex pending_lock
 
int connection_state
 
PBD::ScopedConnection _port_connection
 
std::string _current_binding
 
uint32_t _bank_size
 
uint32_t _current_bank
 
bool _motorised
 
int _threshold
 
void * gui
 
PBD::ScopedConnectionList midi_connections
 

Additional Inherited Members

- Public Types inherited from PBD::EventLoop
enum  RequestType { range_guarantee = ~0 }
 
- Static Public Member Functions inherited from ARDOUR::ControlProtocol
static StripableNotificationList const & last_selected ()
 
static void notify_stripable_selection_changed (StripableNotificationListPtr)
 
- Static Public Member Functions inherited from BaseUI
static RequestType new_request_type ()
 
static void set_thread_priority (int p)
 
- Static Public Member Functions inherited from PBD::EventLoop
static void * invalidate_request (void *data)
 
static EventLoopget_event_loop_for_thread ()
 
static void set_event_loop_for_thread (EventLoop *ui)
 
static std::vector< ThreadBufferMappingget_request_buffers_for_target_thread (const std::string &)
 
static void pre_register (const std::string &emitting_thread_name, uint32_t num_requests)
 
static void remove_request_buffer_from_map (pthread_t)
 
static InvalidationRecord__invalidator (sigc::trackable &trackable, const char *, int)
 
- Static Public Attributes inherited from ARDOUR::ControlProtocol
static PBD::Signal< void()> ZoomToSession
 
static PBD::Signal< void()> ZoomIn
 
static PBD::Signal< void()> ZoomOut
 
static PBD::Signal< void()> Enter
 
static PBD::Signal< void()> Undo
 
static PBD::Signal< void()> Redo
 
static PBD::Signal< void(float)> ScrollTimeline
 
static PBD::Signal< void(uint32_t)> GotoView
 
static PBD::Signal< void()> CloseDialog
 
static PBD::Signal< void()> VerticalZoomInAll
 
static PBD::Signal< void()> VerticalZoomOutAll
 
static PBD::Signal< void()> VerticalZoomInSelected
 
static PBD::Signal< void()> VerticalZoomOutSelected
 
static PBD::Signal< void()> StepTracksDown
 
static PBD::Signal< void()> StepTracksUp
 
static PBD::Signal< void(std::weak_ptr< ARDOUR::PluginInsert >)> PluginSelected
 
static const std::string state_node_name
 
- Static Public Attributes inherited from PBD::Stateful
static int current_state_version
 
static int loading_state_version
 
- Static Public Attributes inherited from BasicUI
static PBD::Signal< void(std::string, std::string)> AccessAction
 
- Static Public Attributes inherited from BaseUI
static RequestType CallSlot
 
static RequestType Quit
 
- Protected Types inherited from AbstractUI< GenericMIDIRequest >
typedef RequestBuffer::rw_vector RequestBufferVector
 
typedef std::map< pthread_t, RequestBuffer * >::iterator RequestBufferMapIterator
 
typedef std::map< pthread_t, RequestBuffer * > RequestBufferMap
 
- Protected Member Functions inherited from ARDOUR::ControlProtocol
void next_track (uint32_t initial_id)
 
void prev_track (uint32_t initial_id)
 
virtual void event_loop_precall ()
 
void install_precall_handler (Glib::RefPtr< Glib::MainContext >)
 
- Protected Member Functions inherited from PBD::Stateful
void add_instant_xml (XMLNode &, const std::string &directory_path)
 
XMLNodeinstant_xml (const std::string &str, const std::string &directory_path)
 
void add_properties (XMLNode &) const
 
PropertyChange set_values (XMLNode const &)
 
virtual void post_set (const PropertyChange &)
 
virtual void send_change (const PropertyChange &)
 
virtual void mid_thaw (const PropertyChange &)
 
bool regenerate_xml_or_string_ids () const
 
- Protected Member Functions inherited from BasicUI
 BasicUI ()
 
- Protected Member Functions inherited from AbstractUI< GenericMIDIRequest >
GenericMIDIRequestget_request (RequestType)
 
void handle_ui_requests ()
 
void send_request (GenericMIDIRequest *)
 
RequestBuffer * get_per_thread_request_buffer ()
 
- Protected Member Functions inherited from BaseUI
bool signal_running ()
 
int set_thread_priority () const
 
bool request_handler (Glib::IOCondition)
 
void signal_new_request ()
 
void attach_request_source ()
 
virtual void maybe_install_precall_handler (Glib::RefPtr< Glib::MainContext >)
 
- Protected Attributes inherited from ARDOUR::ControlProtocol
std::vector< std::shared_ptr< ARDOUR::Route > > route_table
 
std::string _name
 
GlibEventLoopCallback glib_event_callback
 
- Protected Attributes inherited from PBD::Stateful
XMLNode_extra_xml
 
XMLNode_instant_xml
 
PBD::PropertyChange _pending_changed
 
Glib::Threads::Mutex _lock
 
std::string _xml_node_name
 name of node to use for this object in XML More...
 
OwnedPropertyList_properties
 
- Protected Attributes inherited from BasicUI
ARDOUR::Sessionsession
 
int _tbank_route_width
 
int _tbank_row_height
 
int _tbank_start_route
 
int _tbank_start_row
 
- Protected Attributes inherited from AbstractUI< GenericMIDIRequest >
RequestBufferMap request_buffers
 
std::list< GenericMIDIRequest * > request_list
 
PBD::ScopedConnection new_thread_connection
 
- Protected Attributes inherited from BaseUI
bool _ok
 
Glib::RefPtr< Glib::MainLoop > _main_loop
 
Glib::RefPtr< Glib::MainContext > m_context
 
PBD::Thread_run_loop_thread
 
Glib::Threads::Mutex _run_lock
 
Glib::Threads::Cond _running
 

Detailed Description

Definition at line 61 of file generic_midi_control_protocol.h.

Member Typedef Documentation

◆ MIDIActions

Definition at line 156 of file generic_midi_control_protocol.h.

◆ MIDIControllables

◆ MIDIFunctions

Definition at line 153 of file generic_midi_control_protocol.h.

◆ MIDIPendingControllables

Member Enumeration Documentation

◆ ConnectionState

Enumerator
InputConnected 
OutputConnected 

Definition at line 185 of file generic_midi_control_protocol.h.

Constructor & Destructor Documentation

◆ GenericMidiControlProtocol()

GenericMidiControlProtocol::GenericMidiControlProtocol ( ARDOUR::Session )

◆ ~GenericMidiControlProtocol()

virtual GenericMidiControlProtocol::~GenericMidiControlProtocol ( )
virtual

Member Function Documentation

◆ _send_feedback()

void GenericMidiControlProtocol::_send_feedback ( )
private

◆ add_rid_to_selection()

void GenericMidiControlProtocol::add_rid_to_selection ( int  rid)
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ build_gui()

void GenericMidiControlProtocol::build_gui ( )
private

◆ bundles()

std::list<std::shared_ptr<ARDOUR::Bundle> > GenericMidiControlProtocol::bundles ( )
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ check_used_event()

void GenericMidiControlProtocol::check_used_event ( int  ,
int   
)

◆ connection_handler()

bool GenericMidiControlProtocol::connection_handler ( std::weak_ptr< ARDOUR::Port ,
std::string  name1,
std::weak_ptr< ARDOUR::Port ,
std::string  name2,
bool  yn 
)
private

◆ CONTROL_PROTOCOL_THREADS_NEED_TEMPO_MAP_DECL()

GenericMidiControlProtocol::CONTROL_PROTOCOL_THREADS_NEED_TEMPO_MAP_DECL ( )

◆ create_action()

MIDIAction* GenericMidiControlProtocol::create_action ( const XMLNode )
private

◆ create_binding()

MIDIControllable* GenericMidiControlProtocol::create_binding ( const XMLNode )
private

◆ create_function()

MIDIFunction* GenericMidiControlProtocol::create_function ( const XMLNode )
private

◆ current_binding()

std::string GenericMidiControlProtocol::current_binding ( ) const
inline

Definition at line 102 of file generic_midi_control_protocol.h.

◆ do_request()

void GenericMidiControlProtocol::do_request ( GenericMIDIRequest )
virtual

◆ drop_all()

void GenericMidiControlProtocol::drop_all ( )

◆ drop_bindings()

void GenericMidiControlProtocol::drop_bindings ( )

◆ get_feedback()

bool GenericMidiControlProtocol::get_feedback ( ) const
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ get_gui()

void* GenericMidiControlProtocol::get_gui ( ) const
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ get_state()

XMLNode& GenericMidiControlProtocol::get_state ( ) const
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ has_editor()

bool GenericMidiControlProtocol::has_editor ( ) const
inlinevirtual

Reimplemented from ARDOUR::ControlProtocol.

Definition at line 92 of file generic_midi_control_protocol.h.

◆ input_port()

std::shared_ptr<ARDOUR::Port> GenericMidiControlProtocol::input_port ( ) const

◆ learning_stopped()

void GenericMidiControlProtocol::learning_stopped ( MIDIControllable )
private

◆ load_bindings()

int GenericMidiControlProtocol::load_bindings ( const std::string &  )

◆ lookup_controllable()

std::shared_ptr<PBD::Controllable> GenericMidiControlProtocol::lookup_controllable ( std::string const &  ,
MIDIControllable  
) const

◆ maybe_start_touch()

void GenericMidiControlProtocol::maybe_start_touch ( std::shared_ptr< PBD::Controllable )

◆ midi_input_handler()

bool GenericMidiControlProtocol::midi_input_handler ( Glib::IOCondition  ioc,
std::weak_ptr< ARDOUR::AsyncMIDIPort port 
)
private

◆ motorised()

bool GenericMidiControlProtocol::motorised ( ) const
inline

Definition at line 118 of file generic_midi_control_protocol.h.

◆ next_bank()

void GenericMidiControlProtocol::next_bank ( )

◆ output_port()

std::shared_ptr<ARDOUR::Port> GenericMidiControlProtocol::output_port ( ) const

◆ prev_bank()

void GenericMidiControlProtocol::prev_bank ( )

◆ reload_maps()

void GenericMidiControlProtocol::reload_maps ( )

◆ remove_rid_from_selection()

void GenericMidiControlProtocol::remove_rid_from_selection ( int  rid)
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ reset_controllables()

void GenericMidiControlProtocol::reset_controllables ( )
private

◆ send_feedback()

void GenericMidiControlProtocol::send_feedback ( )
private

◆ set_active()

int GenericMidiControlProtocol::set_active ( bool  yn)
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ set_current_bank()

void GenericMidiControlProtocol::set_current_bank ( uint32_t  )

◆ set_feedback()

int GenericMidiControlProtocol::set_feedback ( bool  yn)
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ set_feedback_interval()

void GenericMidiControlProtocol::set_feedback_interval ( PBD::microseconds_t  )

◆ set_motorised()

void GenericMidiControlProtocol::set_motorised ( bool  )

◆ set_rid_selection()

void GenericMidiControlProtocol::set_rid_selection ( int  rid)
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ set_state()

int GenericMidiControlProtocol::set_state ( const XMLNode ,
int  version 
)
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ set_threshold()

void GenericMidiControlProtocol::set_threshold ( int  )

◆ start_learning()

bool GenericMidiControlProtocol::start_learning ( std::weak_ptr< PBD::Controllable )
private

◆ start_midi_handling()

void GenericMidiControlProtocol::start_midi_handling ( )
private

◆ stop()

int GenericMidiControlProtocol::stop ( )

◆ stop_learning()

void GenericMidiControlProtocol::stop_learning ( std::weak_ptr< PBD::Controllable )
private

◆ stop_midi_handling()

void GenericMidiControlProtocol::stop_midi_handling ( )
private

◆ stripable_selection_changed()

void GenericMidiControlProtocol::stripable_selection_changed ( )
inlinevirtual

Implements ARDOUR::ControlProtocol.

Definition at line 73 of file generic_midi_control_protocol.h.

◆ tear_down_gui()

void GenericMidiControlProtocol::tear_down_gui ( )
virtual

Reimplemented from ARDOUR::ControlProtocol.

◆ thread_init()

void GenericMidiControlProtocol::thread_init ( )
virtual

Derived UI objects can implement thread_init() which will be called by the event loop thread immediately before it enters the event loop.

Reimplemented from BaseUI.

◆ threshold()

int GenericMidiControlProtocol::threshold ( ) const
inline

Definition at line 124 of file generic_midi_control_protocol.h.

◆ toggle_rid_selection()

void GenericMidiControlProtocol::toggle_rid_selection ( int  rid)
virtual

Reimplemented from ARDOUR::ControlProtocol.

Member Data Documentation

◆ _bank_size

uint32_t GenericMidiControlProtocol::_bank_size
private

Definition at line 195 of file generic_midi_control_protocol.h.

◆ _current_bank

uint32_t GenericMidiControlProtocol::_current_bank
private

Definition at line 196 of file generic_midi_control_protocol.h.

◆ _current_binding

std::string GenericMidiControlProtocol::_current_binding
private

Definition at line 194 of file generic_midi_control_protocol.h.

◆ _feedback_interval

PBD::microseconds_t GenericMidiControlProtocol::_feedback_interval
private

Definition at line 143 of file generic_midi_control_protocol.h.

◆ _input_bundle

std::shared_ptr<ARDOUR::Bundle> GenericMidiControlProtocol::_input_bundle
private

Definition at line 138 of file generic_midi_control_protocol.h.

◆ _input_port

std::shared_ptr<ARDOUR::AsyncMIDIPort> GenericMidiControlProtocol::_input_port
private

Definition at line 140 of file generic_midi_control_protocol.h.

◆ _motorised

bool GenericMidiControlProtocol::_motorised
private

true if this surface is motorised. If it is, we assume that the surface's controls are never out of sync with Ardour's state, so we don't have to take steps to avoid values jumping around when things are not in sync.

Definition at line 202 of file generic_midi_control_protocol.h.

◆ _output_bundle

std::shared_ptr<ARDOUR::Bundle> GenericMidiControlProtocol::_output_bundle
private

Definition at line 139 of file generic_midi_control_protocol.h.

◆ _output_port

std::shared_ptr<ARDOUR::AsyncMIDIPort> GenericMidiControlProtocol::_output_port
private

Definition at line 141 of file generic_midi_control_protocol.h.

◆ _port_connection

PBD::ScopedConnection GenericMidiControlProtocol::_port_connection
private

Definition at line 192 of file generic_midi_control_protocol.h.

◆ _threshold

int GenericMidiControlProtocol::_threshold
private

Definition at line 203 of file generic_midi_control_protocol.h.

◆ actions

MIDIActions GenericMidiControlProtocol::actions
private

Definition at line 157 of file generic_midi_control_protocol.h.

◆ connection_state

int GenericMidiControlProtocol::connection_state
private

Definition at line 190 of file generic_midi_control_protocol.h.

◆ ConnectionChange

PBD::Signal<void()> GenericMidiControlProtocol::ConnectionChange

Definition at line 133 of file generic_midi_control_protocol.h.

◆ controllables

MIDIControllables GenericMidiControlProtocol::controllables
private

Definition at line 151 of file generic_midi_control_protocol.h.

◆ controllables_lock

Glib::Threads::Mutex GenericMidiControlProtocol::controllables_lock
mutableprivate

Definition at line 171 of file generic_midi_control_protocol.h.

◆ do_feedback

bool GenericMidiControlProtocol::do_feedback
private

Definition at line 146 of file generic_midi_control_protocol.h.

◆ functions

MIDIFunctions GenericMidiControlProtocol::functions
private

Definition at line 154 of file generic_midi_control_protocol.h.

◆ gui

void* GenericMidiControlProtocol::gui
mutableprivate

Definition at line 205 of file generic_midi_control_protocol.h.

◆ last_feedback_time

PBD::microseconds_t GenericMidiControlProtocol::last_feedback_time
private

Definition at line 144 of file generic_midi_control_protocol.h.

◆ map_info

std::list<MapInfo> GenericMidiControlProtocol::map_info

Definition at line 109 of file generic_midi_control_protocol.h.

◆ midi_connections

PBD::ScopedConnectionList GenericMidiControlProtocol::midi_connections
private

Definition at line 208 of file generic_midi_control_protocol.h.

◆ pending_controllables

MIDIPendingControllables GenericMidiControlProtocol::pending_controllables
private

Definition at line 170 of file generic_midi_control_protocol.h.

◆ pending_lock

Glib::Threads::Mutex GenericMidiControlProtocol::pending_lock
private

Definition at line 172 of file generic_midi_control_protocol.h.


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