CSIM: analogneuron.h Source File

analogneuron.h

Go to the documentation of this file.
00001 
00005 #ifndef _ANALOGNEURON_H_
00006 #define _ANALOGNEURON_H_
00007 
00008 #include "neuron.h"
00009 #include "analogsynapse.h"
00010 #include "globaldefinitions.h"
00011 
00013 
00022 class AnalogNeuron : public Neuron {
00023  public:
00024   AnalogNeuron(void);
00025   ~AnalogNeuron();
00026 
00028 
00030   double Vm;
00031 
00033   float Vresting;
00034 
00036   double Inoise;
00037   virtual double nextstate(void) { return (VmOut = Vm = Vresting); }
00038   virtual void force(double);
00039   virtual void reset(void);
00040   virtual void output(void);
00041   virtual int addIncoming(Advancable *a);
00042   virtual int addOutgoing(Advancable *a);
00043 
00044  protected:
00046   struct Queue {
00048     double *entry;
00050     unsigned int current;
00052     unsigned int size;
00053   };
00055 
00059   double VmOut;
00060 
00061  private:
00063   Queue *delayQueue;
00064 
00066   double getFromQueue(int delayIndex);
00067 
00069   void putInQueue(double theValue);
00070 
00071 };
00072 
00073 #endif

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