ardour
Classes | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
MonitorSection Class Reference

#include <monitor_section.h>

Inheritance diagram for MonitorSection:
RouteUI AxisView Selectable PBD::ScopedConnectionList ARDOUR::SessionHandlePtr

Classes

struct  ChannelButtonSet
 

Public Member Functions

 MonitorSection (ARDOUR::Session *)
 
 ~MonitorSection ()
 
void set_session (ARDOUR::Session *)
 
Gtkmm2ext::TearOfftearoff () const
 
std::string state_id () const
 
- Public Member Functions inherited from RouteUI
 RouteUI (ARDOUR::Session *)
 
 RouteUI (boost::shared_ptr< ARDOUR::Route >, ARDOUR::Session *)
 
virtual ~RouteUI ()
 
Gdk::Color color () const
 
virtual void set_route (boost::shared_ptr< ARDOUR::Route >)
 
bool is_track () const
 
bool is_audio_track () const
 
bool is_midi_track () const
 
bool has_audio_outputs () const
 
boost::shared_ptr< ARDOUR::Routeroute () const
 
ARDOUR::RouteGrouproute_group () const
 
boost::shared_ptr< ARDOUR::Tracktrack () const
 
boost::shared_ptr
< ARDOUR::AudioTrack
audio_track () const
 
boost::shared_ptr
< ARDOUR::MidiTrack
midi_track () const
 
std::string name () const
 
void request_redraw ()
 
virtual void set_color (const Gdk::Color &c)
 
void choose_color ()
 
void send_blink (bool)
 
bool mute_press (GdkEventButton *)
 
bool mute_release (GdkEventButton *)
 
bool solo_press (GdkEventButton *)
 
bool solo_release (GdkEventButton *)
 
bool rec_enable_press (GdkEventButton *)
 
bool rec_enable_release (GdkEventButton *)
 
bool show_sends_press (GdkEventButton *)
 
bool show_sends_release (GdkEventButton *)
 
bool monitor_release (GdkEventButton *, ARDOUR::MonitorChoice)
 
bool monitor_input_press (GdkEventButton *)
 
bool monitor_input_release (GdkEventButton *)
 
bool monitor_disk_press (GdkEventButton *)
 
bool monitor_disk_release (GdkEventButton *)
 
void monitoring_changed ()
 
void update_monitoring_display ()
 
void edit_input_configuration ()
 
void edit_output_configuration ()
 
void step_gain_up ()
 
void step_gain_down ()
 
void page_gain_up ()
 
void page_gain_down ()
 
void build_sends_menu ()
 
void set_sends_gain_from_track ()
 
void set_sends_gain_to_zero ()
 
void set_sends_gain_to_unity ()
 
void create_sends (ARDOUR::Placement, bool)
 
void create_selected_sends (ARDOUR::Placement, bool)
 
void solo_changed (bool, void *)
 
void solo_changed_so_update_mute ()
 
void listen_changed (void *)
 
virtual void processors_changed (ARDOUR::RouteProcessorChange)
 
void route_rec_enable_changed ()
 
void session_rec_enable_changed ()
 
void build_solo_menu ()
 
void solo_isolated_toggle (void *, Gtk::CheckMenuItem *)
 
void toggle_solo_isolated (Gtk::CheckMenuItem *)
 
bool solo_isolate_button_release (GdkEventButton *)
 
bool solo_safe_button_release (GdkEventButton *)
 
void solo_safe_toggle (void *, Gtk::CheckMenuItem *)
 
void toggle_solo_safe (Gtk::CheckMenuItem *)
 
void toggle_mute_menu (ARDOUR::MuteMaster::MutePoint, Gtk::CheckMenuItem *)
 
void muting_change ()
 
void build_mute_menu (void)
 
void init_mute_menu (ARDOUR::MuteMaster::MutePoint, Gtk::CheckMenuItem *)
 
int set_color_from_route ()
 
void route_rename ()
 
virtual void property_changed (const PBD::PropertyChange &)
 
void route_removed ()
 
virtual void route_active_changed ()
 
void set_route_active (bool, bool)
 
void build_record_menu ()
 
void toggle_step_edit ()
 
virtual void step_edit_changed (bool)
 
virtual void polarity_changed ()
 
void toggle_denormal_protection ()
 
virtual void denormal_protection_changed ()
 
void disconnect_input ()
 
void disconnect_output ()
 
virtual void blink_rec_display (bool onoff)
 
void update_mute_display ()
 
void update_solo_display ()
 
virtual void map_frozen ()
 
void adjust_latency ()
 
void save_as_template ()
 
void open_remote_control_id_dialog ()
 
void comment_editor_done_editing ()
 
void setup_comment_editor ()
 
void open_comment_editor ()
 
void toggle_comment_editor ()
 
gint comment_key_release_handler (GdkEventKey *)
 
void comment_changed (void *src)
 
void comment_edited ()
 
- Public Member Functions inherited from AxisView
Gdk::Color color () const
 
ARDOUR::Sessionsession () const
 
void set_old_order_key (uint32_t ok)
 
uint32_t old_order_key () const
 
std::string gui_property (const std::string &property_name) const
 
template<typename T >
void set_gui_property (const std::string &property_name, const T &value)
 
void cleanup_gui_properties ()
 
bool marked_for_display () const
 
virtual bool set_marked_for_display (bool)
 
void clear_property_cache ()
 
- Public Member Functions inherited from Selectable
 Selectable ()
 
virtual ~Selectable ()
 
virtual void set_selected (bool yn)
 
bool get_selected () const
 
- Public Member Functions inherited from PBD::ScopedConnectionList
 ScopedConnectionList ()
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 
- Public Member Functions inherited from ARDOUR::SessionHandlePtr
 SessionHandlePtr (ARDOUR::Session *s)
 
 SessionHandlePtr ()
 
virtual ~SessionHandlePtr ()
 

Private Types

typedef std::vector
< ChannelButtonSet * > 
ChannelButtons
 

Private Member Functions

void maybe_add_bundle_to_output_menu (boost::shared_ptr< ARDOUR::Bundle >, ARDOUR::BundleList const &)
 
void bundle_output_chosen (boost::shared_ptr< ARDOUR::Bundle >)
 
void output_button_resized (Gtk::Allocation &)
 
void update_output_display ()
 
void disconnect_output ()
 
void edit_output_configuration ()
 
void populate_buttons ()
 
void map_state ()
 
void register_actions ()
 
void cut_channel (uint32_t)
 
void dim_channel (uint32_t)
 
void solo_channel (uint32_t)
 
void invert_channel (uint32_t)
 
void dim_all ()
 
void cut_all ()
 
void mono ()
 
void toggle_exclusive_solo ()
 
void set_button_names ()
 
void toggle_mute_overrides_solo ()
 
void dim_level_changed ()
 
void solo_boost_changed ()
 
void gain_value_changed ()
 
gint output_press (GdkEventButton *)
 
gint output_release (GdkEventButton *)
 
void solo_use_in_place ()
 
void solo_use_afl ()
 
void solo_use_pfl ()
 
void do_blink (bool)
 
void solo_blink (bool)
 
void audition_blink (bool)
 
bool cancel_solo (GdkEventButton *)
 
bool cancel_isolate (GdkEventButton *)
 
bool cancel_audition (GdkEventButton *)
 
void update_solo_model ()
 
void parameter_changed (std::string)
 
void isolated_changed ()
 
void assign_controllables ()
 
void port_connected_or_disconnected (boost::weak_ptr< ARDOUR::Port >, boost::weak_ptr< ARDOUR::Port >)
 

Private Attributes

Gtk::VBox vpacker
 
Gtk::HBox hpacker
 
Gtk::VBox upper_packer
 
Gtk::VBox lower_packer
 
Gtkmm2ext::TearOff_tearoff
 
Gtk::HBox channel_table_packer
 
Gtk::HBox table_hpacker
 
Gtk::Table channel_table
 
Gtk::Table channel_table_header
 
Gtk::ScrolledWindow channel_table_scroller
 
Gtk::Viewport channel_table_viewport
 
Glib::RefPtr< Gtk::SizeGroup > channel_size_group
 
ChannelButtons _channel_buttons
 
ArdourKnobgain_control
 
ArdourKnobdim_control
 
ArdourKnobsolo_boost_control
 
ArdourKnobsolo_cut_control
 
ArdourDisplaygain_display
 
ArdourDisplaydim_display
 
ArdourDisplaysolo_boost_display
 
ArdourDisplaysolo_cut_display
 
std::list< boost::shared_ptr
< ARDOUR::Bundle > > 
output_menu_bundles
 
Gtk::Menu output_menu
 
MonitorSelectorWindow_output_selector
 
ArdourButtonoutput_button
 
boost::shared_ptr
< ARDOUR::MonitorProcessor
_monitor
 
boost::shared_ptr< ARDOUR::Route_route
 
ArdourButton solo_in_place_button
 
ArdourButton afl_button
 
ArdourButton pfl_button
 
Gtk::HBox solo_model_box
 
ArdourButton cut_all_button
 
ArdourButton dim_all_button
 
ArdourButton mono_button
 
ArdourButton rude_solo_button
 
ArdourButton rude_iso_button
 
ArdourButton rude_audition_button
 
ArdourButton exclusive_solo_button
 
ArdourButton solo_mute_override_button
 
PBD::ScopedConnection config_connection
 
PBD::ScopedConnectionList control_connections
 
PBD::ScopedConnection _output_changed_connection
 
bool _inhibit_solo_model_update
 

Static Private Attributes

static Glib::RefPtr
< Gtk::ActionGroup > 
monitor_actions
 

Additional Inherited Members

- Static Public Member Functions inherited from RouteUI
static Gtkmm2ext::ActiveState solo_active_state (boost::shared_ptr< ARDOUR::Route >)
 
static Gtkmm2ext::ActiveState solo_isolate_active_state (boost::shared_ptr< ARDOUR::Route >)
 
static Gtkmm2ext::ActiveState solo_safe_active_state (boost::shared_ptr< ARDOUR::Route >)
 
static Gtkmm2ext::ActiveState mute_active_state (ARDOUR::Session *, boost::shared_ptr< ARDOUR::Route >)
 
- Static Public Member Functions inherited from AxisView
static GUIObjectStategui_object_state ()
 
- Public Attributes inherited from RouteUI
boost::shared_ptr< ARDOUR::Route_route
 
bool ignore_toggle
 
bool wait_for_release
 
bool multiple_mute_change
 
bool multiple_solo_change
 
Gtk::HBox _invert_button_box
 
ArdourButtonmute_button
 
ArdourButtonsolo_button
 
ArdourButtonrec_enable_button
 
ArdourButtonshow_sends_button
 
ArdourButtonmonitor_input_button
 
ArdourButtonmonitor_disk_button
 
Glib::RefPtr< Gdk::Pixbuf > solo_safe_pixbuf
 
ArdourButtonsolo_safe_led
 
ArdourButtonsolo_isolated_led
 
Gtk::Label monitor_input_button_label
 
Gtk::Label monitor_disk_button_label
 
sigc::connection send_blink_connection
 
sigc::connection rec_blink_connection
 
Gtk::Menu * mute_menu
 
Gtk::Menu * solo_menu
 
Gtk::Menu * sends_menu
 
boost::shared_ptr
< ARDOUR::Delivery
_current_delivery
 
Gtk::CheckMenuItem * pre_fader_mute_check
 
Gtk::CheckMenuItem * post_fader_mute_check
 
Gtk::CheckMenuItem * listen_mute_check
 
Gtk::CheckMenuItem * main_mute_check
 
Gtk::CheckMenuItem * solo_safe_check
 
Gtk::CheckMenuItem * solo_isolated_check
 
Gtk::Menu * record_menu
 
Gtk::CheckMenuItem * step_edit_item
 
Gtk::CheckMenuItem * denormal_menu_item
 
bool ignore_comment_edit
 
- Public Attributes inherited from AxisView
sigc::signal< void > Hiding
 
- Static Public Attributes inherited from RouteUI
static PBD::Signal1< void,
boost::shared_ptr
< ARDOUR::Route > > 
BusSendDisplayChanged
 
- Protected Member Functions inherited from RouteUI
void init ()
 
void reset ()
 
void self_delete ()
 
virtual void start_step_editing ()
 
virtual void stop_step_editing ()
 
void set_invert_sensitive (bool)
 
bool verify_new_route_name (const std::string &name)
 
void route_gui_changed (std::string)
 
virtual void route_color_changed ()
 
virtual void bus_send_display_changed (boost::shared_ptr< ARDOUR::Route >)
 
- Protected Member Functions inherited from AxisView
 AxisView (ARDOUR::Session *sess)
 
virtual ~AxisView ()
 
- Protected Member Functions inherited from ARDOUR::SessionHandlePtr
virtual void session_going_away ()
 
- Static Protected Member Functions inherited from AxisView
static Gdk::Color unique_random_color ()
 
- Protected Attributes inherited from RouteUI
ArdourWindowcomment_window
 
Gtk::TextView * comment_area
 
IOSelectorWindowinput_selector
 
IOSelectorWindowoutput_selector
 
PBD::ScopedConnectionList route_connections
 
bool self_destruct
 
- Protected Attributes inherited from AxisView
Gdk::Color _color
 
Gtk::Label name_label
 
boost::unordered_map
< std::string, std::string > 
property_hashtable
 
uint32_t _old_order_key
 
- Protected Attributes inherited from Selectable
bool _selected
 
- Protected Attributes inherited from ARDOUR::SessionHandlePtr
ARDOUR::Session_session
 
PBD::ScopedConnectionList _session_connections
 
- Static Protected Attributes inherited from AxisView
static std::list< Gdk::Color > used_colors
 

Detailed Description

Definition at line 40 of file monitor_section.h.

Member Typedef Documentation

typedef std::vector<ChannelButtonSet*> MonitorSection::ChannelButtons
private

Definition at line 76 of file monitor_section.h.

Constructor & Destructor Documentation

MonitorSection::MonitorSection ( ARDOUR::Session s)

Definition at line 60 of file monitor_section.cc.

MonitorSection::~MonitorSection ( )

Definition at line 438 of file monitor_section.cc.

Member Function Documentation

void MonitorSection::assign_controllables ( )
private

Definition at line 1141 of file monitor_section.cc.

void MonitorSection::audition_blink ( bool  onoff)
private

Definition at line 1043 of file monitor_section.cc.

void MonitorSection::bundle_output_chosen ( boost::shared_ptr< ARDOUR::Bundle c)
private

Definition at line 1227 of file monitor_section.cc.

bool MonitorSection::cancel_audition ( GdkEventButton *  )
private

Definition at line 1106 of file monitor_section.cc.

bool MonitorSection::cancel_isolate ( GdkEventButton *  )
private

Definition at line 1095 of file monitor_section.cc.

bool MonitorSection::cancel_solo ( GdkEventButton *  )
private

Definition at line 1081 of file monitor_section.cc.

void MonitorSection::cut_all ( )
private

Definition at line 669 of file monitor_section.cc.

void MonitorSection::cut_channel ( uint32_t  chn)
private

Definition at line 697 of file monitor_section.cc.

void MonitorSection::dim_all ( )
private

Definition at line 654 of file monitor_section.cc.

void MonitorSection::dim_channel ( uint32_t  chn)
private

Definition at line 716 of file monitor_section.cc.

void MonitorSection::dim_level_changed ( )
private
void MonitorSection::disconnect_output ( )
private

Definition at line 1496 of file monitor_section.cc.

void MonitorSection::do_blink ( bool  onoff)
private

Definition at line 1036 of file monitor_section.cc.

void MonitorSection::edit_output_configuration ( )
private

Definition at line 1504 of file monitor_section.cc.

void MonitorSection::gain_value_changed ( )
private
void MonitorSection::invert_channel ( uint32_t  chn)
private

Definition at line 756 of file monitor_section.cc.

void MonitorSection::isolated_changed ( )
private
void MonitorSection::map_state ( )
private

Definition at line 955 of file monitor_section.cc.

void MonitorSection::maybe_add_bundle_to_output_menu ( boost::shared_ptr< ARDOUR::Bundle b,
ARDOUR::BundleList const &   
)
private

Definition at line 1199 of file monitor_section.cc.

void MonitorSection::mono ( )
private

Definition at line 683 of file monitor_section.cc.

void MonitorSection::output_button_resized ( Gtk::Allocation &  alloc)
private

Definition at line 1328 of file monitor_section.cc.

gint MonitorSection::output_press ( GdkEventButton *  ev)
private

Definition at line 1258 of file monitor_section.cc.

gint MonitorSection::output_release ( GdkEventButton *  ev)
private

Definition at line 1240 of file monitor_section.cc.

void MonitorSection::parameter_changed ( std::string  name)
private

Definition at line 1123 of file monitor_section.cc.

void MonitorSection::populate_buttons ( )
private

Definition at line 551 of file monitor_section.cc.

void MonitorSection::port_connected_or_disconnected ( boost::weak_ptr< ARDOUR::Port wa,
boost::weak_ptr< ARDOUR::Port wb 
)
private

Definition at line 1513 of file monitor_section.cc.

void MonitorSection::register_actions ( )
private

Definition at line 775 of file monitor_section.cc.

void MonitorSection::set_button_names ( )
inlineprivatevirtual

Implements RouteUI.

Definition at line 118 of file monitor_section.h.

void MonitorSection::set_session ( ARDOUR::Session s)
virtual

Reimplemented from ARDOUR::SessionHandlePtr.

Definition at line 462 of file monitor_section.cc.

void MonitorSection::solo_blink ( bool  onoff)
private

Definition at line 1057 of file monitor_section.cc.

void MonitorSection::solo_boost_changed ( )
private
void MonitorSection::solo_channel ( uint32_t  chn)
private

Definition at line 736 of file monitor_section.cc.

void MonitorSection::solo_use_afl ( )
private

Definition at line 874 of file monitor_section.cc.

void MonitorSection::solo_use_in_place ( )
private

Definition at line 847 of file monitor_section.cc.

void MonitorSection::solo_use_pfl ( )
private

Definition at line 894 of file monitor_section.cc.

string MonitorSection::state_id ( ) const
virtual

Implements AxisView.

Definition at line 1193 of file monitor_section.cc.

Gtkmm2ext::TearOff& MonitorSection::tearoff ( ) const
inline

Definition at line 48 of file monitor_section.h.

void MonitorSection::toggle_exclusive_solo ( )
private

Definition at line 625 of file monitor_section.cc.

void MonitorSection::toggle_mute_overrides_solo ( )
private

Definition at line 640 of file monitor_section.cc.

void MonitorSection::update_output_display ( )
private

Definition at line 1334 of file monitor_section.cc.

void MonitorSection::update_solo_model ( )
private

Definition at line 914 of file monitor_section.cc.

Member Data Documentation

ChannelButtons MonitorSection::_channel_buttons
private

Definition at line 77 of file monitor_section.h.

bool MonitorSection::_inhibit_solo_model_update
private

Definition at line 158 of file monitor_section.h.

boost::shared_ptr<ARDOUR::MonitorProcessor> MonitorSection::_monitor
private

Definition at line 104 of file monitor_section.h.

PBD::ScopedConnection MonitorSection::_output_changed_connection
private

Definition at line 156 of file monitor_section.h.

MonitorSelectorWindow* MonitorSection::_output_selector
private

Definition at line 91 of file monitor_section.h.

boost::shared_ptr<ARDOUR::Route> MonitorSection::_route
private

Definition at line 105 of file monitor_section.h.

Gtkmm2ext::TearOff* MonitorSection::_tearoff
private

Definition at line 57 of file monitor_section.h.

ArdourButton MonitorSection::afl_button
private

Definition at line 127 of file monitor_section.h.

Glib::RefPtr<Gtk::SizeGroup> MonitorSection::channel_size_group
private

Definition at line 65 of file monitor_section.h.

Gtk::Table MonitorSection::channel_table
private

Definition at line 61 of file monitor_section.h.

Gtk::Table MonitorSection::channel_table_header
private

Definition at line 62 of file monitor_section.h.

Gtk::HBox MonitorSection::channel_table_packer
private

Definition at line 59 of file monitor_section.h.

Gtk::ScrolledWindow MonitorSection::channel_table_scroller
private

Definition at line 63 of file monitor_section.h.

Gtk::Viewport MonitorSection::channel_table_viewport
private

Definition at line 64 of file monitor_section.h.

PBD::ScopedConnection MonitorSection::config_connection
private

Definition at line 154 of file monitor_section.h.

PBD::ScopedConnectionList MonitorSection::control_connections
private

Definition at line 155 of file monitor_section.h.

ArdourButton MonitorSection::cut_all_button
private

Definition at line 135 of file monitor_section.h.

ArdourButton MonitorSection::dim_all_button
private

Definition at line 136 of file monitor_section.h.

ArdourKnob* MonitorSection::dim_control
private

Definition at line 80 of file monitor_section.h.

ArdourDisplay* MonitorSection::dim_display
private

Definition at line 85 of file monitor_section.h.

ArdourButton MonitorSection::exclusive_solo_button
private

Definition at line 141 of file monitor_section.h.

ArdourKnob* MonitorSection::gain_control
private

Definition at line 79 of file monitor_section.h.

ArdourDisplay* MonitorSection::gain_display
private

Definition at line 84 of file monitor_section.h.

Gtk::HBox MonitorSection::hpacker
private

Definition at line 54 of file monitor_section.h.

Gtk::VBox MonitorSection::lower_packer
private

Definition at line 56 of file monitor_section.h.

Glib::RefPtr< ActionGroup > MonitorSection::monitor_actions
staticprivate

Definition at line 107 of file monitor_section.h.

ArdourButton MonitorSection::mono_button
private

Definition at line 137 of file monitor_section.h.

ArdourButton* MonitorSection::output_button
private

Definition at line 92 of file monitor_section.h.

Gtk::Menu MonitorSection::output_menu
private

Definition at line 90 of file monitor_section.h.

std::list<boost::shared_ptr<ARDOUR::Bundle> > MonitorSection::output_menu_bundles
private

Definition at line 89 of file monitor_section.h.

ArdourButton MonitorSection::pfl_button
private

Definition at line 128 of file monitor_section.h.

ArdourButton MonitorSection::rude_audition_button
private

Definition at line 140 of file monitor_section.h.

ArdourButton MonitorSection::rude_iso_button
private

Definition at line 139 of file monitor_section.h.

ArdourButton MonitorSection::rude_solo_button
private

Definition at line 138 of file monitor_section.h.

ArdourKnob* MonitorSection::solo_boost_control
private

Definition at line 81 of file monitor_section.h.

ArdourDisplay* MonitorSection::solo_boost_display
private

Definition at line 86 of file monitor_section.h.

ArdourKnob* MonitorSection::solo_cut_control
private

Definition at line 82 of file monitor_section.h.

ArdourDisplay* MonitorSection::solo_cut_display
private

Definition at line 87 of file monitor_section.h.

ArdourButton MonitorSection::solo_in_place_button
private

Definition at line 126 of file monitor_section.h.

Gtk::HBox MonitorSection::solo_model_box
private

Definition at line 129 of file monitor_section.h.

ArdourButton MonitorSection::solo_mute_override_button
private

Definition at line 142 of file monitor_section.h.

Gtk::HBox MonitorSection::table_hpacker
private

Definition at line 60 of file monitor_section.h.

Gtk::VBox MonitorSection::upper_packer
private

Definition at line 55 of file monitor_section.h.

Gtk::VBox MonitorSection::vpacker
private

Definition at line 53 of file monitor_section.h.


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