STDistributedIncomingSpikeScheduler.h

Go to the documentation of this file.
00001 #ifndef STDISTRIBUTEDINCOMINGSPIKESCHEDULER_H_
00002 #define STDISTRIBUTEDINCOMINGSPIKESCHEDULER_H_
00003 
00004 #include "PropagatedSpikeBuffer.h"
00005 #include "MPIInputBuffer.h"
00006 #include "GlobalSingleTargetDelayMap.h"
00007 #include "DistributedIncomingSpikeScheduler.h"
00008 
00010 
00016 class STDistributedIncomingSpikeScheduler : public DistributedIncomingSpikeScheduler
00017 {
00018 public:
00020     /*
00021      * Constructs an instance of STDistributedIncomingSpikeScheduler.
00022      * 
00023      * \param inputBuffers Reference to an array of the MPI input buffers that are to be scaned for incoming spikes.
00024      * 
00025      * \param globalDelayMap Reference to the global delay map which contains the delays and target groups for each spike source.
00026      * 
00027      * \param spikeBuffer Destination buffer of the processing. For each incoming spike a set of target groups are inserted in the appropriate place with respect to the delay.
00028      * 
00029      * \param cycleSteps Number of simulation steps in one simulation cycle (usualy equal to minimum synapse delay).
00030      */
00031     STDistributedIncomingSpikeScheduler(
00032         MPIInputBufferVector &inputBuffers,
00033         GlobalSingleTargetDelayMap &globalDelayMap,
00034         PropagatedSpikeBuffer &spikeBuffer,
00035         int cycleSteps);
00036 
00037     virtual ~STDistributedIncomingSpikeScheduler();
00038 
00040 
00043     virtual void processMPIInputSpikeBuffers();
00044 
00045 protected:
00046 
00047     PropagatedSpikeBuffer & spikeBuf;
00048 
00049     MPIInputBufferVector & mpiInBuffers;
00050 
00051     GlobalSingleTargetDelayMap &delayMap;
00052 
00053     int _cycleSteps;
00054 };
00055 
00056 #endif /*STDISTRIBUTEDINCOMINGSPIKESCHEDULER_H_*/

Generated on Wed Jul 9 16:34:38 2008 for PCSIM by  doxygen 1.5.5