ardour
|
#include <property_basics.h>
Public Member Functions | |
PropertyBase (PropertyID pid) | |
virtual | ~PropertyBase () |
virtual bool | set_value (XMLNode const &)=0 |
virtual void | get_value (XMLNode &node) const =0 |
virtual void | clear_changes ()=0 |
virtual void | clear_owned_changes () |
virtual bool | changed () const =0 |
virtual void | invert ()=0 |
virtual void | get_changes_as_xml (XMLNode *) const =0 |
virtual void | get_changes_as_properties (PropertyList &changes, Command *) const =0 |
virtual void | rdiff (std::vector< Command * > &) const |
virtual PropertyBase * | clone_from_xml (const XMLNode &) const |
virtual PropertyBase * | clone () const =0 |
virtual void | apply_changes (PropertyBase const *)=0 |
const gchar * | property_name () const |
PropertyID | property_id () const |
bool | operator== (PropertyID pid) const |
Protected Member Functions | |
PropertyBase (PropertyBase const &b) | |
Private Attributes | |
PropertyID | _property_id |
Base (non template) part of Property Properties are used for two main reasons:
Definition at line 88 of file property_basics.h.
|
inline |
Definition at line 91 of file property_basics.h.
|
inlinevirtual |
Definition at line 95 of file property_basics.h.
|
inlineprotected |
Definition at line 163 of file property_basics.h.
|
pure virtual |
Set this property's current state from another
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, PBD::PropertyTemplate< uint64_t >, PBD::SequenceProperty< Container >, and PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >.
|
pure virtual |
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::SequenceProperty< Container >, PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, and PBD::PropertyTemplate< uint64_t >.
|
pure virtual |
Forget about any old changes to this property's value
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::SequenceProperty< Container >, PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, and PBD::PropertyTemplate< uint64_t >.
|
inlinevirtual |
Tell any things we own to forget about their old values
Reimplemented in PBD::SequenceProperty< Container >, and PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >.
Definition at line 115 of file property_basics.h.
|
pure virtual |
Implemented in PBD::Property< std::string >, PBD::Property< T >, PBD::Property< gain_t >, PBD::Property< float >, PBD::Property< int >, PBD::Property< framecnt_t >, PBD::Property< bool >, PBD::Property< PositionLockStyle >, PBD::Property< framepos_t >, PBD::Property< Evoral::Beats >, PBD::Property< uint64_t >, ARDOUR::RegionListProperty, and ARDOUR::AutomationListProperty.
|
inlinevirtual |
Look in an XML node written by get_changes_as_xml and, if XML from this property is found, create a property with the changes from the XML.
Reimplemented in PBD::Property< T >, PBD::Property< gain_t >, PBD::Property< float >, PBD::Property< int >, PBD::Property< framecnt_t >, PBD::Property< bool >, PBD::Property< PositionLockStyle >, PBD::Property< framepos_t >, PBD::Property< Evoral::Beats >, PBD::Property< uint64_t >, PBD::SequenceProperty< Container >, and PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >.
Definition at line 144 of file property_basics.h.
|
pure virtual |
If this Property has changed, clone it and add it to a given list. Used for making StatefulDiffCommands.
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::SequenceProperty< Container >, PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, and PBD::PropertyTemplate< uint64_t >.
|
pure virtual |
Get any changes in this property as XML and add them to a StatefulDiffCommand node.
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, PBD::PropertyTemplate< uint64_t >, PBD::SequenceProperty< Container >, and PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >.
|
pure virtual |
Get this property's value and put it into a Stateful node
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::SequenceProperty< Container >, PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, and PBD::PropertyTemplate< uint64_t >.
|
pure virtual |
Invert the changes in this property
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, PBD::PropertyTemplate< uint64_t >, PBD::SequenceProperty< Container >, and PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >.
|
inline |
Definition at line 157 of file property_basics.h.
|
inline |
Definition at line 155 of file property_basics.h.
|
inline |
Definition at line 154 of file property_basics.h.
|
inlinevirtual |
Collect StatefulDiffCommands for changes to anything that we own
Reimplemented in PBD::SequenceProperty< Container >, and PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >.
Definition at line 139 of file property_basics.h.
|
pure virtual |
Set the value of this property from a Stateful node.
Implemented in PBD::SharedStatefulProperty< T >, PBD::SharedStatefulProperty< AutomationList >, PBD::SequenceProperty< Container >, PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > >, PBD::PropertyTemplate< T >, PBD::PropertyTemplate< gain_t >, PBD::PropertyTemplate< std::string >, PBD::PropertyTemplate< float >, PBD::PropertyTemplate< int >, PBD::PropertyTemplate< framecnt_t >, PBD::PropertyTemplate< bool >, PBD::PropertyTemplate< PositionLockStyle >, PBD::PropertyTemplate< framepos_t >, PBD::PropertyTemplate< Evoral::Beats >, and PBD::PropertyTemplate< uint64_t >.
|
private |
Definition at line 168 of file property_basics.h.