diff options
author | David Robillard <d@drobilla.net> | 2006-06-10 02:43:54 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2006-06-10 02:43:54 +0000 |
commit | 47246db7e9d71ba694b719001033fba1766a58c4 (patch) | |
tree | 25614ea4f2c92033a3cd37f6413df742f09a5369 /src/clients/NodeModel.cpp | |
parent | 98fe0e7056e6697396249531785d3899f94d79be (diff) | |
download | ingen-47246db7e9d71ba694b719001033fba1766a58c4.tar.gz ingen-47246db7e9d71ba694b719001033fba1766a58c4.tar.bz2 ingen-47246db7e9d71ba694b719001033fba1766a58c4.zip |
More juggling
git-svn-id: http://svn.drobilla.net/lad/grauph@16 a436a847-0d15-0410-975c-d299462d15a1
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); -} - -} |