20 #ifndef __ardour_automation_event_h__
21 #define __ardour_automation_event_h__
28 #include <glibmm/threads.h>
90 return (_state &
Play) || ((_state &
Touch) && !touching());
93 return ((_state &
Write) || ((_state &
Touch) && touching()));
100 void start_touch (
double when);
101 void stop_touch (
bool mark,
double when);
102 bool touching()
const {
return g_atomic_int_get (const_cast<gint*>(&_touching)); }
107 int set_state (
const XMLNode &,
int version);
114 void create_curve_if_necessary ();
115 int deserialize_events (
const XMLNode&);
117 void maybe_signal_changed ();
AutomationListProperty(PBD::PropertyDescriptor< boost::shared_ptr< AutomationList > > d, Ptr o, Ptr c)
bool operator!=(shared_ptr< T > const &a, shared_ptr< U > const &b)
AutomationListProperty(PBD::PropertyDescriptor< boost::shared_ptr< AutomationList > > d, Ptr p)
bool touch_enabled() const
LIBARDOUR_API PBD::PropertyDescriptor< framepos_t > start
AutoStyle automation_style() const
AutoState automation_state() const
bool automation_playback() const
bool automation_write() const
PBD::Signal0< void > automation_style_changed
PBD::Signal0< void > StateChanged
bool operator==(const RouteProcessorSelection &a, const RouteProcessorSelection &b)
static PBD::Signal1< void, AutomationList * > AutomationListCreated
PBD::Signal1< void, AutoState > automation_state_changed