#include <GlobalSingleTargetDelayMap.h>
Public Types | |
typedef map< delaystep_t, spikegroupid_t > | delaymaptype |
typedef delaymaptype::const_iterator | const_iterator |
Iterator type which can be used to iterate through (delay, spike_target_group) pairs stored in the map. | |
Public Member Functions | |
GlobalSingleTargetDelayMap () | |
virtual | ~GlobalSingleTargetDelayMap () |
void | insert (gl_engineid_t eng, local_objectid_t oid, delaystep_t delay, spikegroupid_t stg) |
Inserts new entry in the map [gleng][localid]->(delay,spiketargetgroup). | |
spikegroupid_t | find (gl_engineid_t eng, local_objectid_t oid, delaystep_t delay) |
Checks if there is an entry for the specified sending object and the delay. | |
bool | hasDelays (gl_engineid_t eng, local_objectid_t oid) |
Checks if for the specified source there are any (delay, stg) pairs. | |
const_iterator | beginDelays (gl_engineid_t eng, local_objectid_t oid) |
Returns a begin iterator which can serve to iterate through all (delay, stg) pairs. | |
const_iterator | endDelays (gl_engineid_t eng, local_objectid_t oid) |
Returns an end iterator which can serve to iterate through all (delay, stg) pairs. | |
Protected Attributes | |
vector< hash_map < local_objectid_t, delaymaptype > > | _map |
The delay map data structure associates spike sending objects with delays and corresponding spike target groups. Used for scheduling of spikes coming from other nodes (global), in the case when there is only one single thread engine on the local node (single target).
Sending objects are identified their global engine ID and localid. The spike destinations are stored as (delay, spike_target_group) pairs.
Definition at line 25 of file GlobalSingleTargetDelayMap.h.
Definition at line 29 of file GlobalSingleTargetDelayMap.h.
typedef delaymaptype::const_iterator GlobalSingleTargetDelayMap::const_iterator |
Iterator type which can be used to iterate through (delay, spike_target_group) pairs stored in the map.
Definition at line 32 of file GlobalSingleTargetDelayMap.h.
GlobalSingleTargetDelayMap::GlobalSingleTargetDelayMap | ( | ) |
Definition at line 7 of file GlobalSingleTargetDelayMap.cpp.
GlobalSingleTargetDelayMap::~GlobalSingleTargetDelayMap | ( | ) | [virtual] |
Definition at line 10 of file GlobalSingleTargetDelayMap.cpp.
void GlobalSingleTargetDelayMap::insert | ( | gl_engineid_t | eng, | |
local_objectid_t | oid, | |||
delaystep_t | delay, | |||
spikegroupid_t | stg | |||
) |
Inserts new entry in the map [gleng][localid]->(delay,spiketargetgroup).
Definition at line 15 of file GlobalSingleTargetDelayMap.cpp.
Referenced by DistributedSingleThreadNetwork::_addSpikeMessage_().
spikegroupid_t GlobalSingleTargetDelayMap::find | ( | gl_engineid_t | eng, | |
local_objectid_t | oid, | |||
delaystep_t | delay | |||
) |
Checks if there is an entry for the specified sending object and the delay.
Definition at line 26 of file GlobalSingleTargetDelayMap.cpp.
References _map, and no_spikegroup.
Referenced by DistributedSingleThreadNetwork::_addSpikeMessage_(), hasDelays(), and insert().
bool GlobalSingleTargetDelayMap::hasDelays | ( | gl_engineid_t | eng, | |
local_objectid_t | oid | |||
) |
Checks if for the specified source there are any (delay, stg) pairs.
Definition at line 39 of file GlobalSingleTargetDelayMap.cpp.
Referenced by STDistributedIncomingSpikeScheduler::processMPIInputSpikeBuffers().
GlobalSingleTargetDelayMap::const_iterator GlobalSingleTargetDelayMap::beginDelays | ( | gl_engineid_t | eng, | |
local_objectid_t | oid | |||
) |
Returns a begin iterator which can serve to iterate through all (delay, stg) pairs.
Definition at line 49 of file GlobalSingleTargetDelayMap.cpp.
References _map.
Referenced by STDistributedIncomingSpikeScheduler::processMPIInputSpikeBuffers().
GlobalSingleTargetDelayMap::const_iterator GlobalSingleTargetDelayMap::endDelays | ( | gl_engineid_t | eng, | |
local_objectid_t | oid | |||
) |
Returns an end iterator which can serve to iterate through all (delay, stg) pairs.
Definition at line 54 of file GlobalSingleTargetDelayMap.cpp.
References _map.
Referenced by STDistributedIncomingSpikeScheduler::processMPIInputSpikeBuffers().
vector< hash_map<local_objectid_t, delaymaptype > > GlobalSingleTargetDelayMap::_map [protected] |
Definition at line 59 of file GlobalSingleTargetDelayMap.h.
Referenced by beginDelays(), endDelays(), find(), hasDelays(), and insert().