diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-06-16 08:44:03 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-06-16 08:44:03 -0400 |
commit | 90220998af4f9683d696b511a09b34034e799093 (patch) | |
tree | e974251993f9bf8b33c26bdeb117a8759b476d77 /libs/ardour/ardour/diskstream.h | |
parent | d65f03d07455c4ea38084af71a38c383bd2b3e19 (diff) |
add Record-Safe feature to libardour (from Nikolay Polyanovskii)
Diffstat (limited to 'libs/ardour/ardour/diskstream.h')
-rw-r--r-- | libs/ardour/ardour/diskstream.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libs/ardour/ardour/diskstream.h b/libs/ardour/ardour/diskstream.h index cde21b209f..fc41d10160 100644 --- a/libs/ardour/ardour/diskstream.h +++ b/libs/ardour/ardour/diskstream.h @@ -104,7 +104,9 @@ class LIBARDOUR_API Diskstream : public SessionObject, public PublicDiskstream void set_roll_delay (framecnt_t); bool record_enabled() const { return g_atomic_int_get (&_record_enabled); } + bool record_safe () const { return g_atomic_int_get (&_record_safe); } virtual void set_record_enabled (bool yn) = 0; + virtual void set_record_safe (bool yn) = 0; bool destructive() const { return _flags & Destructive; } virtual int set_destructive (bool /*yn*/) { return -1; } @@ -176,6 +178,7 @@ class LIBARDOUR_API Diskstream : public SessionObject, public PublicDiskstream } PBD::Signal0<void> RecordEnableChanged; + PBD::Signal0<void> RecordSafeChanged; PBD::Signal0<void> SpeedChanged; PBD::Signal0<void> ReverseChanged; /* Emitted when this diskstream is set to use a different playlist */ @@ -263,6 +266,8 @@ class LIBARDOUR_API Diskstream : public SessionObject, public PublicDiskstream void engage_record_enable (); void disengage_record_enable (); + void engage_record_safe (); + void disengage_record_safe (); virtual bool prep_record_enable () = 0; virtual bool prep_record_disable () = 0; @@ -286,7 +291,8 @@ class LIBARDOUR_API Diskstream : public SessionObject, public PublicDiskstream boost::shared_ptr<Playlist> _playlist; - mutable gint _record_enabled; + gint _record_enabled; + gint _record_safe; double _visible_speed; double _actual_speed; /* items needed for speed change logic */ |