00001 00005 #ifndef _MEMBRANEPATCH_SIMPLE_H_ 00006 #define _MEMBRANEPATCH_SIMPLE_H_ 00007 00008 #include "spikingneuron.h" 00009 #include "ionchannel.h" 00010 #include "synapsetarget.h" 00011 00013 00064 class MembranePatchSimple { 00065 00066 public: 00067 00068 MembranePatchSimple(void); 00069 00070 virtual ~MembranePatchSimple(); 00071 00073 virtual void reset(void); 00074 00076 virtual void IandGtot(double *i, double *g); 00077 00079 float Cm; 00080 00082 float Rm; 00083 00085 double Em; 00086 00088 00092 float Vresting; 00093 00095 float Vinit; 00096 00098 float VmScale; 00099 00101 double Vm; 00102 00104 float Inoise; 00105 00107 float Iinject; 00108 00109 protected: 00110 friend class IonChannel; 00111 friend class ActiveChannel; 00112 00114 int nChannels; 00115 00117 int lChannels; 00118 00120 IonChannel **channels; 00121 00123 virtual void addChannel(IonChannel *newChannel); 00124 00126 virtual void destroyChannels(void); 00127 00128 }; 00129 00130 #endif