#include <Simulator.hpp>
Definition at line 55 of file Simulator.hpp.
§ Simulator() [1/2]
Simulator::Simulator |
( |
int |
argc, |
|
|
char ** |
argv |
|
) |
| |
Definition at line 74 of file Simulator.cpp.
76 std::cout <<
"param list:" << std::endl;
77 for(
int i = 0; i < argc; ++i){
78 std::cout << i <<
"\t" << argv[i] << std::endl;
87 _params = std::vector<std::string>();
88 for (
int i = 0; i < argc; i++) {
89 char* param = argv[i];
90 _params.push_back(std::string(param));
static void sig_handler(int _)
std::vector< std::string > _params
static volatile SimulatorInterruptionStatus _interruption_status
§ Simulator() [2/2]
orcasim::modeling::Simulator::Simulator |
( |
| ) |
|
§ GetExitStatus()
int Simulator::GetExitStatus |
( |
| ) |
|
§ GetInterruptionStatus()
Definition at line 66 of file Simulator.cpp.
static volatile SimulatorInterruptionStatus _interruption_status
§ GetParam()
std::string Simulator::GetParam |
( |
int |
index | ) |
|
Definition at line 70 of file Simulator.cpp.
71 return std::string(
_params[index]);
std::vector< std::string > _params
§ Register() [1/2]
§ Register() [2/2]
void Simulator::Register |
( |
TimedModel * |
m, |
|
|
SimulationTime |
t |
|
) |
| |
Definition at line 95 of file Simulator.cpp.
This class models a discrete event.
void Schedule(const Event &e)
Adds an event to the simulation queue.
§ Report()
virtual void orcasim::modeling::Simulator::Report |
( |
| ) |
|
|
pure virtual |
§ Schedule()
virtual void orcasim::modeling::Simulator::Schedule |
( |
| ) |
|
|
pure virtual |
§ SetExitStatus()
void Simulator::SetExitStatus |
( |
int |
status | ) |
|
§ SetInterruptionStatus()
Definition at line 62 of file Simulator.cpp.
static volatile SimulatorInterruptionStatus _interruption_status
§ Simulate()
void Simulator::Simulate |
( |
| ) |
|
|
virtual |
Definition at line 103 of file Simulator.cpp.
109 t1 = std::chrono::high_resolution_clock::now();
113 t2 = std::chrono::high_resolution_clock::now();
116 std::chrono::duration_cast<std::chrono::milliseconds>(
t2 -
t1)
122 (static_cast<double>(duration) / 1000.0);
126 << duration <<
"ms (running @ " << (hertz / 1000000.0)
127 <<
" MHz)" << std::endl;
129 #ifdef ORCA_EPOCHS_TO_SIM
virtual void Schedule()=0
SimulationTime Run(SimulationTime time=100000)
Executes the simulator until the internal clock reaches <time> cycles.
#define ORCA_EPOCHS_TO_SIM
#define ORCA_EPOCH_LENGTH
std::chrono::high_resolution_clock::time_point t2
SimulationTime NextEpoch()
Resets the simulation clock and advance simulation to the next epoch.
std::chrono::high_resolution_clock::time_point t1
SimulationTime GetEpochs()
Gets the number of cycles to simulate before reseting the simulation clock.
static volatile SimulatorInterruptionStatus _interruption_status
§ Startup()
virtual void orcasim::modeling::Simulator::Startup |
( |
| ) |
|
|
pure virtual |
§ _engine
Engine orcasim::modeling::Simulator::_engine |
|
private |
§ _exit_status
int orcasim::modeling::Simulator::_exit_status |
|
private |
§ _interruption_status
§ _params
std::vector<std::string> orcasim::modeling::Simulator::_params |
|
private |
§ t1
std::chrono::high_resolution_clock::time_point orcasim::modeling::Simulator::t1 |
|
private |
§ t2
std::chrono::high_resolution_clock::time_point orcasim::modeling::Simulator::t2 |
|
private |
The documentation for this class was generated from the following files: