20 #ifndef __ardour_slavable_h__
21 #define __ardour_slavable_h__
42 class AutomationControl;
43 class SlavableAutomationControl;
54 virtual void assign (std::shared_ptr<VCA>);
64 static PBD::Signal1<void,VCAManager*>
Assign;
78 bool assign_control (std::shared_ptr<VCA>, std::shared_ptr<SlavableAutomationControl>);
79 void unassign_control (std::shared_ptr<VCA>, std::shared_ptr<SlavableAutomationControl>);
virtual SlavableAutomationControlList slavables() const =0
bool assign_controls(std::shared_ptr< VCA >)
int set_state(XMLNode const &, int)
PBD::ScopedConnection assign_connection
std::vector< std::shared_ptr< VCA > > masters(VCAManager *) const
int do_assign(VCAManager *s)
bool assigned_to(VCAManager *, std::shared_ptr< VCA >) const
PBD::Signal2< void, std::shared_ptr< VCA >, bool > AssignmentChange
void unassign(std::shared_ptr< VCA >)
void unassign_control(std::shared_ptr< VCA >, std::shared_ptr< SlavableAutomationControl >)
static PBD::Signal1< void, VCAManager * > Assign
virtual std::shared_ptr< AutomationControl > automation_control(const Evoral::Parameter &)=0
static std::string xml_node_name
virtual void assign(std::shared_ptr< VCA >)
void unassign_controls(std::shared_ptr< VCA >)
bool assign_control(std::shared_ptr< VCA >, std::shared_ptr< SlavableAutomationControl >)
Glib::Threads::RWLock master_lock
PBD::ScopedConnectionList unassign_connections
XMLNode & get_state() const
void weak_unassign(std::weak_ptr< VCA >)
std::set< uint32_t > _masters
std::list< std::shared_ptr< SlavableAutomationControl > > SlavableAutomationControlList