00001 00005 #ifndef _CBNEURON_H_ 00006 #define _CBNEURON_H_ 00007 00008 #include "spikingneuron.h" 00009 #include "ionchannel.h" 00010 #include "membranepatch.h" 00011 00013 00065 class CbNeuron : public SpikingNeuron, public MembranePatch { 00066 00067 DO_REGISTERING 00068 00069 public: 00070 00071 CbNeuron(void); 00072 virtual ~CbNeuron(); 00073 00075 void reset(void); 00076 00078 virtual double nextstate(void); 00079 00081 virtual int isRefractory(void); 00082 00084 float Vthresh; 00085 00087 float Vreset; 00088 00090 int doReset; 00091 00093 float Trefract; 00094 00096 virtual int addIncoming(Advancable *s); 00097 00099 virtual int addOutgoing(Advancable *s); 00100 00101 protected: 00103 int nStepsInRefr; 00104 00106 double C1; 00107 00109 bool spike; 00110 00111 }; 00112 00113 #endif