From 6f78a755b0f8c59f85cdc02e9eeca8db860a2ed2 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sat, 10 Jun 2006 01:02:08 +0000 Subject: Juggling things around... git-svn-id: http://svn.drobilla.net/lad/grauph@13 a436a847-0d15-0410-975c-d299462d15a1 --- src/engine/ConnectionEvent.h | 107 ------------------------------------------- 1 file changed, 107 deletions(-) delete mode 100644 src/engine/ConnectionEvent.h (limited to 'src/engine/ConnectionEvent.h') diff --git a/src/engine/ConnectionEvent.h b/src/engine/ConnectionEvent.h deleted file mode 100644 index 8aaf2292..00000000 --- a/src/engine/ConnectionEvent.h +++ /dev/null @@ -1,107 +0,0 @@ -/* This file is part of Om. Copyright (C) 2006 Dave Robillard. - * - * Om 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. - * - * Om 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., - * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -#ifndef CONNECTIONEVENT_H -#define CONNECTIONEVENT_H - -#include -#include "QueuedEvent.h" -#include "util/Path.h" -#include "util/types.h" -using std::string; - -template class ListNode; -template class Array; - -namespace Om { - -class Patch; -class Node; -class Connection; -class MidiMessage; -class Port; -template class ConnectionBase; -template class InputPort; -template class OutputPort; -template class TypedConnectionEvent; // helper, defined below - - -/** Make a Connection between two Ports. - * - * \ingroup engine - */ -class ConnectionEvent : public QueuedEvent -{ -public: - ConnectionEvent(CountedPtr responder, const string& src_port_path, const string& dst_port_path); - ~ConnectionEvent(); - - void pre_process(); - void execute(samplecount offset); - void post_process(); - -private: - - enum ErrorType { NO_ERROR, PARENT_PATCH_DIFFERENT, PORT_NOT_FOUND, TYPE_MISMATCH }; - - Path m_src_port_path; - Path m_dst_port_path; - - Patch* m_patch; - Port* m_src_port; - Port* m_dst_port; - - QueuedEvent* m_typed_event; - - ErrorType m_error; -}; - - -/** Templated ConnectionEvent. - * - * Intended to be called from ConnectionEvent so callers (ie OSCReceiver) - * can use ConnectionEvent without knowing anything about types (which - * they can't, since all they have is Port paths). - */ -template -class TypedConnectionEvent : public QueuedEvent -{ -public: - TypedConnectionEvent(CountedPtr responder, OutputPort* src_port, InputPort* dst_port); - ~TypedConnectionEvent(); - - void pre_process(); - void execute(samplecount offset); - void post_process(); - -private: - OutputPort* m_src_port; - InputPort* m_dst_port; - - Patch* m_patch; - Array* m_process_order; ///< New process order for Patch - ConnectionBase* m_connection; - ListNode* m_patch_listnode; - ListNode*>* m_port_listnode; - - bool m_succeeded; -}; - - - -} // namespace Om - -#endif // CONNECTIONEVENT_H -- cgit v1.2.1