ardour
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
PBD::PropertyBase Class Referenceabstract

#include <property_basics.h>

Inheritance diagram for PBD::PropertyBase:
PBD::PropertyTemplate< T > PBD::SequenceProperty< Container > PBD::SharedStatefulProperty< T > PBD::PropertyTemplate< bool > PBD::PropertyTemplate< Evoral::Beats > PBD::PropertyTemplate< float > PBD::PropertyTemplate< framecnt_t > PBD::PropertyTemplate< framepos_t > PBD::PropertyTemplate< gain_t > PBD::PropertyTemplate< int > PBD::PropertyTemplate< PositionLockStyle > PBD::PropertyTemplate< std::string > PBD::PropertyTemplate< uint64_t > PBD::SequenceProperty< std::list< boost::shared_ptr< Region > > > PBD::SharedStatefulProperty< AutomationList >

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 PropertyBaseclone_from_xml (const XMLNode &) const
 
virtual PropertyBaseclone () 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
 

Detailed Description

Base (non template) part of Property Properties are used for two main reasons:

Definition at line 88 of file property_basics.h.

Constructor & Destructor Documentation

PBD::PropertyBase::PropertyBase ( PropertyID  pid)
inline

Definition at line 91 of file property_basics.h.

virtual PBD::PropertyBase::~PropertyBase ( )
inlinevirtual

Definition at line 95 of file property_basics.h.

PBD::PropertyBase::PropertyBase ( PropertyBase const &  b)
inlineprotected

Definition at line 163 of file property_basics.h.

Member Function Documentation

virtual void PBD::PropertyBase::apply_changes ( PropertyBase const *  )
pure virtual
virtual bool PBD::PropertyBase::changed ( ) const
pure virtual
virtual void PBD::PropertyBase::clear_changes ( )
pure virtual
virtual void PBD::PropertyBase::clear_owned_changes ( )
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.

virtual PropertyBase* PBD::PropertyBase::clone ( ) const
pure virtual
virtual PropertyBase* PBD::PropertyBase::clone_from_xml ( const XMLNode ) const
inlinevirtual
virtual void PBD::PropertyBase::get_changes_as_properties ( PropertyList changes,
Command  
) const
pure virtual
virtual void PBD::PropertyBase::get_changes_as_xml ( XMLNode ) const
pure virtual
virtual void PBD::PropertyBase::get_value ( XMLNode node) const
pure virtual
virtual void PBD::PropertyBase::invert ( )
pure virtual
bool PBD::PropertyBase::operator== ( PropertyID  pid) const
inline

Definition at line 157 of file property_basics.h.

PropertyID PBD::PropertyBase::property_id ( ) const
inline

Definition at line 155 of file property_basics.h.

const gchar* PBD::PropertyBase::property_name ( ) const
inline

Definition at line 154 of file property_basics.h.

virtual void PBD::PropertyBase::rdiff ( std::vector< Command * > &  ) const
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.

virtual bool PBD::PropertyBase::set_value ( XMLNode const &  )
pure virtual

Member Data Documentation

PropertyID PBD::PropertyBase::_property_id
private

Definition at line 168 of file property_basics.h.


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