Ardour  8.7-15-gadf511264b
RecorderUI Class Reference

#include <recorder_ui.h>

Inheritance diagram for RecorderUI:
[legend]

Classes

class  InputPort
 
struct  InputPortPtrSort
 
class  RecRuler
 

Public Member Functions

 RecorderUI ()
 
 ~RecorderUI ()
 
void set_session (ARDOUR::Session *)
 
void cleanup ()
 
XMLNodeget_state () const
 
int set_state (const XMLNode &, int)
 
Gtk::Windowuse_own_window (bool and_fill_it)
 
void spill_port (std::string const &)
 
void add_track (std::string const &)
 
std::list< TrackRecordAxis * > visible_recorders () const
 
- Public Member Functions inherited from ArdourWidgets::Tabbable
 Tabbable (Gtk::Widget &, const std::string &user_visible_name, std::string const &untranslated_name, bool tabbed_by_default=true)
 
 ~Tabbable ()
 
void add_to_notebook (Gtk::Notebook &notebook)
 
void make_visible ()
 
void make_invisible ()
 
void change_visibility ()
 
void attach ()
 
void detach ()
 
Gtk::Widgetcontents () const
 
Gtk::Windowget (bool create=false)
 
Gtk::Windowown_window ()
 
void set_default_tabbed (bool yn)
 
virtual void show_window ()
 
bool window_visible () const
 
bool tabbed () const
 
bool tabbed_by_default () const
 
Gtk::Windowcurrent_toplevel () const
 
Gtk::Notebooktab_root_drop ()
 
int set_state (const XMLNode &, int version)
 
XMLNodeget_state () const
 
- Public Member Functions inherited from Gtkmm2ext::WindowProxy
 WindowProxy (const std::string &name, const std::string &menu_name)
 
 WindowProxy (const std::string &name, const std::string &menu_name, const XMLNode &)
 
virtual ~WindowProxy ()
 
void show ()
 
void show_all ()
 
void hide ()
 
void present ()
 
void maybe_show ()
 
virtual bool visible () const
 
virtual bool fully_visible () const
 
const std::string & name () const
 
const std::string & menu_name () const
 
std::string action_name () const
 
void set_action (Glib::RefPtr< Gtk::Action >)
 
Glib::RefPtr< Gtk::Actionaction () const
 
void drop_window ()
 
void use_window (Gtk::Window &)
 
void set_transient_for (Gtk::Window &)
 
void set_state_mask (StateMask)
 
StateMask state_mask () const
 
 operator bool () const
 
- 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::Destructible
virtual ~Destructible ()
 
virtual void drop_references ()
 
- Public Member Functions inherited from ARDOUR::SessionHandlePtr
 SessionHandlePtr (ARDOUR::Session *s)
 
 SessionHandlePtr ()
 
virtual ~SessionHandlePtr ()
 
virtual ARDOUR::Sessionsession () const
 
- Public Member Functions inherited from PBD::ScopedConnectionList
 ScopedConnectionList ()
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 

Private Types

typedef std::map< std::string, std::shared_ptr< InputPort > > InputPortMap
 
typedef std::set< std::shared_ptr< InputPort >, InputPortPtrSortInputPortSet
 
typedef std::set< std::shared_ptr< ARDOUR::IOPlug > > IOPlugSet
 

Private Member Functions

void load_bindings ()
 
void register_actions ()
 
void update_title ()
 
void session_going_away ()
 
void parameter_changed (std::string const &)
 
void presentation_info_changed (PBD::PropertyChange const &)
 
void gui_extents_changed ()
 
void regions_changed (std::shared_ptr< ARDOUR::RegionList >, PBD::PropertyChange const &)
 
void start_updating ()
 
void stop_updating ()
 
bool update_meters ()
 
void add_or_remove_io (ARDOUR::DataType, std::vector< std::string >, bool)
 
void io_plugins_changed ()
 
void io_plugin_add (std::shared_ptr< ARDOUR::IOPlug >)
 
void io_plugin_going_away (std::weak_ptr< ARDOUR::IOPlug >)
 
void post_add_remove (bool)
 
void update_io_widget_labels ()
 
void initial_track_display ()
 
void add_routes (ARDOUR::RouteList &)
 
void remove_route (TrackRecordAxis *)
 
void tra_name_edit (TrackRecordAxis *, bool)
 
void update_rec_table_layout ()
 
void update_spacer_width (Gtk::Allocation &, TrackRecordAxis *)
 
void tabbed_changed (bool)
 
void set_connections (std::string const &)
 
void port_connected_or_disconnected (std::string, std::string)
 
void port_pretty_name_changed (std::string)
 
void meter_area_size_allocate (Gtk::Allocation &)
 
void meter_area_size_request (GtkRequisition *)
 
void meter_area_layout ()
 
bool scroller_button_event (GdkEventButton *)
 
void arm_all ()
 
void arm_none ()
 
void rec_undo ()
 
void rec_redo ()
 
void peak_reset ()
 
void update_sensitivity ()
 
void update_recordstate ()
 
void update_monitorstate (std::string, bool)
 
void new_track_for_port (ARDOUR::DataType, std::string const &)
 

Static Private Member Functions

static int calc_columns (int child_width, int parent_width)
 

Private Attributes

Gtkmm2ext::Bindingsbindings
 
Gtk::VBox _content
 
Gtk::HBox _toolbar
 
Gtk::Table _button_table
 
ArdourWidgets::VPane _pane
 
Gtk::ScrolledWindow _rec_scroller
 
Gtk::VBox _rec_container
 
Gtk::HBox _rec_groups
 
Gtk::VBox _rec_area
 
Gtk::ScrolledWindow _meter_scroller
 
Gtk::VBox _meter_area
 
Gtk::Table _meter_table
 
Gtk::EventBox _scroller_base
 
ArdourWidgets::ArdourHSpacer _toolbar_sep
 
Gtk::Label _recs_label
 
ArdourWidgets::ArdourButton _btn_rec_all
 
ArdourWidgets::ArdourButton _btn_rec_none
 
ArdourWidgets::ArdourButton _btn_rec_forget
 
ArdourWidgets::ArdourButton _btn_peak_reset
 
ArdourWidgets::ArdourButton _monitor_in_button
 
ArdourWidgets::ArdourButton _monitor_disk_button
 
ArdourWidgets::ArdourButton _btn_new_plist
 
ArdourWidgets::ArdourButton _btn_new_plist_rec
 
ArdourWidgets::ArdourButton _auto_input_button
 
DurationInfoBox _duration_info_box
 
XrunInfoBox _xrun_info_box
 
RemainInfoBox _remain_info_box
 
TransportControlUI _transport_ctrl
 
Glib::RefPtr< Gtk::SizeGroup_toolbar_button_height
 
Glib::RefPtr< Gtk::SizeGroup_toolbar_recarm_width
 
Glib::RefPtr< Gtk::SizeGroup_toolbar_monitoring_width
 
int _meter_box_width
 
int _meter_area_cols
 
bool _vertical
 
std::set< std::string > _spill_port_names
 
RecRuler _ruler
 
Gtk::EventBox _space
 
Gtk::HBox _ruler_box
 
ArdourWidgets::ArdourHSpacer _ruler_sep
 
RecorderGroupTabs_rec_group_tabs
 
InputPortMap _input_ports
 
std::list< TrackRecordAxis * > _recorders
 
std::list< TrackRecordAxis * > _visible_recorders
 
IOPlugSet _ioplugins
 
sigc::connection _fast_screen_update_connection
 
sigc::connection _ruler_width_update_connection
 
PBD::ScopedConnectionList _engine_connections
 
PBD::ScopedConnection _monitor_connection
 
PBD::ScopedConnectionList _going_away_connections
 

Additional Inherited Members

- Public Types inherited from Gtkmm2ext::WindowProxy
enum  StateMask { Position = 0x1 , Size = 0x2 }
 
- Static Public Member Functions inherited from ArdourWidgets::Tabbable
static std::string xml_node_name ()
 
- Static Public Member Functions inherited from Gtkmm2ext::WindowProxy
static std::string xml_node_name ()
 
- Public Attributes inherited from ArdourWidgets::Tabbable
sigc::signal1< void, Tabbable & > StateChange
 
- Public Attributes inherited from Gtkmm2ext::WindowProxy
sigc::signal0< void > signal_map
 
sigc::signal0< void > signal_unmap
 
- Public Attributes inherited from PBD::Stateful
PBD::Signal1< void, const PropertyChange & > PropertyChanged
 
- Public Attributes inherited from PBD::Destructible
PBD::Signal0< void > Destroyed
 
PBD::Signal0< void > DropReferences
 
- Static Public Attributes inherited from PBD::Stateful
static int current_state_version
 
static int loading_state_version
 
- Protected Member Functions inherited from ArdourWidgets::Tabbable
bool delete_event_handler (GdkEventAny *ev)
 
- Protected Member Functions inherited from Gtkmm2ext::WindowProxy
void save_pos_and_size ()
 
void set_pos_and_size ()
 
void set_pos ()
 
virtual bool configure_handler (GdkEventConfigure *)
 
void map_handler ()
 
void unmap_handler ()
 
virtual void setup ()
 
void toggle ()
 
- 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 Attributes inherited from ArdourWidgets::Tabbable
sigc::signal1< void, bool > signal_tabbed_changed
 
- Protected Attributes inherited from Gtkmm2ext::WindowProxy
std::string _name
 
std::string _menu_name
 
Glib::RefPtr< Gtk::Action_action
 
Gtk::Window_window
 
bool _visible
 true if the window should be visible on startup More...
 
int _x_off
 x position More...
 
int _y_off
 y position More...
 
int _width
 width More...
 
int _height
 height More...
 
Gtkmm2ext::VisibilityTrackervistracker
 
StateMask _state_mask
 
sigc::connection delete_connection
 
sigc::connection configure_connection
 
sigc::connection map_connection
 
sigc::connection unmap_connection
 
- 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 ARDOUR::SessionHandlePtr
ARDOUR::Session_session
 
PBD::ScopedConnectionList _session_connections
 

Detailed Description

Definition at line 60 of file recorder_ui.h.

Member Typedef Documentation

◆ InputPortMap

typedef std::map<std::string, std::shared_ptr<InputPort> > RecorderUI::InputPortMap
private

Definition at line 258 of file recorder_ui.h.

◆ InputPortSet

typedef std::set<std::shared_ptr<InputPort>, InputPortPtrSort> RecorderUI::InputPortSet
private

Definition at line 259 of file recorder_ui.h.

◆ IOPlugSet

typedef std::set<std::shared_ptr<ARDOUR::IOPlug> > RecorderUI::IOPlugSet
private

Definition at line 260 of file recorder_ui.h.

Constructor & Destructor Documentation

◆ RecorderUI()

RecorderUI::RecorderUI ( )

◆ ~RecorderUI()

RecorderUI::~RecorderUI ( )

Member Function Documentation

◆ add_or_remove_io()

void RecorderUI::add_or_remove_io ( ARDOUR::DataType  ,
std::vector< std::string >  ,
bool   
)
private

◆ add_routes()

void RecorderUI::add_routes ( ARDOUR::RouteList )
private

◆ add_track()

void RecorderUI::add_track ( std::string const &  )

◆ arm_all()

void RecorderUI::arm_all ( )
private

◆ arm_none()

void RecorderUI::arm_none ( )
private

◆ calc_columns()

static int RecorderUI::calc_columns ( int  child_width,
int  parent_width 
)
staticprivate

◆ cleanup()

void RecorderUI::cleanup ( )

◆ get_state()

XMLNode& RecorderUI::get_state ( ) const
virtual

Reimplemented from Gtkmm2ext::WindowProxy.

◆ gui_extents_changed()

void RecorderUI::gui_extents_changed ( )
private

◆ initial_track_display()

void RecorderUI::initial_track_display ( )
private

◆ io_plugin_add()

void RecorderUI::io_plugin_add ( std::shared_ptr< ARDOUR::IOPlug )
private

◆ io_plugin_going_away()

void RecorderUI::io_plugin_going_away ( std::weak_ptr< ARDOUR::IOPlug )
private

◆ io_plugins_changed()

void RecorderUI::io_plugins_changed ( )
private

◆ load_bindings()

void RecorderUI::load_bindings ( )
private

◆ meter_area_layout()

void RecorderUI::meter_area_layout ( )
private

◆ meter_area_size_allocate()

void RecorderUI::meter_area_size_allocate ( Gtk::Allocation )
private

◆ meter_area_size_request()

void RecorderUI::meter_area_size_request ( GtkRequisition )
private

◆ new_track_for_port()

void RecorderUI::new_track_for_port ( ARDOUR::DataType  ,
std::string const &   
)
private

◆ parameter_changed()

void RecorderUI::parameter_changed ( std::string const &  )
private

◆ peak_reset()

void RecorderUI::peak_reset ( )
private

◆ port_connected_or_disconnected()

void RecorderUI::port_connected_or_disconnected ( std::string  ,
std::string   
)
private

◆ port_pretty_name_changed()

void RecorderUI::port_pretty_name_changed ( std::string  )
private

◆ post_add_remove()

void RecorderUI::post_add_remove ( bool  )
private

◆ presentation_info_changed()

void RecorderUI::presentation_info_changed ( PBD::PropertyChange const &  )
private

◆ rec_redo()

void RecorderUI::rec_redo ( )
private

◆ rec_undo()

void RecorderUI::rec_undo ( )
private

◆ regions_changed()

void RecorderUI::regions_changed ( std::shared_ptr< ARDOUR::RegionList ,
PBD::PropertyChange const &   
)
private

◆ register_actions()

void RecorderUI::register_actions ( )
private

◆ remove_route()

void RecorderUI::remove_route ( TrackRecordAxis )
private

◆ scroller_button_event()

bool RecorderUI::scroller_button_event ( GdkEventButton )
private

◆ session_going_away()

void RecorderUI::session_going_away ( )
privatevirtual

Reimplemented from ARDOUR::SessionHandlePtr.

◆ set_connections()

void RecorderUI::set_connections ( std::string const &  )
private

◆ set_session()

void RecorderUI::set_session ( ARDOUR::Session )
virtual

Reimplemented from ARDOUR::SessionHandlePtr.

◆ set_state()

int RecorderUI::set_state ( const XMLNode ,
int   
)
virtual

Reimplemented from Gtkmm2ext::WindowProxy.

◆ spill_port()

void RecorderUI::spill_port ( std::string const &  )

◆ start_updating()

void RecorderUI::start_updating ( )
private

◆ stop_updating()

void RecorderUI::stop_updating ( )
private

◆ tabbed_changed()

void RecorderUI::tabbed_changed ( bool  )
private

◆ tra_name_edit()

void RecorderUI::tra_name_edit ( TrackRecordAxis ,
bool   
)
private

◆ update_io_widget_labels()

void RecorderUI::update_io_widget_labels ( )
private

◆ update_meters()

bool RecorderUI::update_meters ( )
private

◆ update_monitorstate()

void RecorderUI::update_monitorstate ( std::string  ,
bool   
)
private

◆ update_rec_table_layout()

void RecorderUI::update_rec_table_layout ( )
private

◆ update_recordstate()

void RecorderUI::update_recordstate ( )
private

◆ update_sensitivity()

void RecorderUI::update_sensitivity ( )
private

◆ update_spacer_width()

void RecorderUI::update_spacer_width ( Gtk::Allocation ,
TrackRecordAxis  
)
private

◆ update_title()

void RecorderUI::update_title ( )
private

◆ use_own_window()

Gtk::Window* RecorderUI::use_own_window ( bool  and_fill_it)
virtual

Reimplemented from ArdourWidgets::Tabbable.

◆ visible_recorders()

std::list<TrackRecordAxis*> RecorderUI::visible_recorders ( ) const

Member Data Documentation

◆ _auto_input_button

ArdourWidgets::ArdourButton RecorderUI::_auto_input_button
private

Definition at line 154 of file recorder_ui.h.

◆ _btn_new_plist

ArdourWidgets::ArdourButton RecorderUI::_btn_new_plist
private

Definition at line 152 of file recorder_ui.h.

◆ _btn_new_plist_rec

ArdourWidgets::ArdourButton RecorderUI::_btn_new_plist_rec
private

Definition at line 153 of file recorder_ui.h.

◆ _btn_peak_reset

ArdourWidgets::ArdourButton RecorderUI::_btn_peak_reset
private

Definition at line 149 of file recorder_ui.h.

◆ _btn_rec_all

ArdourWidgets::ArdourButton RecorderUI::_btn_rec_all
private

Definition at line 146 of file recorder_ui.h.

◆ _btn_rec_forget

ArdourWidgets::ArdourButton RecorderUI::_btn_rec_forget
private

Definition at line 148 of file recorder_ui.h.

◆ _btn_rec_none

ArdourWidgets::ArdourButton RecorderUI::_btn_rec_none
private

Definition at line 147 of file recorder_ui.h.

◆ _button_table

Gtk::Table RecorderUI::_button_table
private

Definition at line 133 of file recorder_ui.h.

◆ _content

Gtk::VBox RecorderUI::_content
private

Definition at line 131 of file recorder_ui.h.

◆ _duration_info_box

DurationInfoBox RecorderUI::_duration_info_box
private

Definition at line 155 of file recorder_ui.h.

◆ _engine_connections

PBD::ScopedConnectionList RecorderUI::_engine_connections
private

Definition at line 275 of file recorder_ui.h.

◆ _fast_screen_update_connection

sigc::connection RecorderUI::_fast_screen_update_connection
private

Definition at line 273 of file recorder_ui.h.

◆ _going_away_connections

PBD::ScopedConnectionList RecorderUI::_going_away_connections
private

Definition at line 277 of file recorder_ui.h.

◆ _input_ports

InputPortMap RecorderUI::_input_ports
private

Definition at line 268 of file recorder_ui.h.

◆ _ioplugins

IOPlugSet RecorderUI::_ioplugins
private

Definition at line 271 of file recorder_ui.h.

◆ _meter_area

Gtk::VBox RecorderUI::_meter_area
private

Definition at line 140 of file recorder_ui.h.

◆ _meter_area_cols

int RecorderUI::_meter_area_cols
private

Definition at line 164 of file recorder_ui.h.

◆ _meter_box_width

int RecorderUI::_meter_box_width
private

Definition at line 163 of file recorder_ui.h.

◆ _meter_scroller

Gtk::ScrolledWindow RecorderUI::_meter_scroller
private

Definition at line 139 of file recorder_ui.h.

◆ _meter_table

Gtk::Table RecorderUI::_meter_table
private

Definition at line 141 of file recorder_ui.h.

◆ _monitor_connection

PBD::ScopedConnection RecorderUI::_monitor_connection
private

Definition at line 276 of file recorder_ui.h.

◆ _monitor_disk_button

ArdourWidgets::ArdourButton RecorderUI::_monitor_disk_button
private

Definition at line 151 of file recorder_ui.h.

◆ _monitor_in_button

ArdourWidgets::ArdourButton RecorderUI::_monitor_in_button
private

Definition at line 150 of file recorder_ui.h.

◆ _pane

ArdourWidgets::VPane RecorderUI::_pane
private

Definition at line 134 of file recorder_ui.h.

◆ _rec_area

Gtk::VBox RecorderUI::_rec_area
private

Definition at line 138 of file recorder_ui.h.

◆ _rec_container

Gtk::VBox RecorderUI::_rec_container
private

Definition at line 136 of file recorder_ui.h.

◆ _rec_group_tabs

RecorderGroupTabs* RecorderUI::_rec_group_tabs
private

Definition at line 266 of file recorder_ui.h.

◆ _rec_groups

Gtk::HBox RecorderUI::_rec_groups
private

Definition at line 137 of file recorder_ui.h.

◆ _rec_scroller

Gtk::ScrolledWindow RecorderUI::_rec_scroller
private

Definition at line 135 of file recorder_ui.h.

◆ _recorders

std::list<TrackRecordAxis*> RecorderUI::_recorders
private

Definition at line 269 of file recorder_ui.h.

◆ _recs_label

Gtk::Label RecorderUI::_recs_label
private

Definition at line 145 of file recorder_ui.h.

◆ _remain_info_box

RemainInfoBox RecorderUI::_remain_info_box
private

Definition at line 157 of file recorder_ui.h.

◆ _ruler

RecRuler RecorderUI::_ruler
private

Definition at line 262 of file recorder_ui.h.

◆ _ruler_box

Gtk::HBox RecorderUI::_ruler_box
private

Definition at line 264 of file recorder_ui.h.

◆ _ruler_sep

ArdourWidgets::ArdourHSpacer RecorderUI::_ruler_sep
private

Definition at line 265 of file recorder_ui.h.

◆ _ruler_width_update_connection

sigc::connection RecorderUI::_ruler_width_update_connection
private

Definition at line 274 of file recorder_ui.h.

◆ _scroller_base

Gtk::EventBox RecorderUI::_scroller_base
private

Definition at line 142 of file recorder_ui.h.

◆ _space

Gtk::EventBox RecorderUI::_space
private

Definition at line 263 of file recorder_ui.h.

◆ _spill_port_names

std::set<std::string> RecorderUI::_spill_port_names
private

Definition at line 167 of file recorder_ui.h.

◆ _toolbar

Gtk::HBox RecorderUI::_toolbar
private

Definition at line 132 of file recorder_ui.h.

◆ _toolbar_button_height

Glib::RefPtr<Gtk::SizeGroup> RecorderUI::_toolbar_button_height
private

Definition at line 159 of file recorder_ui.h.

◆ _toolbar_monitoring_width

Glib::RefPtr<Gtk::SizeGroup> RecorderUI::_toolbar_monitoring_width
private

Definition at line 161 of file recorder_ui.h.

◆ _toolbar_recarm_width

Glib::RefPtr<Gtk::SizeGroup> RecorderUI::_toolbar_recarm_width
private

Definition at line 160 of file recorder_ui.h.

◆ _toolbar_sep

ArdourWidgets::ArdourHSpacer RecorderUI::_toolbar_sep
private

Definition at line 144 of file recorder_ui.h.

◆ _transport_ctrl

TransportControlUI RecorderUI::_transport_ctrl
private

Definition at line 158 of file recorder_ui.h.

◆ _vertical

bool RecorderUI::_vertical
private

Definition at line 165 of file recorder_ui.h.

◆ _visible_recorders

std::list<TrackRecordAxis*> RecorderUI::_visible_recorders
private

Definition at line 270 of file recorder_ui.h.

◆ _xrun_info_box

XrunInfoBox RecorderUI::_xrun_info_box
private

Definition at line 156 of file recorder_ui.h.

◆ bindings

Gtkmm2ext::Bindings* RecorderUI::bindings
private

Definition at line 130 of file recorder_ui.h.


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