Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::PannerShell Class Reference

#include <panner_shell.h>

Inheritance diagram for ARDOUR::PannerShell:
[legend]

Public Member Functions

 PannerShell (std::string name, Session &, std::shared_ptr< Pannable >, Temporal::TimeDomainProvider const &, bool is_send=false)
 
virtual ~PannerShell ()
 
std::string describe_parameter (Evoral::Parameter param)
 
bool can_support_io_configuration (const ChanCount &, ChanCount &)
 
void configure_io (ChanCount in, ChanCount out)
 
void run (BufferSet &src, BufferSet &dest, samplepos_t start_sample, samplepos_t end_samples, pframes_t nframes)
 The fundamental Panner function. More...
 
XMLNodeget_state () const
 
int set_state (const XMLNode &, int version)
 
std::shared_ptr< Pannerpanner () const
 
std::shared_ptr< Pannablepannable () const
 
std::shared_ptr< Pannableunlinked_pannable () const
 
bool bypassed () const
 
void set_bypassed (bool)
 
bool is_send () const
 
bool is_linked_to_route () const
 
void set_linked_to_route (bool)
 
std::string current_panner_uri () const
 
std::string user_selected_panner_uri () const
 
std::string panner_gui_uri () const
 
bool select_panner_by_uri (std::string const uri)
 
- Public Member Functions inherited from ARDOUR::SessionObject
 SessionObject (Session &session, const std::string &name)
 
Sessionsession () const
 
std::string name () const
 
virtual bool set_name (const std::string &str)
 
- 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
 
ScopedConnectionListoperator= (const ScopedConnectionList &)=delete
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 
- 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 Attributes

PBD::Signal< void()> PannableChanged
 
PBD::Signal< void()> Changed
 
- Public Attributes inherited from PBD::Stateful
PBD::Signal< void(const PropertyChange &)> PropertyChanged
 
- Public Attributes inherited from PBD::Destructible
PBD::Signal< void()> Destroyed
 
PBD::Signal< void()> DropReferences
 

Private Member Functions

void distribute_no_automation (BufferSet &src, BufferSet &dest, pframes_t nframes, gain_t gain_coeff)
 
bool set_user_selected_panner_uri (std::string const uri)
 

Private Attributes

std::shared_ptr< Panner_panner
 
std::shared_ptr< Pannable_pannable_internal
 
std::shared_ptr< Pannable_pannable_route
 
bool _is_send
 
bool _panlinked
 
bool _bypassed
 
std::string _current_panner_uri
 
std::string _user_selected_panner_uri
 
std::string _panner_gui_uri
 
bool _force_reselect
 

Additional Inherited Members

- Static Public Member Functions inherited from ARDOUR::SessionObject
static void make_property_quarks ()
 
- Static Public Attributes inherited from PBD::Stateful
static int current_state_version
 
static int loading_state_version
 
- 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)
 
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 ARDOUR::SessionObject
PBD::Property< std::string > _name
 
- Protected Attributes inherited from ARDOUR::SessionHandleRef
ARDOUR::Session_session
 
- 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
 

Detailed Description

Class to manage panning by instantiating and controlling an appropriate Panner object for a given in/out configuration.

Definition at line 50 of file panner_shell.h.

Constructor & Destructor Documentation

◆ PannerShell()

ARDOUR::PannerShell::PannerShell ( std::string  name,
Session ,
std::shared_ptr< Pannable ,
Temporal::TimeDomainProvider const &  ,
bool  is_send = false 
)

◆ ~PannerShell()

virtual ARDOUR::PannerShell::~PannerShell ( )
virtual

Member Function Documentation

◆ bypassed()

bool ARDOUR::PannerShell::bypassed ( ) const

◆ can_support_io_configuration()

bool ARDOUR::PannerShell::can_support_io_configuration ( const ChanCount ,
ChanCount  
)
inline

Definition at line 58 of file panner_shell.h.

◆ configure_io()

void ARDOUR::PannerShell::configure_io ( ChanCount  in,
ChanCount  out 
)

◆ current_panner_uri()

std::string ARDOUR::PannerShell::current_panner_uri ( ) const
inline

Definition at line 82 of file panner_shell.h.

◆ describe_parameter()

std::string ARDOUR::PannerShell::describe_parameter ( Evoral::Parameter  param)

◆ distribute_no_automation()

void ARDOUR::PannerShell::distribute_no_automation ( BufferSet src,
BufferSet dest,
pframes_t  nframes,
gain_t  gain_coeff 
)
private

◆ get_state()

XMLNode& ARDOUR::PannerShell::get_state ( ) const
virtual

Implements PBD::Stateful.

◆ is_linked_to_route()

bool ARDOUR::PannerShell::is_linked_to_route ( ) const
inline

Definition at line 78 of file panner_shell.h.

◆ is_send()

bool ARDOUR::PannerShell::is_send ( ) const
inline

Definition at line 77 of file panner_shell.h.

◆ pannable()

std::shared_ptr<Pannable> ARDOUR::PannerShell::pannable ( ) const
inline

Definition at line 71 of file panner_shell.h.

◆ panner()

std::shared_ptr<Panner> ARDOUR::PannerShell::panner ( ) const
inline

Definition at line 70 of file panner_shell.h.

◆ panner_gui_uri()

std::string ARDOUR::PannerShell::panner_gui_uri ( ) const
inline

Definition at line 84 of file panner_shell.h.

◆ run()

void ARDOUR::PannerShell::run ( BufferSet src,
BufferSet dest,
samplepos_t  start_sample,
samplepos_t  end_samples,
pframes_t  nframes 
)

The fundamental Panner function.

◆ select_panner_by_uri()

bool ARDOUR::PannerShell::select_panner_by_uri ( std::string const  uri)

◆ set_bypassed()

void ARDOUR::PannerShell::set_bypassed ( bool  )

◆ set_linked_to_route()

void ARDOUR::PannerShell::set_linked_to_route ( bool  )

◆ set_state()

int ARDOUR::PannerShell::set_state ( const XMLNode ,
int  version 
)
virtual

Implements PBD::Stateful.

◆ set_user_selected_panner_uri()

bool ARDOUR::PannerShell::set_user_selected_panner_uri ( std::string const  uri)
private

◆ unlinked_pannable()

std::shared_ptr<Pannable> ARDOUR::PannerShell::unlinked_pannable ( ) const
inline

Definition at line 72 of file panner_shell.h.

◆ user_selected_panner_uri()

std::string ARDOUR::PannerShell::user_selected_panner_uri ( ) const
inline

Definition at line 83 of file panner_shell.h.

Member Data Documentation

◆ _bypassed

bool ARDOUR::PannerShell::_bypassed
private

Definition at line 99 of file panner_shell.h.

◆ _current_panner_uri

std::string ARDOUR::PannerShell::_current_panner_uri
private

Definition at line 101 of file panner_shell.h.

◆ _force_reselect

bool ARDOUR::PannerShell::_force_reselect
private

Definition at line 104 of file panner_shell.h.

◆ _is_send

bool ARDOUR::PannerShell::_is_send
private

Definition at line 97 of file panner_shell.h.

◆ _panlinked

bool ARDOUR::PannerShell::_panlinked
private

Definition at line 98 of file panner_shell.h.

◆ _pannable_internal

std::shared_ptr<Pannable> ARDOUR::PannerShell::_pannable_internal
private

Definition at line 95 of file panner_shell.h.

◆ _pannable_route

std::shared_ptr<Pannable> ARDOUR::PannerShell::_pannable_route
private

Definition at line 96 of file panner_shell.h.

◆ _panner

std::shared_ptr<Panner> ARDOUR::PannerShell::_panner
private

Definition at line 93 of file panner_shell.h.

◆ _panner_gui_uri

std::string ARDOUR::PannerShell::_panner_gui_uri
private

Definition at line 103 of file panner_shell.h.

◆ _user_selected_panner_uri

std::string ARDOUR::PannerShell::_user_selected_panner_uri
private

Definition at line 102 of file panner_shell.h.

◆ Changed

PBD::Signal<void()> ARDOUR::PannerShell::Changed

Definition at line 68 of file panner_shell.h.

◆ PannableChanged

PBD::Signal<void()> ARDOUR::PannerShell::PannableChanged

Definition at line 67 of file panner_shell.h.


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