summaryrefslogtreecommitdiffstats
path: root/src/engine/events/Delete.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/events/Delete.hpp')
-rw-r--r--src/engine/events/Delete.hpp95
1 files changed, 0 insertions, 95 deletions
diff --git a/src/engine/events/Delete.hpp b/src/engine/events/Delete.hpp
deleted file mode 100644
index f00ad847..00000000
--- a/src/engine/events/Delete.hpp
+++ /dev/null
@@ -1,95 +0,0 @@
-/* This file is part of Ingen.
- * Copyright 2007-2011 David Robillard <http://drobilla.net>
- *
- * Ingen is free software; you can redistribute it and/or modify it under the
- * terms of the GNU General Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at your option) any later
- * version.
- *
- * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- */
-
-#ifndef INGEN_EVENTS_DELETE_HPP
-#define INGEN_EVENTS_DELETE_HPP
-
-#include "QueuedEvent.hpp"
-#include "EngineStore.hpp"
-#include "PatchImpl.hpp"
-#include "ControlBindings.hpp"
-
-namespace Raul {
- template<typename T> class Array;
- template<typename T> class ListNode;
-}
-
-namespace Ingen {
-namespace Engine {
-
-class GraphObjectImpl;
-class NodeImpl;
-class PortImpl;
-class DriverPort;
-class CompiledPatch;
-
-namespace Events {
-
-class DisconnectAll;
-
-/** \page methods
- * <h2>DELETE</h2>
- * As per WebDAV (RFC4918 S9.6).
- *
- * Remove an object from the engine and destroy it.
- *
- * \li All properties of the object are lost
- * \li All references to the object are lost (e.g. the parent's reference to
- * this child is lost, any connections to the object are removed, etc.)
- */
-
-/** DELETE a graph object (see \ref methods).
- * \ingroup engine
- */
-class Delete : public QueuedEvent
-{
-public:
- Delete(Engine& engine,
- SharedPtr<Request> request,
- FrameTime timestamp,
- const Raul::URI& uri);
-
- ~Delete();
-
- void pre_process();
- void execute(ProcessContext& context);
- void post_process();
-
-private:
- Raul::URI _uri;
- Raul::Path _path;
- EngineStore::iterator _store_iterator;
- SharedPtr<NodeImpl> _node; ///< Non-NULL iff a node
- SharedPtr<PortImpl> _port; ///< Non-NULL iff a port
- Raul::Deletable* _garbage;
- DriverPort* _driver_port;
- PatchImpl::Nodes::Node* _patch_node_listnode;
- Raul::List<PortImpl*>::Node* _patch_port_listnode;
- Raul::Array<PortImpl*>* _ports_array; ///< New (external) ports for Patch
- CompiledPatch* _compiled_patch; ///< Patch's new process order
- DisconnectAll* _disconnect_event;
-
- SharedPtr<ControlBindings::Bindings> _removed_bindings;
-
- SharedPtr< Raul::Table<Raul::Path, SharedPtr<GraphObject> > > _removed_table;
-};
-
-} // namespace Engine
-} // namespace Ingen
-} // namespace Events
-
-#endif // INGEN_EVENTS_DELETE_HPP