123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- #ifndef __SPIKETRAIN__HPP
- #define __SPIKETRAIN__HPP
- #include <vector>
- #include "typedefs.hpp"
- using namespace std;
- /** SpikeTrain stores a spike train of a neuron layer and calculates statistical information
- */
- class SpikeTrain
- {
- private:
- int** firings;
- int** firings_fromLayer;
- int** firings_loaded;
- int mN_firings;
- T_NNeurons mNNeurons;
- int* N_firings; // the number of fired neurons
- T_NNeurons* NNeurons;
- float dt; // timestep in ms
- public:
- SpikeTrain():firings(0), firings_loaded(0), firings_fromLayer(0), N_firings(0) {};
-
- SpikeTrain(int** _firings,
- int* _N_firings,
- T_NNeurons* _NNeurons,
- const float & _dt);
- SpikeTrain(const char* filename, const float& dt=0.25);
- ~SpikeTrain();
- void LoadSpikeFile(const char* filename);
- float MaxSpikeFreq(const int& NSpikes);
- void SpikeData(vector<double> * SpikeTimes, vector<double> * NeuronNumbers);
- void MeanSpikeRate(const double& WindowSize, vector<double>* timeScale, vector<double>* spikeRate);
- int nNeurons() {return *NNeurons;};
- };
- #endif // #ifndef __SPIKETRAIN__HPP
|