00001 // GapJunction.h --- 00002 // 00003 // Filename: GapJunction.h 00004 // Description: 00005 // Author: Subhasis Ray 00006 // Maintainer: 00007 // Created: Tue Jul 2 11:22:05 2013 (+0530) 00008 // Version: 00009 // Last-Updated: Tue Jul 2 12:39:14 2013 (+0530) 00010 // By: subha 00011 // Update #: 27 00012 // URL: 00013 // Keywords: 00014 // Compatibility: 00015 // 00016 // 00017 00018 // Commentary: 00019 // 00020 // Implementation of simple gap junction 00021 // 00022 // 00023 00024 // Change log: 00025 // 00026 // 00027 // 00028 // 00029 // This program is free software; you can redistribute it and/or 00030 // modify it under the terms of the GNU General Public License as 00031 // published by the Free Software Foundation; either version 3, or 00032 // (at your option) any later version. 00033 // 00034 // This program is distributed in the hope that it will be useful, 00035 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00036 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00037 // General Public License for more details. 00038 // 00039 // You should have received a copy of the GNU General Public License 00040 // along with this program; see the file COPYING. If not, write to 00041 // the Free Software Foundation, Inc., 51 Franklin Street, Fifth 00042 // Floor, Boston, MA 02110-1301, USA. 00043 // 00044 // 00045 00046 // Code: 00047 00048 class GapJunction { 00049 public: 00050 GapJunction(); 00051 ~GapJunction(); 00052 void setVm1(double Vm); 00053 void setVm2(double Vm); 00054 // Sometimes one may want to set g=0, i.e. R=inf - e.g. in Traub model 00055 void setGk(double g); 00056 double getGk() const; 00057 00058 // Dest function definitions. 00063 void process( const Eref& e, ProcPtr p ); 00064 00068 void reinit( const Eref& e, ProcPtr p ); 00069 00073 static const Cinfo* initCinfo(); 00074 00075 protected: 00076 double Vm1_; 00077 double Vm2_; 00078 double Gk_; 00079 }; 00080 // 00081 // GapJunction.h ends here