Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

RoutingDelayMap Class Reference

Spike routing table for scheduling of spikes within one engine. More...

#include <RoutingDelayMap.h>

List of all members.

Public Types

typedef map< delay_t,
event_target_group_id_t > 
delaymaptype
typedef
delaymaptype::const_iterator 
const_iterator

Public Member Functions

void insert (global_out_port_id_t port_id, delay_t delay, event_target_group_id_t group)
 Inserts new entry in the map [out_port_id]->(delay,eventtargetgroup).
event_target_group_id_t find (global_out_port_id_t port_id, delay_t delay)
 Checks if there is an entry for the specified sending object and the delay.
const_iterator begin (global_out_port_id_t out_port_id)
 Returns a begin iterator which can serve to iterate through all (delay, stg) pairs.
const_iterator end (global_out_port_id_t out_port_id)
 Returns an end iterator which can serve to iterate through all (delay, stg) pairs.
void increaseTotalNumOutPorts (unsigned num_ports)
unsigned getTotalNumOutPorts ()
void registerOutPorts (EvSimObject *obj)

Protected Member Functions

void resize (global_out_port_id_t out_port_id)

Protected Attributes

vector< delaymaptype > _map
unsigned totalNumOutPorts

Detailed Description

Spike routing table for scheduling of spikes within one engine.

For each spike sending object identified by id, the delay map stores many (delay, spike_target_group) pairs.

For a spiking connection with delay D between object A and object B which are in the same engine, an entry is added in the the map [A]->(D, STG) where the spike target group contains B. If there is already an entry [A]->(D, X) then B is added to X spike target group.


Member Function Documentation

event_target_group_id_t RoutingDelayMap::find ( global_out_port_id_t  port_id,
delay_t  delay 
)

Checks if there is an entry for the specified sending object and the delay.

Returns:
the ETG id if there is an entry, and no_eventgroup otherwise.

The documentation for this class was generated from the following files: