diff options
Diffstat (limited to 'src/clients/NodeModel.cpp')
-rw-r--r-- | src/clients/NodeModel.cpp | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/src/clients/NodeModel.cpp b/src/clients/NodeModel.cpp deleted file mode 100644 index efdae494..00000000 --- a/src/clients/NodeModel.cpp +++ /dev/null @@ -1,117 +0,0 @@ -/* This file is part of Om. Copyright (C) 2005 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 - */ - -#include "NodeModel.h" -#include "PatchModel.h" -#include <cassert> - -namespace LibOmClient { - - -NodeModel::NodeModel(const Path& path) -: ObjectModel(path), - m_polyphonic(false), - m_plugin(NULL), - m_x(0.0f), - m_y(0.0f) -{ -} - -NodeModel::~NodeModel() -{ - for (PortModelList::iterator i = m_ports.begin(); i != m_ports.end(); ++i) - delete(*i); -} - - -void -NodeModel::remove_port(const string& port_path) -{ - for (PortModelList::iterator i = m_ports.begin(); i != m_ports.end(); ++i) { - if ((*i)->path() == port_path) { - m_ports.erase(i); - break; - } - } -} - - -void -NodeModel::clear() -{ - for (PortModelList::iterator i = m_ports.begin(); i != m_ports.end(); ++i) - delete (*i); - - m_ports.clear(); - - assert(m_ports.empty()); -} - - -void -NodeModel::set_path(const Path& p) -{ - const string old_path = m_path; - - ObjectModel::set_path(p); - - for (PortModelList::iterator i = m_ports.begin(); i != m_ports.end(); ++i) - (*i)->set_path(m_path + "/" + (*i)->name()); - - if (parent_patch() != NULL && old_path.length() > 0) - parent_patch()->rename_node(old_path, p); -} - - -void -NodeModel::add_port(PortModel* pm) -{ - assert(pm->name() != ""); - assert(pm->path().length() > m_path.length()); - assert(pm->path().substr(0, m_path.length()) == m_path); - assert(pm->parent() == NULL); - assert(get_port(pm->name()) == NULL); - - m_ports.push_back(pm); - pm->set_parent(this); -} - - -PortModel* -NodeModel::get_port(const string& port_name) -{ - assert(port_name.find("/") == string::npos); - for (PortModelList::iterator i = m_ports.begin(); i != m_ports.end(); ++i) - if ((*i)->name() == port_name) - return (*i); - return NULL; -} - - -void -NodeModel::add_program(int bank, int program, const string& name) -{ - m_banks[bank][program] = name; -} -void -NodeModel::remove_program(int bank, int program) -{ - m_banks[bank].erase(program); - if (m_banks[bank].size() == 0) - m_banks.erase(bank); -} - -} |