Provides the core functionality for managing events. More...
#include <EvSimEngine.h>
Public Member Functions | |
EvSimEngine (EvSimNetwork &net, EvSimObjectPool &obj_pool, RoutingDelayMap &delay_map, EventTargetGroupPool &etg_pool, UpdateLinksMap &upd_links_map) | |
void | scheduleEvent (global_out_port_id_t port_id, Time t) |
void | init () |
void | reset () |
void | simulate (Time t) |
void | advance (Time t) |
void | setRNDSeed (unsigned seed) |
void | registerProjectedOutputPorts (EvSimObject *obj) |
void | deliverScheduledEvent (event_target_group_id_t etg, Time time) |
Protected Types | |
enum | EventType { evProjected, evScheduled } |
Protected Member Functions | |
void | processEmittedEvent (global_out_port_id_t out_port_id, Time time) |
Protected Attributes | |
Time | last_event_time |
Time | curr_sim_clock |
EvSimObjectPool & | obj_pool |
ProjectedEventsHeapBuffer | proj_events_buf |
ScheduledEventsQueue | scheduled_events_queue |
RoutingDelayMap & | delay_map |
EventTargetGroupPool & | etg_pool |
PropagatedUpdateList | upd_list |
SimContext | sim_context |
MersenneTwister19937 | sim_random_eng |
Friends | |
class | EvSimNetwork |
Provides the core functionality for managing events.