CARLsim
5.0.0
CARLsim: a GPU-accelerated SNN simulator
|
Go to the documentation of this file.
50 #ifndef _SPIKE_BUFFER_H_
51 #define _SPIKE_BUFFER_H_
112 return (_node == other._node);
116 return (_node != other._node);
136 void schedule(
int neurId,
int grpId,
unsigned short int delay);
148 void reset(
int minDelay,
int maxDelay);
154 SpikeIterator
front(
int stepOffset=0);
157 SpikeIterator
back();
void step()
advance to next time step
int neurId
corresponding global neuron Id
bool operator!=(const SpikeIterator &other)
SpikeIterator * operator++()
SpikeIterator(SpikeNode *n)
~SpikeBuffer()
SpikeBuffer Destructor.
void schedule(int neurId, int grpId, unsigned short int delay)
Schedule a spike.
size_t length()
retrieve actual length of the buffer
bool operator==(const SpikeIterator &other)
unsigned short int delay
scheduling delay (in number of time steps)
SpikeNode * next
pointer to the next element in the list
SpikeIterator back()
pointer to the back of the spike buffer
linked list to hold the corresponding neuron Id and delivery delay for each spike
Circular buffer for delivering spikes.
int grpId
corresponding global group Id
SpikeIterator front(int stepOffset=0)
pointer to the front of the spike buffer
SpikeBuffer(int minDelay, int maxDelay)
SpikeBuffer Constructor.
void reset(int minDelay, int maxDelay)
Reset buffer data.
Iterator to loop over the scheduled spikes at a certain delay.