|
Ardour
9.0-pre0-1935-g02af9cb3d6
|
#include <delivery.h>
Public Types | |
| enum | Role { Main = 0x1 , Send = 0x2 , Insert = 0x4 , Listen = 0x8 , Aux = 0x10 , Foldback = 0x20 , DirectOuts = 0x40 } |
| using | RTARingBuffer = PBD::RingBuffer< ARDOUR::Sample > |
| using | RTARingBufferPtr = std::shared_ptr< RTARingBuffer > |
| using | RTABufferList = std::vector< RTARingBufferPtr > |
| using | RTABufferListPtr = std::shared_ptr< RTABufferList > |
Public Types inherited from Evoral::ControlSet | |
| typedef std::map< Parameter, std::shared_ptr< Control > > | Controls |
Public Member Functions | |
| bool | does_routing () const |
| Delivery (Session &s, std::shared_ptr< IO > io, std::shared_ptr< Pannable >, std::shared_ptr< MuteMaster > mm, const std::string &name, Role) | |
| Delivery (Session &s, std::shared_ptr< Pannable >, std::shared_ptr< MuteMaster > mm, const std::string &name, Role) | |
| ~Delivery () | |
| bool | set_name (const std::string &name) |
| std::string | display_name () const |
| Role | role () const |
| bool | can_support_io_configuration (const ChanCount &in, ChanCount &out) |
| bool | configure_io (ChanCount in, ChanCount out) |
| void | activate () |
| void | deactivate () |
| void | run (BufferSet &bufs, samplepos_t start_sample, samplepos_t end_sample, double speed, pframes_t nframes, bool) |
| void | set_midi_mute_mask (int) |
| void | flush_buffers (samplecnt_t nframes) |
| void | no_outs_cuz_we_no_monitor (bool) |
| void | non_realtime_transport_stop (samplepos_t now, bool flush) |
| void | realtime_locate (bool) |
| BufferSet & | output_buffers () |
| int | set_state (const XMLNode &, int version) |
| std::shared_ptr< PannerShell > | panner_shell () const |
| std::shared_ptr< Panner > | panner () const |
| void | set_gain_control (std::shared_ptr< GainControl > gc) |
| void | set_analysis_buffers (RTABufferListPtr rb) |
| bool | analysis_active () const |
| void | set_analysis_active (bool) |
| void | set_polarity_control (std::shared_ptr< AutomationControl > ac) |
| void | unpan () |
| void | reset_panner () |
| void | defer_pan_reset () |
| void | allow_pan_reset () |
| uint32_t | pans_required () const |
| virtual uint32_t | pan_outs () const |
| std::shared_ptr< GainControl > | gain_control () const |
| std::shared_ptr< AutomationControl > | polarity_control () const |
| std::shared_ptr< Amp > | amp () const |
Public Member Functions inherited from ARDOUR::IOProcessor | |
| IOProcessor (Session &, bool with_input, bool with_output, const std::string &proc_name, const std::string io_name="", ARDOUR::DataType default_type=DataType::AUDIO, bool sendish=false) | |
| IOProcessor (Session &, std::shared_ptr< IO > input, std::shared_ptr< IO > output, const std::string &proc_name, Temporal::TimeDomainProvider const &, bool sendish=false) | |
| virtual | ~IOProcessor () |
| bool | set_name (const std::string &str) |
| bool | does_routing () const |
| virtual ChanCount | natural_output_streams () const |
| virtual ChanCount | natural_input_streams () const |
| std::shared_ptr< IO > | input () |
| std::shared_ptr< const IO > | input () const |
| std::shared_ptr< IO > | output () |
| std::shared_ptr< const IO > | output () const |
| void | set_input (std::shared_ptr< IO >) |
| void | set_output (std::shared_ptr< IO >) |
| void | silence (samplecnt_t nframes, samplepos_t start_sample) |
| void | disconnect () |
| virtual bool | feeds (std::shared_ptr< Route > other) const |
| XMLNode & | state () const |
| int | set_state (const XMLNode &, int version) |
| uint32_t | bit_slot () const |
Public Member Functions inherited from ARDOUR::Processor | |
| Processor (Session &, const std::string &name, Temporal::TimeDomainProvider const &) | |
| Processor (const Processor &other) | |
| virtual | ~Processor () |
| virtual bool | display_to_user () const |
| virtual void | set_display_to_user (bool) |
| bool | active () const |
| ardour hard bypass More... | |
| virtual bool | enabled () const |
| processor enabled/bypass More... | |
| virtual bool | bypassable () const |
| enable is not automated or locked More... | |
| bool | get_next_ab_is_active () const |
| void | set_next_ab_is_active (bool yn) |
| virtual samplecnt_t | signal_latency () const |
| virtual void | set_input_latency (samplecnt_t cnt) |
| samplecnt_t | input_latency () const |
| virtual void | set_output_latency (samplecnt_t cnt) |
| samplecnt_t | output_latency () const |
| virtual void | set_capture_offset (samplecnt_t cnt) |
| samplecnt_t | capture_offset () const |
| virtual void | set_playback_offset (samplecnt_t cnt) |
| samplecnt_t | playback_offset () const |
| virtual int | set_block_size (pframes_t) |
| virtual bool | requires_fixed_sized_buffers () const |
| virtual void | flush () |
| virtual void | enable (bool yn) |
| virtual ChanCount | input_streams () const |
| virtual ChanCount | output_streams () const |
| virtual void | realtime_handle_transport_stopped () |
| virtual void | set_loop (Location *loc) |
| virtual void | monitoring_changed () |
| XMLNode & | get_state () const |
| int | set_state (const XMLNode &, int version) |
| virtual void | set_pre_fader (bool) |
| virtual bool | get_pre_fader () const |
| ProcessorWindowProxy * | window_proxy () const |
| void | set_window_proxy (ProcessorWindowProxy *wp) |
| PluginPinWindowProxy * | pinmgr_proxy () const |
| void | set_pingmgr_proxy (PluginPinWindowProxy *wp) |
| virtual void | set_owner (SessionObject *) |
| SessionObject * | owner () const |
Public Member Functions inherited from ARDOUR::SessionObject | |
| SessionObject (Session &session, const std::string &name) | |
| Session & | session () const |
| std::string | name () const |
Public Member Functions inherited from ARDOUR::SessionHandleRef | |
| SessionHandleRef (ARDOUR::Session &s) | |
| virtual | ~SessionHandleRef () |
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 () |
| std::list< ScopedConnectionList * >::size_type | size () const |
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::Destructible | |
| virtual | ~Destructible () |
| virtual void | drop_references () |
Public Member Functions inherited from ARDOUR::Automatable | |
| Automatable (Session &, Temporal::TimeDomainProvider const &) | |
| Automatable (const Automatable &other) | |
| virtual | ~Automatable () |
| virtual void | automatables (PBD::ControllableSet &) const |
| std::shared_ptr< Evoral::Control > | control_factory (const Evoral::Parameter &id) |
| std::shared_ptr< AutomationControl > | automation_control (PBD::ID const &id) const |
| virtual std::shared_ptr< AutomationControl > | automation_control_recurse (PBD::ID const &id) const |
| std::shared_ptr< AutomationControl > | automation_control (const Evoral::Parameter &id) |
| std::shared_ptr< AutomationControl > | automation_control (const Evoral::Parameter &id, bool create_if_missing) |
| std::shared_ptr< const AutomationControl > | automation_control (const Evoral::Parameter &id) const |
| virtual void | add_control (std::shared_ptr< Evoral::Control >) |
| virtual bool | find_next_event (Temporal::timepos_t const &start, Temporal::timepos_t const &end, Evoral::ControlEvent &ev, bool only_active=true) const |
| void | clear_controls () |
| virtual void | non_realtime_locate (samplepos_t now) |
| virtual void | automation_run (samplepos_t, pframes_t, bool only_active=false) |
| virtual std::string | describe_parameter (Evoral::Parameter param) |
| AutoState | get_parameter_automation_state (Evoral::Parameter param) |
| virtual void | set_parameter_automation_state (Evoral::Parameter param, AutoState) |
| void | protect_automation () |
| const std::set< Evoral::Parameter > & | what_can_be_automated () const |
| std::vector< Evoral::Parameter > | all_automatable_params () const |
| void | what_has_existing_automation (std::set< Evoral::Parameter > &) const |
| int | set_automation_xml_state (const XMLNode &, Evoral::Parameter default_param) |
| XMLNode & | get_automation_xml_state () const |
| void | start_domain_bounce (Temporal::DomainBounceInfo &) |
| void | finish_domain_bounce (Temporal::DomainBounceInfo &) |
Public Member Functions inherited from Evoral::ControlSet | |
| ControlSet () | |
| ControlSet (const ControlSet &) | |
| virtual | ~ControlSet () |
| std::shared_ptr< Control > | control (const Parameter &id, bool create_if_missing=false) |
| std::shared_ptr< const Control > | control (const Parameter &id) const |
| Controls & | controls () |
| const Controls & | controls () const |
| virtual bool | controls_empty () const |
| void | what_has_data (std::set< Parameter > &) const |
| Glib::Threads::Mutex & | control_lock () const |
| void | start_domain_bounce (Temporal::DomainBounceInfo &) |
| void | finish_domain_bounce (Temporal::DomainBounceInfo &) |
Public Member Functions inherited from Temporal::TimeDomainSwapper | |
| virtual | ~TimeDomainSwapper () |
Public Member Functions inherited from ARDOUR::Slavable | |
| Slavable () | |
| virtual | ~Slavable () |
| XMLNode & | get_state () const |
| int | set_state (XMLNode const &, int) |
| virtual void | assign (std::shared_ptr< VCA >) |
| void | unassign (std::shared_ptr< VCA >) |
| std::vector< std::shared_ptr< VCA > > | masters (VCAManager *) const |
| bool | assigned_to (VCAManager *, std::shared_ptr< VCA >) const |
Public Member Functions inherited from Temporal::TimeDomainProvider | |
| TimeDomainProvider () | |
| TimeDomainProvider (TimeDomain td) | |
| TimeDomainProvider (TimeDomain td, TimeDomainProvider const &p) | |
| TimeDomainProvider (TimeDomainProvider const &other) | |
| TimeDomainProvider (TimeDomainProvider const &parnt, bool) | |
| virtual | ~TimeDomainProvider () |
| XMLNode & | get_state () const |
| int | set_state (const XMLNode &, int version) |
| TimeDomainProvider & | operator= (TimeDomainProvider const &other) |
| TimeDomain | time_domain () const |
| bool | has_own_time_domain () const |
| void | clear_time_domain () |
| void | set_time_domain (TimeDomain td) |
| TimeDomainProvider const * | time_domain_parent () const |
| bool | has_time_domain_parent () const |
| void | clear_time_domain_parent () |
| void | set_time_domain_parent (TimeDomainProvider const &p) |
| virtual void | time_domain_changed () |
Public Member Functions inherited from ARDOUR::Latent | |
| Latent () | |
| Latent (Latent const &) | |
| virtual | ~Latent () |
| samplecnt_t | effective_latency () const |
| samplecnt_t | user_latency () const |
| void | unset_user_latency () |
| virtual void | set_user_latency (samplecnt_t val) |
Public Member Functions inherited from ARDOUR::HasLatency | |
| virtual | ~HasLatency () |
Static Public Member Functions | |
| static bool | role_from_xml (const XMLNode &, Role &) |
| static bool | role_requires_output_ports (Role r) |
| static int | disable_panners (void) |
| static void | reset_panners () |
Static Public Member Functions inherited from ARDOUR::IOProcessor | |
| static void | prepare_for_reset (XMLNode &state, const std::string &name) |
Static Public Member Functions inherited from ARDOUR::SessionObject | |
| static void | make_property_quarks () |
Static Public Member Functions inherited from ARDOUR::Automatable | |
| static void | find_next_ac_event (std::shared_ptr< AutomationControl >, Temporal::timepos_t const &start, Temporal::timepos_t const &end, Evoral::ControlEvent &ev) |
| static void | find_prev_ac_event (std::shared_ptr< AutomationControl >, Temporal::timepos_t const &start, Temporal::timepos_t const &end, Evoral::ControlEvent &ev) |
Static Public Member Functions inherited from ARDOUR::Latent | |
| static void | force_zero_latency (bool en) |
| static bool | zero_latency () |
Protected Member Functions | |
| XMLNode & | state () const |
| gain_t | target_gain () |
| void | maybe_merge_midi_mute (BufferSet &, bool always) |
Protected Member Functions inherited from ARDOUR::IOProcessor | |
| std::string | validate_name (std::string const &new_name, std::string const &canonical_name) const |
Protected Member Functions inherited from ARDOUR::Processor | |
| bool | check_active () |
| bool | map_loop_range (samplepos_t &start, samplepos_t &end) const |
Protected Member Functions inherited from ARDOUR::SessionHandleRef | |
| virtual void | session_going_away () |
| virtual void | insanity_check () |
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 ARDOUR::Automatable | |
| void | can_automate (Evoral::Parameter) |
| virtual void | automation_list_automation_state_changed (Evoral::Parameter const &, AutoState) |
| int | load_automation (const std::string &path) |
| int | old_set_automation_state (const XMLNode &) |
| SlavableAutomationControlList | slavables () const |
Protected Member Functions inherited from Evoral::ControlSet | |
| virtual void | control_list_marked_dirty () |
| virtual void | control_list_interpolation_changed (Parameter const &, ControlList::InterpolationStyle) |
Protected Member Functions inherited from Temporal::TimeDomainProvider | |
| void | listen () |
Protected Member Functions inherited from ARDOUR::Latent | |
| int | set_state (const XMLNode &node, int version) |
| void | add_state (XMLNode *) const |
Private Member Functions | |
| void | panners_became_legal () |
| void | output_changed (IOChange, void *) |
| void | resize_midi_mute_buffer () |
Private Attributes | |
| bool | _no_outs_cuz_we_no_monitor |
| std::shared_ptr< MuteMaster > | _mute_master |
| std::shared_ptr< GainControl > | _gain_control |
| std::shared_ptr< AutomationControl > | _polarity_control |
| RTABufferListPtr | _rtabuffers |
| std::atomic< bool > | _rta_active |
| PBD::ScopedConnection | panner_legal_c |
| bool | _no_panner_reset |
| std::atomic< int > | _midi_mute_mask |
| MidiBuffer | _midi_mute_buffer |
Static Private Attributes | |
| static bool | panners_legal |
| static PBD::Signal< void()> | PannersLegal |
Additional Inherited Members | |
Static Public Attributes inherited from ARDOUR::Processor | |
| 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 ARDOUR::Automatable | |
| static bool | skip_saving_automation |
| static const std::string | xml_node_name |
Static Public Attributes inherited from ARDOUR::Slavable | |
| static std::string | xml_node_name |
| static PBD::Signal< void(VCAManager *)> | Assign |
Static Public Attributes inherited from ARDOUR::Latent | |
| static PBD::Signal< void()> | DisableSwitchChanged |
Definition at line 46 of file delivery.h.
| using ARDOUR::Delivery::RTABufferList = std::vector<RTARingBufferPtr> |
Definition at line 120 of file delivery.h.
| using ARDOUR::Delivery::RTABufferListPtr = std::shared_ptr<RTABufferList> |
Definition at line 121 of file delivery.h.
Definition at line 118 of file delivery.h.
| using ARDOUR::Delivery::RTARingBufferPtr = std::shared_ptr<RTARingBuffer> |
Definition at line 119 of file delivery.h.
| Enumerator | |
|---|---|
| Main | |
| Send | |
| Insert | |
| Listen | |
| Aux | |
| Foldback | |
| DirectOuts | |
Definition at line 49 of file delivery.h.
| ARDOUR::Delivery::Delivery | ( | Session & | s, |
| std::shared_ptr< IO > | io, | ||
| std::shared_ptr< Pannable > | , | ||
| std::shared_ptr< MuteMaster > | mm, | ||
| const std::string & | name, | ||
| Role | |||
| ) |
| ARDOUR::Delivery::Delivery | ( | Session & | s, |
| std::shared_ptr< Pannable > | , | ||
| std::shared_ptr< MuteMaster > | mm, | ||
| const std::string & | name, | ||
| Role | |||
| ) |
| ARDOUR::Delivery::~Delivery | ( | ) |
|
virtual |
Reimplemented from ARDOUR::Processor.
Reimplemented in ARDOUR::Send.
| void ARDOUR::Delivery::allow_pan_reset | ( | ) |
|
inline |
Definition at line 149 of file delivery.h.
| bool ARDOUR::Delivery::analysis_active | ( | ) | const |
|
virtual |
Implements ARDOUR::Processor.
Reimplemented in ARDOUR::Send, and ARDOUR::InternalSend.
Reimplemented from ARDOUR::Processor.
Reimplemented in ARDOUR::Send, and ARDOUR::InternalSend.
|
virtual |
Reimplemented from ARDOUR::Processor.
Reimplemented in ARDOUR::Send.
| void ARDOUR::Delivery::defer_pan_reset | ( | ) |
|
static |
|
virtual |
Reimplemented from ARDOUR::Processor.
Reimplemented in ARDOUR::InternalSend.
|
inlinevirtual |
Reimplemented from ARDOUR::Processor.
Definition at line 70 of file delivery.h.
| void ARDOUR::Delivery::flush_buffers | ( | samplecnt_t | nframes | ) |
|
inline |
Definition at line 141 of file delivery.h.
|
protected |
| void ARDOUR::Delivery::no_outs_cuz_we_no_monitor | ( | bool | ) |
|
virtual |
Reimplemented from ARDOUR::Automatable.
|
inline |
Definition at line 102 of file delivery.h.
|
private |
|
virtual |
Reimplemented in ARDOUR::InternalSend.
| std::shared_ptr<Panner> ARDOUR::Delivery::panner | ( | ) | const |
|
inline |
Definition at line 113 of file delivery.h.
|
private |
|
inline |
Definition at line 138 of file delivery.h.
|
inline |
Definition at line 145 of file delivery.h.
|
virtual |
Reimplemented from ARDOUR::Processor.
| void ARDOUR::Delivery::reset_panner | ( | ) |
|
static |
|
private |
|
inline |
Definition at line 84 of file delivery.h.
|
inlinestatic |
Definition at line 68 of file delivery.h.
|
virtual |
The main process function for processors
| bufs | bufferset of data to process in-place |
| start_sample | absolute timeline position in audio-samples to commence processing (latency compensated) |
| end_sample | absolute timeline position in audio-samples, usually start_sample +/- nframes |
| speed | transport speed. usually -1, 0, +1 |
| nframes | number of audio samples to process |
| result_required | true if, on return from this method, bufs is required to contain valid data; if false, the method need not bother writing to bufs if it doesn't want to. |
Reimplemented from ARDOUR::Processor.
Reimplemented in ARDOUR::Send, and ARDOUR::InternalSend.
| void ARDOUR::Delivery::set_analysis_active | ( | bool | ) |
|
inline |
Definition at line 123 of file delivery.h.
| void ARDOUR::Delivery::set_gain_control | ( | std::shared_ptr< GainControl > | gc | ) |
| void ARDOUR::Delivery::set_midi_mute_mask | ( | int | ) |
|
virtual |
Reimplemented from ARDOUR::SessionObject.
Reimplemented in ARDOUR::Send, and ARDOUR::InternalSend.
|
inline |
Definition at line 129 of file delivery.h.
|
virtual |
Implements PBD::Stateful.
Reimplemented in ARDOUR::InternalSend, and ARDOUR::Send.
|
protectedvirtual |
Reimplemented from ARDOUR::Processor.
Reimplemented in ARDOUR::Send, and ARDOUR::InternalSend.
|
protected |
| void ARDOUR::Delivery::unpan | ( | ) |
|
protected |
Definition at line 160 of file delivery.h.
|
protected |
Definition at line 158 of file delivery.h.
|
private |
Definition at line 169 of file delivery.h.
|
private |
Definition at line 184 of file delivery.h.
|
private |
Definition at line 183 of file delivery.h.
|
private |
Definition at line 168 of file delivery.h.
|
private |
Definition at line 166 of file delivery.h.
|
private |
Definition at line 182 of file delivery.h.
|
protected |
Definition at line 157 of file delivery.h.
|
protected |
Definition at line 159 of file delivery.h.
|
private |
Definition at line 170 of file delivery.h.
|
protected |
Definition at line 156 of file delivery.h.
|
private |
Definition at line 173 of file delivery.h.
|
private |
Definition at line 172 of file delivery.h.
| PBD::Signal<void()> ARDOUR::Delivery::MuteChange |
Definition at line 104 of file delivery.h.
|
private |
Definition at line 179 of file delivery.h.
|
staticprivate |
Definition at line 175 of file delivery.h.
|
staticprivate |
Definition at line 176 of file delivery.h.