diff options
author | David Robillard <d@drobilla.net> | 2017-12-16 22:27:22 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2017-12-16 22:27:22 +0100 |
commit | f2d3c77c9a470f20506c90098ab5cf4d3e5c9eff (patch) | |
tree | 38b27fed96f39bd1a3b255206f3af93c8f4708af /src/server/events/Delete.hpp | |
parent | d078741456bacf08e2bc3e5d6cda58c2d16ef029 (diff) | |
download | ingen-f2d3c77c9a470f20506c90098ab5cf4d3e5c9eff.tar.gz ingen-f2d3c77c9a470f20506c90098ab5cf4d3e5c9eff.tar.bz2 ingen-f2d3c77c9a470f20506c90098ab5cf4d3e5c9eff.zip |
Adjust indices when ports are deleted
Diffstat (limited to 'src/server/events/Delete.hpp')
-rw-r--r-- | src/server/events/Delete.hpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/server/events/Delete.hpp b/src/server/events/Delete.hpp index 0003e821..03c994fe 100644 --- a/src/server/events/Delete.hpp +++ b/src/server/events/Delete.hpp @@ -17,6 +17,9 @@ #ifndef INGEN_EVENTS_DELETE_HPP #define INGEN_EVENTS_DELETE_HPP +#include <map> +#include <vector> + #include "ingen/Store.hpp" #include "CompiledGraph.hpp" @@ -60,6 +63,9 @@ public: void undo(Interface& target); private: + using IndexChange = std::pair<uint32_t, uint32_t>; + using IndexChanges = std::map<Raul::Path, IndexChange>; + Raul::URI _uri; Raul::Path _path; SPtr<BlockImpl> _block; ///< Non-NULL iff a block @@ -69,6 +75,7 @@ private: MPtr<CompiledGraph> _compiled_graph; ///< Graph's new process order DisconnectAll* _disconnect_event; Store::Objects _removed_objects; + IndexChanges _port_index_changes; std::vector<ControlBindings::Binding*> _removed_bindings; }; |