ardour
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | List of all members
Evoral::ControlSet Class Referenceabstract

#include <ControlSet.hpp>

Inheritance diagram for Evoral::ControlSet:
ARDOUR::Automatable Evoral::Sequence< Time > Evoral::Sequence< Evoral::Beats > Evoral::Sequence< T > ARDOUR::AutomatableSequence< T > ARDOUR::Pannable ARDOUR::Processor ARDOUR::Route ARDOUR::AutomatableSequence< Evoral::Beats > MySequence< Time > ARDOUR::AutomatableSequence< Evoral::Beats > ARDOUR::AutomatableSequence< T >

Public Types

typedef std::map< Parameter,
boost::shared_ptr< Control > > 
Controls
 

Public Member Functions

 ControlSet ()
 
 ControlSet (const ControlSet &)
 
virtual ~ControlSet ()
 
virtual boost::shared_ptr
< Evoral::Control
control_factory (const Evoral::Parameter &id)=0
 
boost::shared_ptr< Controlcontrol (const Parameter &id, bool create_if_missing=false)
 
boost::shared_ptr< const Controlcontrol (const Parameter &id) const
 
Controlscontrols ()
 
const Controlscontrols () const
 
virtual void add_control (boost::shared_ptr< Control >)
 
bool find_next_event (double start, double end, ControlEvent &ev) const
 
virtual bool controls_empty () const
 
virtual void clear_controls ()
 
void what_has_data (std::set< Parameter > &) const
 
Glib::Threads::Mutex & control_lock () const
 

Protected Member Functions

virtual void control_list_marked_dirty ()
 
virtual void control_list_interpolation_changed (Parameter, ControlList::InterpolationStyle)
 

Protected Attributes

Glib::Threads::Mutex _control_lock
 
Controls _controls
 
PBD::ScopedConnectionList _list_connections
 

Private Attributes

PBD::ScopedConnectionList _control_connections
 

Detailed Description

Definition at line 39 of file ControlSet.hpp.

Member Typedef Documentation

Definition at line 57 of file ControlSet.hpp.

Constructor & Destructor Documentation

Evoral::ControlSet::ControlSet ( )

Definition at line 31 of file ControlSet.cpp.

Evoral::ControlSet::ControlSet ( const ControlSet )

Definition at line 35 of file ControlSet.cpp.

virtual Evoral::ControlSet::~ControlSet ( )
inlinevirtual

Definition at line 43 of file ControlSet.hpp.

Member Function Documentation

void Evoral::ControlSet::add_control ( boost::shared_ptr< Control ac)
virtual

Reimplemented in ARDOUR::Automatable.

Definition at line 42 of file ControlSet.cpp.

void Evoral::ControlSet::clear_controls ( )
virtual

Reimplemented in ARDOUR::Automatable.

Definition at line 123 of file ControlSet.cpp.

boost::shared_ptr< Control > Evoral::ControlSet::control ( const Parameter parameter,
bool  create_if_missing = false 
)

If a control for the given parameter does not exist and create_if_missing is true, a control will be created, added to this set, and returned. If create_if_missing is false this function may return null.

Definition at line 73 of file ControlSet.cpp.

boost::shared_ptr<const Control> Evoral::ControlSet::control ( const Parameter id) const
inline

Definition at line 52 of file ControlSet.hpp.

virtual boost::shared_ptr<Evoral::Control> Evoral::ControlSet::control_factory ( const Evoral::Parameter id)
pure virtual
virtual void Evoral::ControlSet::control_list_interpolation_changed ( Parameter  ,
ControlList::InterpolationStyle   
)
inlineprotectedvirtual

Reimplemented in ARDOUR::MidiModel.

Definition at line 74 of file ControlSet.hpp.

virtual void Evoral::ControlSet::control_list_marked_dirty ( )
inlineprotectedvirtual
Glib::Threads::Mutex& Evoral::ControlSet::control_lock ( ) const
inline

Definition at line 70 of file ControlSet.hpp.

Controls& Evoral::ControlSet::controls ( )
inline

Definition at line 58 of file ControlSet.hpp.

const Controls& Evoral::ControlSet::controls ( ) const
inline

Definition at line 59 of file ControlSet.hpp.

virtual bool Evoral::ControlSet::controls_empty ( ) const
inlinevirtual

Definition at line 65 of file ControlSet.hpp.

bool Evoral::ControlSet::find_next_event ( double  start,
double  end,
ControlEvent ev 
) const

Definition at line 91 of file ControlSet.cpp.

void Evoral::ControlSet::what_has_data ( std::set< Parameter > &  s) const

Definition at line 57 of file ControlSet.cpp.

Member Data Documentation

PBD::ScopedConnectionList Evoral::ControlSet::_control_connections
private

Definition at line 83 of file ControlSet.hpp.

Glib::Threads::Mutex Evoral::ControlSet::_control_lock
mutableprotected

Definition at line 76 of file ControlSet.hpp.

Controls Evoral::ControlSet::_controls
protected

Definition at line 77 of file ControlSet.hpp.

PBD::ScopedConnectionList Evoral::ControlSet::_list_connections
protected

Definition at line 79 of file ControlSet.hpp.


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