14 #ifndef SST_CORE_SIMULATION_H
15 #define SST_CORE_SIMULATION_H
17 #include "sst/core/output.h"
18 #include "sst/core/rankInfo.h"
19 #include "sst/core/sst_types.h"
20 #include "sst/core/unitAlgebra.h"
25 #define STATALLFLAG "--ALLSTATS--"
51 __attribute__((deprecated("Element facing
Simulation class APIs are deprecated and have moved to the various "
52 "element base classes. The APIs will be removed in SST 13.")));
56 __attribute__((deprecated("Element facing
Simulation class APIs are deprecated and have moved to the various "
57 "element base classes. The APIs will be removed in SST 13.")));
61 __attribute__((deprecated("Element facing
Simulation class APIs are deprecated and have moved to the various "
62 "element base classes. The APIs will be removed in SST 13.")));
85 __attribute__((deprecated("
getFinalSimTime() has been deprecated and will be removed in SST 13. It has been "
103 virtual
void requireEvent(const std::
string& name) __attribute__((deprecated(
141 Simulation(Simulation
const&);
142 void operator=(Simulation
const&);
147 #endif // SST_CORE_SIMULATION_H
Output object provides consistent method for outputting data to stdout, stderr and/or sst debug file...
Definition: output.h:51
virtual SimTime_t getEndSimCycle() const =0
Return the end simulation time as a cycle count.
static TimeLord * getTimeLord(void)
Return the TimeLord associated with this Simulation.
Definition: simulation.cc:57
static Simulation * getSimulation()
Return a pointer to the singleton instance of the Simulation.
Definition: simulation.cc:51
Main control class for a SST Simulation.
Definition: simulation.h:34
virtual void requireLibrary(const std::string &name)=0
Signifies that a library is required for this simulation.
virtual UnitAlgebra getFinalSimTime() const =0
Return the end simulation time as a time.
virtual RankInfo getRank() const =0
Get this instance's parallel rank.
Definition: simulation.h:40
Definition: simulation.h:39
virtual UnitAlgebra getElapsedSimTime() const =0
Return the elapsed simulation time as a time.
virtual void printStatus(bool fullStatus)=0
Causes the current status of the simulation to be printed to stderr.
virtual double getCompletePhaseElapsedRealTime() const =0
Get the amount of real-time spent executing the complete phase of the simulation. ...
Definition: rankInfo.h:21
virtual RankInfo getNumRanks() const =0
Get the number of parallel ranks in the simulation.
virtual int getCurrentPriority() const =0
Return the current priority.
virtual UnitAlgebra getEndSimTime() const =0
Return the end simulation time as a time.
virtual double getRunPhaseElapsedRealTime() const =0
Get the amount of real-time spent executing the run phase of the simulation.
Class for creating and managing TimeConverter objects.
Definition: timeLord.h:37
Definition: simulation.h:41
static Output & getSimulationOutput()
Return the base simulation Output class instance.
Definition: simulation.cc:63
virtual SimTime_t getCurrentSimCycle() const =0
Return the current simulation time as a cycle count.
virtual std::string & getOutputDirectory()=0
Returns the output directory of the simulation.
Definition: simulation.h:42
Mode_t
Type of Run Modes.
Definition: simulation.h:38
Performs Unit math in full precision.
Definition: unitAlgebra.h:106
virtual double getInitPhaseElapsedRealTime() const =0
Get the amount of real-time spent executing the init phase of the simulation.
virtual Mode_t getSimulationMode() const =0
Get the run mode of the simulation (e.g.
virtual void requireEvent(const std::string &name)=0
Signifies that an event type is required for this simulation Causes the Factory to verify that the re...