CSIM: Advancable Class Reference

Advancable Class Reference

#include <advanceable.h>

Inheritance diagram for Advancable:

csimClass Algorithm csimRecorder FilterFunction Forceable IonChannel IonGate PhysicalModel Preprocessor Readout Synapse Teacher List of all members.

Detailed Description

Base class for all objects to simulate.

The Model

Advancable defines the (virtual) methods advance() and reset() which must be implemented by any class in the simulation in order to implement a specific model.

At the beginning of a simulation (at time $t=0$ ) reset() iscalled. For each time step (of fixed length $\Delta t$ ) duringthe simulation advance() will be called for each object and it is assumed that during the call to advance() the object calculates its next state and sends the result of this computation to any destination/succesors/outgoing object.

Input/Output Signals

Each object in the simulation gets input signals (analog or spikes) from source or incoming objects and sends output signals (analog or spikes) to destination or outgoing objects. Hence there are the two methods addIncoming() and addOutgoing() which will be called to set up the inward and outward signal flow. Within these methods each object (derived from Advancable) should check whether an object is a proper source (destination) of input (output) signals.

Public Member Functions

  • virtual void reset (void)=0
    Called at the beginning of a simulation at t=0.
  • virtual int advance (void)=0
    step (return value 1) or can be inactived (return value 0) (Currently only SpikingSynapses can return 0).
  • virtual int addIncoming (Advancable *Incoming)=0
    This method will be called if object Incoming wants to send information to this object.
  • virtual int addOutgoing (Advancable *Outgoing)=0
    This method will be called if this object wants to send information to object Outgoing.

Friends


 
(C) 2003, Thomas Natschläger last modified 07/10/2006