diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-10-19 22:02:30 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-10-19 22:02:30 +0000 |
commit | 2592a320d42dd4a157ee16101c042d875d3142be (patch) | |
tree | 0409a06f1ef030dc9339c5c17bd3ff1854125256 /libs/ardour/ardour/crossfade.h | |
parent | 0c31e4c4f3d0bfe37d26a793c934f1b436f8fa0f (diff) |
major changes to Region, AudioRegion, Playlist, AudioPlaylist and Crossfade state management, to try to fix undo/redo. Not finished, butthe speedups etc. are in place
git-svn-id: svn://localhost/ardour2/trunk@993 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/crossfade.h')
-rw-r--r-- | libs/ardour/ardour/crossfade.h | 24 |
1 files changed, 3 insertions, 21 deletions
diff --git a/libs/ardour/ardour/crossfade.h b/libs/ardour/ardour/crossfade.h index 7fd7323b36..d1b2e8f1e1 100644 --- a/libs/ardour/ardour/crossfade.h +++ b/libs/ardour/ardour/crossfade.h @@ -33,7 +33,6 @@ #include <ardour/ardour.h> #include <ardour/curve.h> #include <ardour/audioregion.h> -#include <ardour/state_manager.h> #include <ardour/crossfade_compare.h> namespace ARDOUR { @@ -41,19 +40,7 @@ namespace ARDOUR { class AudioRegion; class Playlist; -struct CrossfadeState : public StateManager::State { - CrossfadeState (std::string reason) : StateManager::State (reason) {} - - UndoAction fade_in_memento; - UndoAction fade_out_memento; - nframes_t position; - nframes_t length; - AnchorPoint anchor_point; - bool follow_overlap; - bool active; -}; - -class Crossfade : public PBD::StatefulDestructible, public StateManager +class Crossfade : public PBD::StatefulDestructible { public: @@ -122,6 +109,7 @@ class Crossfade : public PBD::StatefulDestructible, public StateManager nframes_t position() const { return _position; } sigc::signal<void,Crossfade*> Invalidated; + sigc::signal<void,Change> StateChanged; bool covers (nframes_t frame) const { return _position <= frame && frame < _position + _length; @@ -129,8 +117,6 @@ class Crossfade : public PBD::StatefulDestructible, public StateManager OverlapType coverage (nframes_t start, nframes_t end) const; - UndoAction get_memento() const; - static void set_buffer_size (nframes_t); bool active () const { return _active; } @@ -172,15 +158,11 @@ class Crossfade : public PBD::StatefulDestructible, public StateManager static Sample* crossfade_buffer_out; static Sample* crossfade_buffer_in; - void initialize (bool savestate=true); + void initialize (); int compute (boost::shared_ptr<ARDOUR::AudioRegion>, boost::shared_ptr<ARDOUR::AudioRegion>, CrossfadeModel); bool update (bool force); - StateManager::State* state_factory (std::string why) const; - Change restore_state (StateManager::State&); - void member_changed (ARDOUR::Change); - }; |