Ardour
9.0-pre0-582-g084a23a80d
|
#include <push2.h>
Classes | |
struct | Button |
struct | ColorButton |
struct | LED |
struct | Pad |
struct | WhiteButton |
Public Member Functions | |
Push2 (ARDOUR::Session &) | |
~Push2 () | |
std::string | input_port_name () const |
std::string | output_port_name () const |
bool | has_editor () const |
void * | get_gui () const |
void | tear_down_gui () |
int | set_active (bool yn) |
XMLNode & | get_state () const |
int | set_state (const XMLNode &node, int version) |
int | pad_note (int row, int col) const |
void | update_selection_color () |
void | set_pad_note_kind (Pad &pad, PadNoteKind kind) |
Set up a pad to represent a "kind" of note. More... | |
void | set_pad_scale_in_key (int root, int octave, MusicalMode::Type mode, NoteGridOrigin origin, int ideal_vertical_semitones) |
void | set_pad_scale_chromatic (int root, int octave, MusicalMode::Type mode, NoteGridOrigin origin, int vertical_semitones) |
void | set_pad_scale (int root, int octave, MusicalMode::Type mode, NoteGridOrigin origin, RowInterval row_interval, bool inkey) |
MusicalMode::Type | mode () const |
NoteGridOrigin | note_grid_origin () |
RowInterval | row_interval () const |
int | scale_root () const |
int | root_octave () const |
bool | in_key () const |
Push2Layout * | current_layout () const |
void | use_previous_layout () |
Push2Canvas * | canvas () const |
ModifierState | modifier_state () const |
std::shared_ptr< Button > | button_by_id (ButtonID) |
void | strip_buttons_off () |
uint8_t | get_color_index (Gtkmm2ext::Color rgba) |
Gtkmm2ext::Color | get_color (ColorName) |
PressureMode | pressure_mode () const |
void | set_pressure_mode (PressureMode) |
libusb_device_handle * | usb_handle () const |
bool | stop_down () const |
PadMap const & | nn_pad_map () const |
std::shared_ptr< Pad > | pad_by_xy (int x, int y) |
std::shared_ptr< Button > | lower_button_by_column (uint32_t col) |
Public Member Functions inherited from MIDISurface | |
MIDISurface (ARDOUR::Session &, std::string const &name, std::string const &port_name_prefix, bool use_pad_filter) | |
~MIDISurface () | |
std::shared_ptr< ARDOUR::Port > | input_port () |
std::shared_ptr< ARDOUR::Port > | output_port () |
ARDOUR::Session & | get_session () |
void | write (const MidiByteArray &) |
void | write (MIDI::byte const *, size_t) |
std::list< std::shared_ptr< ARDOUR::Bundle > > | bundles () |
CONTROL_PROTOCOL_THREADS_NEED_TEMPO_MAP_DECL () | |
virtual bool | midi_input_handler (Glib::IOCondition ioc, MIDI::Port *port) |
void | midi_connectivity_established (bool) |
Public Member Functions inherited from ARDOUR::ControlProtocol | |
ControlProtocol (Session &, std::string name) | |
virtual | ~ControlProtocol () |
virtual std::string | name () const |
virtual bool | active () const |
virtual int | set_feedback (bool) |
virtual bool | get_feedback () const |
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 () |
virtual void | add_rid_to_selection (int rid) |
virtual void | set_rid_selection (int rid) |
virtual void | toggle_rid_selection (int rid) |
virtual void | remove_rid_from_selection (int rid) |
std::shared_ptr< ARDOUR::Stripable > | first_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 OwnedPropertyList & | properties () const |
void | add_property (PropertyBase &s) |
void | add_extra_xml (XMLNode &) |
XMLNode * | extra_xml (const std::string &str, bool add_if_missing=false) |
void | save_extra_xml (const XMLNode &) |
const PBD::ID & | id () const |
bool | set_id (const XMLNode &) |
void | set_id (const std::string &) |
void | reset_id () |
void | clear_changes () |
virtual void | clear_owned_changes () |
PropertyList * | get_changes_as_properties (PBD::Command *) const |
virtual void | rdiff (std::vector< PBD::Command * > &) const |
bool | changed () const |
virtual PropertyList * | property_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 | |
ScopedConnectionList & | operator= (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::Trigger > | find_trigger (int x, int y) |
Public Member Functions inherited from AbstractUI< MidiSurfaceRequest > | |
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 () |
BaseUI * | base_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 |
Static Public Member Functions | |
static bool | available () |
static bool | match_usb (uint16_t, uint16_t) |
static bool | probe (std::string &, std::string &) |
static std::string | button_name_by_id (ButtonID) |
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 EventLoop * | get_event_loop_for_thread () |
static void | set_event_loop_for_thread (EventLoop *ui) |
static std::vector< ThreadBufferMapping > | get_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) |
Public Attributes | |
PBD::Signal< void()> | PadChange |
PBD::Signal< void()> | ScaleChange |
PBD::Signal< void(PressureMode)> | PressureModeChange |
Public Attributes inherited from MIDISurface | |
std::shared_ptr< ARDOUR::Bundle > | _input_bundle |
std::shared_ptr< ARDOUR::Bundle > | _output_bundle |
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< MidiSurfaceRequest > | |
Glib::Threads::RWLock | request_buffer_map_lock |
Public Attributes inherited from PBD::EventLoop | |
std::list< InvalidationRecord * > | trash |
Private Types | |
typedef std::map< int, std::shared_ptr< Button > > | CCButtonMap |
typedef std::map< ButtonID, std::shared_ptr< Button > > | IDButtonMap |
typedef std::multimap< int, std::shared_ptr< Pad > > | FNPadMap |
typedef std::map< Gtkmm2ext::Color, uint8_t > | ColorMap |
typedef std::stack< uint8_t > | ColorMapFreeList |
typedef std::map< ColorName, Gtkmm2ext::Color > | Colors |
Additional Inherited Members | |
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 MIDISurface | |
enum | ConnectionState { InputConnected = 0x1 , OutputConnected = 0x2 } |
Protected Types inherited from AbstractUI< MidiSurfaceRequest > | |
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 MIDISurface | |
void | do_request (MidiSurfaceRequest *) |
virtual void | connect_to_parser () |
virtual void | connect_to_port_parser (MIDI::Port &) |
virtual void | handle_midi_polypressure_message (MIDI::Parser &, MIDI::EventTwoBytes *) |
virtual void | thread_init () |
virtual void | connect_session_signals () |
virtual void | port_registration_handler () |
virtual int | ports_acquire () |
virtual void | ports_release () |
void | drop () |
void | port_setup () |
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) |
XMLNode * | instant_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< MidiSurfaceRequest > | |
MidiSurfaceRequest * | get_request (RequestType) |
void | handle_ui_requests () |
void | send_request (MidiSurfaceRequest *) |
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 MIDISurface | |
bool | with_pad_filter |
bool | _in_use |
bool | _data_required |
std::string | port_name_prefix |
MIDI::Port * | _input_port |
MIDI::Port * | _output_port |
std::shared_ptr< ARDOUR::Port > | _async_in |
std::shared_ptr< ARDOUR::Port > | _async_out |
PBD::ScopedConnectionList | session_connections |
int | _connection_state |
PBD::ScopedConnectionList | port_connections |
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::Session * | session |
int | _tbank_route_width |
int | _tbank_row_height |
int | _tbank_start_route |
int | _tbank_start_row |
Protected Attributes inherited from AbstractUI< MidiSurfaceRequest > | |
RequestBufferMap | request_buffers |
std::list< MidiSurfaceRequest * > | 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 |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
typedef std::map<int,std::shared_ptr<Pad> > ArdourSurface::Push2::PadMap |
The "origin" or "root" of the note grid.
This controls whether the grid is "fixed" in terms of the notes that it plays (so changing the scale is effectively just an overlay), or "rooted" so the root note of the scale is in the bottom left.
Enumerator | |
---|---|
Fixed | Bottom left pad is always C, or as close as possible. |
Rooted | Bottom left pad is the scale root. |
Interval between vertically adjacent note pads ("layout").
The comments describe the ideal interval that is used in chromatic mode. For in-scale mode, they may be slightly adjusted, hence the more general enumerator names.
Enumerator | |
---|---|
Third | |
Fourth | Major third or 4 semitones. |
Fifth | Perfect fourth or 5 semitones. |
Sequential | Perfect fifth or 7 semitones. |
ArdourSurface::Push2::Push2 | ( | ARDOUR::Session & | ) |
ArdourSurface::Push2::~Push2 | ( | ) |
|
static |
|
privatevirtual |
Reimplemented from MIDISurface.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
static |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
inline |
Push2Layout* ArdourSurface::Push2::current_layout | ( | ) | const |
|
privatevirtual |
Implements MIDISurface.
|
privatevirtual |
Implements MIDISurface.
|
private |
|
private |
Gtkmm2ext::Color ArdourSurface::Push2::get_color | ( | ColorName | ) |
uint8_t ArdourSurface::Push2::get_color_index | ( | Gtkmm2ext::Color | rgba | ) |
|
virtual |
Reimplemented from ARDOUR::ControlProtocol.
|
virtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
inlinevirtual |
Reimplemented from ARDOUR::ControlProtocol.
|
private |
|
private |
|
virtual |
Implements MIDISurface.
std::shared_ptr<Button> ArdourSurface::Push2::lower_button_by_column | ( | uint32_t | col | ) |
|
static |
|
inline |
|
inline |
|
inline |
|
inline |
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
privatevirtual |
Reimplemented from MIDISurface.
|
private |
|
private |
|
virtual |
Implements MIDISurface.
std::shared_ptr<Pad> ArdourSurface::Push2::pad_by_xy | ( | int | x, |
int | y | ||
) |
|
privatevirtual |
Reimplemented from MIDISurface.
int ArdourSurface::Push2::pad_note | ( | int | row, |
int | col | ||
) | const |
|
inline |
|
static |
|
private |
|
private |
|
private |
|
inline |
|
private |
|
virtual |
Reimplemented from ARDOUR::ControlProtocol.
|
private |
|
private |
|
private |
|
private |
|
private |
void ArdourSurface::Push2::set_pad_note_kind | ( | Pad & | pad, |
PadNoteKind | kind | ||
) |
Set up a pad to represent a "kind" of note.
void ArdourSurface::Push2::set_pad_scale | ( | int | root, |
int | octave, | ||
MusicalMode::Type | mode, | ||
NoteGridOrigin | origin, | ||
RowInterval | row_interval, | ||
bool | inkey | ||
) |
void ArdourSurface::Push2::set_pad_scale_chromatic | ( | int | root, |
int | octave, | ||
MusicalMode::Type | mode, | ||
NoteGridOrigin | origin, | ||
int | vertical_semitones | ||
) |
Set a "chromatic" scale on the pads.
"Chromatic" mode is chromatic from left to right, and "tuned" to some interval from bottom up, like a stringed instrument. The default vertical interval is 5 semitones, or a perfect 4th, like strings on a bass guitar.
root | The root note in the lowest octave (at most 11). |
octave | The octave number of the "actual" root (at most 10). |
mode | The active musical mode (scale). |
origin | The note assigned to the bottom left pad |
vertical_semitones | The interval between rows in semitones. This mode guarantees that the vertical interval for all rows is always exactly this. |
void ArdourSurface::Push2::set_pad_scale_in_key | ( | int | root, |
int | octave, | ||
MusicalMode::Type | mode, | ||
NoteGridOrigin | origin, | ||
int | ideal_vertical_semitones | ||
) |
Set an "in-key" scale on the pads.
"In-key" mode shows only notes which are in the scale, so every pad is in the scale and there are no "spaces". This provides access to a wide range of notes in the scale, but no access to notes outside the scale at all.
root | The root note in the lowest octave (at most 11). |
octave | The octave number of the "actual" root (at most 10). |
mode | The active musical mode (scale). |
origin | The note assigned to the bottom left pad |
ideal_vertical_semitones | The ideal interval between rows in semitones. This is an "ideal" because it may not be possible to use exactly this interval for every row depending on the scale. It may be bumped up to the next note in the scale if necessary, so with this mode, rows are not guaranteed to all have the same vertical interval. |
|
private |
void ArdourSurface::Push2::set_pressure_mode | ( | PressureMode | ) |
|
virtual |
Reimplemented from MIDISurface.
|
private |
|
private |
|
private |
|
privatevirtual |
Reimplemented from MIDISurface.
void ArdourSurface::Push2::strip_buttons_off | ( | ) |
|
privatevirtual |
Implements ARDOUR::ControlProtocol.
|
virtual |
Reimplemented from ARDOUR::ControlProtocol.
void ArdourSurface::Push2::update_selection_color | ( | ) |
|
inline |
void ArdourSurface::Push2::use_previous_layout | ( | ) |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
mutableprivate |
PBD::Signal<void()> ArdourSurface::Push2::PadChange |
PBD::Signal<void(PressureMode)> ArdourSurface::Push2::PressureModeChange |
PBD::Signal<void()> ArdourSurface::Push2::ScaleChange |