/*--------------------------------------------------------------------------
Author: Thomas Nowotny
Institute: Institute for Nonlinear Dynamics
University of California San Diego
La Jolla, CA 92093-0402
email to: tnowotny@ucsd.edu
initial version: 2005-08-17
--------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------
The wrapper class which takes lists of pointers to neurons and synapses
which are networked to a neural system and assembles a common state
vector and handles the derivatives. At the same time it serves the neurons
and synapses their state at any given time and allows them to adjust their
parameters.
--------------------------------------------------------------------------*/
using namespace std;
#ifndef CN_NEURONMODEL_H
#define CN_NEURONMODEL_H
#include <iostream>
#include <list>
class neuron;
class synapse;
class NeuronModel
{
private:
list<neuron *> *neurs;
list<neuron *>::iterator niter;
list<synapse *> *syns;
list<synapse *>::iterator siter;
public:
NeuronModel();
NeuronModel(list<neuron *> *, list<synapse *> *,
int &, ostream &);
virtual ~NeuronModel();
virtual void derivative(double *, double *);
virtual void noise(double *, double *);
};
#endif