00001 /*************************************************************************** 00002 inputtrain.h - description 00003 ------------------- 00004 copyright : (C) 2000 by Matt Grover 00005 email : mgrover@amygdala.org 00006 ***************************************************************************/ 00007 00008 /*************************************************************************** 00009 * * 00010 * This program is free software; you can redistribute it and/or modify * 00011 * it under the terms of the GNU General Public License as published by * 00012 * the Free Software Foundation; either version 2 of the License, or * 00013 * (at your option) any later version. * 00014 * * 00015 ***************************************************************************/ 00016 00017 #ifndef INPUTTRAIN_H 00018 #define INPUTTRAIN_H 00019 00020 00025 class InputTrain { 00026 public: 00027 InputTrain(unsigned int step, float timeConst); 00028 ~InputTrain(); 00029 00030 void GenTrain(); 00031 protected: 00032 unsigned int stepSize; // step size in microseconds 00033 unsigned int plotMin; // begining of plot (usually 0) in microseconds 00034 unsigned int plotMax; 00035 unsigned int plotSize; 00036 00037 int time; // microseconds 00038 int refractory; 00039 int lastSpike; // microseconds 00040 float lastV; // milivolts 00041 float currV; // milivolts 00042 float lastSlope; 00043 float currSlope; 00044 float tau; 00045 00046 void inline Excite(); 00047 }; 00048 00049 #endif