|
| SimpleNetwork (SST::Component *comp) |
| Constructor, designed to be used via 'loadSubComponent'. More...
|
|
virtual bool | initialize (const std::string &portName, const UnitAlgebra &link_bw, int vns, const UnitAlgebra &in_buf_size, const UnitAlgebra &out_buf_size)=0 |
| Second half of building the interface. More...
|
|
virtual void | sendInitData (Request *req)=0 |
| Sends a network request during the init() phase.
|
|
virtual Request * | recvInitData ()=0 |
| Receive any data during the init() phase. More...
|
|
virtual bool | send (Request *req, int vn)=0 |
| Returns a handle to the underlying SST::Link. More...
|
|
virtual Request * | recv (int vn)=0 |
| Receive a Request from the network. More...
|
|
virtual void | setup () override |
| Called after all components have been constructed and inialization has completed, but before simulation time has begun. More...
|
|
virtual void | init (unsigned int UNUSED(phase)) override |
| Used during the init phase. More...
|
|
virtual void | finish () override |
| Called after simulation completes, but before objects are destroyed. More...
|
|
virtual bool | spaceToSend (int vn, int num_bits)=0 |
| Checks if there is sufficient space to send on the specified virtual netork. More...
|
|
virtual bool | requestToReceive (int vn)=0 |
| Checks if there is a waiting network request request pending in the specified virtual network. More...
|
|
virtual void | setNotifyOnReceive (HandlerBase *functor)=0 |
| Registers a functor which will fire when a new request is received from the network. More...
|
|
virtual void | setNotifyOnSend (HandlerBase *functor)=0 |
| Registers a functor which will fire when a request is sent to the network. More...
|
|
virtual bool | isNetworkInitialized () const =0 |
| Check to see if network is initialized. More...
|
|
virtual nid_t | getEndpointID () const =0 |
| Returns the endpoint ID. More...
|
|
virtual const UnitAlgebra & | getLinkBW () const =0 |
| Returns the final BW of the link managed by the simpleNetwork instance. More...
|
|
| SubComponent (Component *parent) |
|
ComponentId_t | getId () const |
| Returns unique component ID.
|
|
virtual void | emergencyShutdown (void) |
| Called when SIGINT or SIGTERM has been seen. More...
|
|
const std::string & | getName () const |
| Returns component Name.
|
|
virtual bool | Status () |
| Currently unused function.
|
|
virtual void | printStatus (Output &UNUSED(out)) |
| Called by the Simulation to request that the component print it's current status. More...
|
|
bool | isPortConnected (const std::string &name) const |
| Determine if a port name is connected to any links.
|
|
Link * | configureLink (std::string name, TimeConverter *time_base, Event::HandlerBase *handler=NULL) |
| Configure a Link. More...
|
|
Link * | configureLink (std::string name, std::string time_base, Event::HandlerBase *handler=NULL) |
| Configure a Link. More...
|
|
Link * | configureLink (std::string name, Event::HandlerBase *handler=NULL) |
| Configure a Link. More...
|
|
Link * | configureSelfLink (std::string name, TimeConverter *time_base, Event::HandlerBase *handler=NULL) |
| Configure a SelfLink (Loopback link) More...
|
|
Link * | configureSelfLink (std::string name, std::string time_base, Event::HandlerBase *handler=NULL) |
| Configure a SelfLink (Loopback link) More...
|
|
Link * | configureSelfLink (std::string name, Event::HandlerBase *handler=NULL) |
| Configure a SelfLink (Loopback link) More...
|
|
TimeConverter * | registerClock (std::string freq, Clock::HandlerBase *handler, bool regAll=true) |
| Registers a clock for this component. More...
|
|
TimeConverter * | registerClock (const UnitAlgebra &freq, Clock::HandlerBase *handler, bool regAll=true) |
|
void | unregisterClock (TimeConverter *tc, Clock::HandlerBase *handler) |
| Removes a clock handler from the component.
|
|
Cycle_t | reregisterClock (TimeConverter *freq, Clock::HandlerBase *handler) |
| Reactivates an existing Clock and Handler. More...
|
|
Cycle_t | getNextClockCycle (TimeConverter *freq) |
| Returns the next Cycle that the TimeConverter would fire.
|
|
TimeConverter * | registerOneShot (std::string timeDelay, OneShot::HandlerBase *handler) |
| Registers a OneShot event for this component. More...
|
|
TimeConverter * | registerOneShot (const UnitAlgebra &timeDelay, OneShot::HandlerBase *handler) |
|
TimeConverter * | registerTimeBase (std::string base, bool regAll=true) |
| Registers a default time base for the component and optionally sets the the component's links to that timebase. More...
|
|
TimeConverter * | getTimeConverter (const std::string &base) |
|
TimeConverter * | getTimeConverter (const UnitAlgebra &base) |
|
SimTime_t | getCurrentSimTime (TimeConverter *tc) const |
| return the time since the simulation began in units specified by the parameter. More...
|
|
SimTime_t | getCurrentSimTime () const |
| return the time since the simulation began in the default timebase
|
|
SimTime_t | getCurrentSimTime (std::string base) |
| return the time since the simulation began in timebase specified More...
|
|
SimTime_t | getCurrentSimTimeNano () const |
| Utility function to return the time since the simulation began in nanoseconds.
|
|
SimTime_t | getCurrentSimTimeMicro () const |
| Utility function to return the time since the simulation began in microseconds.
|
|
SimTime_t | getCurrentSimTimeMilli () const |
| Utility function to return the time since the simulation began in milliseconds.
|
|
template<typename T > |
Statistic< T > * | registerStatistic (std::string statName, std::string statSubId="") |
| Registers a statistic. More...
|
|
template<typename T > |
Statistic< T > * | registerStatistic (const char *statName, const char *statSubId="") |
|
Module * | loadModule (std::string type, Params ¶ms) |
| Loads a module from an element Library. More...
|
|
Module * | loadModuleWithComponent (std::string type, Component *comp, Params ¶ms) |
| Loads a module from an element Library. More...
|
|
SubComponent * | loadSubComponent (std::string type, Component *comp, Params ¶ms) |
| Loads a SubComponent from an element Library. More...
|
|
SubComponent * | loadNamedSubComponent (std::string name) |
|
SubComponent * | loadNamedSubComponent (std::string name, Params ¶ms) |
|
SubComponentSlotInfo * | getSubComponentSlotInfo (std::string name, bool fatalOnEmptyIndex=false) |
|
const std::vector< double > & | getCoordinates () const |
| Retrieve the X,Y,Z coordinates of this component.
|
|
Generic network interface.