diff options
Diffstat (limited to 'src/engine/events')
-rw-r--r-- | src/engine/events/ClearPatchEvent.cpp | 2 | ||||
-rw-r--r-- | src/engine/events/DeactivateEvent.cpp | 54 | ||||
-rw-r--r-- | src/engine/events/DeactivateEvent.hpp | 12 | ||||
-rw-r--r-- | src/engine/events/DestroyEvent.cpp | 2 |
4 files changed, 10 insertions, 60 deletions
diff --git a/src/engine/events/ClearPatchEvent.cpp b/src/engine/events/ClearPatchEvent.cpp index c37d1910..9122281b 100644 --- a/src/engine/events/ClearPatchEvent.cpp +++ b/src/engine/events/ClearPatchEvent.cpp @@ -143,7 +143,7 @@ ClearPatchEvent::post_process() for (size_t i = 0; i < _driver_ports->size(); ++i) { Raul::List<DriverPort*>::Node* ln = _driver_ports->at(i); if (ln) { - ln->elem()->unregister(); + ln->elem()->destroy(); _engine.maid()->push(ln); } } diff --git a/src/engine/events/DeactivateEvent.cpp b/src/engine/events/DeactivateEvent.cpp deleted file mode 100644 index a68419f0..00000000 --- a/src/engine/events/DeactivateEvent.cpp +++ /dev/null @@ -1,54 +0,0 @@ -/* This file is part of Ingen. - * Copyright (C) 2007 Dave 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 - */ - -#include "DeactivateEvent.hpp" -#include "Responder.hpp" -#include "Engine.hpp" - -namespace Ingen { - - -DeactivateEvent::DeactivateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp) -: QueuedEvent(engine, responder, timestamp) -{ -} - - -void -DeactivateEvent::pre_process() -{ - QueuedEvent::pre_process(); -} - - -void -DeactivateEvent::execute(ProcessContext& context) -{ - QueuedEvent::execute(context); -} - - -void -DeactivateEvent::post_process() -{ - _responder->respond_ok(); - _engine.deactivate(); -} - - -} // namespace Ingen - diff --git a/src/engine/events/DeactivateEvent.hpp b/src/engine/events/DeactivateEvent.hpp index 5a6750ba..eaa7e9cb 100644 --- a/src/engine/events/DeactivateEvent.hpp +++ b/src/engine/events/DeactivateEvent.hpp @@ -19,6 +19,7 @@ #define DEACTIVATEEVENT_H #include "QueuedEvent.hpp" +#include "Engine.hpp" namespace Ingen { @@ -30,11 +31,14 @@ namespace Ingen { class DeactivateEvent : public QueuedEvent { public: - DeactivateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp); + DeactivateEvent(Engine& engine, SharedPtr<Responder> responder, SampleCount timestamp) + : QueuedEvent(engine, responder, timestamp) + {} - void pre_process(); - void execute(ProcessContext& context); - void post_process(); + void post_process() { + _responder->respond_ok(); + _engine.deactivate(); + } }; diff --git a/src/engine/events/DestroyEvent.cpp b/src/engine/events/DestroyEvent.cpp index 52c19945..a9597638 100644 --- a/src/engine/events/DestroyEvent.cpp +++ b/src/engine/events/DestroyEvent.cpp @@ -200,7 +200,7 @@ DestroyEvent::post_process() } if (_driver_port) { - _driver_port->elem()->unregister(); + _driver_port->elem()->destroy(); _engine.maid()->push(_driver_port); } } |