|
|||||||||||
Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages
conciongate.h00001 #ifndef __CONCIONGATE_H__ 00002 #define __CONCIONGATE_H__ 00003 00004 #include <math.h> 00005 #include <stdlib.h> 00006 #include "advanceable.h" 00007 #include "membranepatch.h" 00008 #include "iongate.h" 00009 00010 00012 #define CONCIONGATE_CONC_MIN 0.00 // [Mol] 00013 00015 #define CONCIONGATE_CONC_MAX 1000e-9 // [Mol] 00016 00018 #define CONCIONGATE_CONC_INC 5.0e-10 // 0.25mV 00019 00020 #define CONCIONGATE_TABLE_SIZE ((int)((CONCIONGATE_CONC_MAX - CONCIONGATE_CONC_MIN) / CONCIONGATE_CONC_INC + 1)) 00021 00022 00024 00029 class ConcIonGate : public IonGate { 00030 00031 public: 00033 ConcIonGate(void) { Conc=0; ConcRest=0; ConcScale=0; ConcType=100; }; 00034 00035 // NOTE: The destructor comes within the macro IONGATE_TABLES 00036 00038 virtual void reset(void); 00039 00041 virtual int updateInternal(void); 00042 00044 virtual int advance(void); 00045 00047 virtual double tau(double ) { return 0; } 00048 00050 virtual double infty(double ) { return 0; } 00051 00052 virtual double pInfty(MembranePatchSimple *m); 00053 00055 virtual void ConnectToMembrane(MembranePatchSimple *m); 00056 00057 protected: 00058 00059 IONGATE_TABLES(ConcIonGate); 00060 00062 float *ConcRest; 00063 00065 double *Conc; 00066 00068 float *ConcScale; 00069 00071 int ConcType; 00072 00073 }; 00074 00075 #endif 00076 00077 00078 | |||||||||||
(C) 2003, Thomas Natschläger | last modified 07/10/2006 |