44 lines
899 B
C++
44 lines
899 B
C++
/*
|
|
* SimulationManager.h
|
|
*
|
|
* Created on: Apr 12, 2014
|
|
* Author: jonny
|
|
*/
|
|
|
|
#ifndef SIMULATIONMANAGER_H_
|
|
#define SIMULATIONMANAGER_H_
|
|
|
|
#include <vector>
|
|
#include <string>
|
|
#include "Simulation.h"
|
|
#include "../common/third_party/tinyxml2.h"
|
|
|
|
namespace simulation {
|
|
|
|
class SimulationManager
|
|
{
|
|
public:
|
|
SimulationManager(std::string resources);
|
|
~SimulationManager();
|
|
|
|
void loadSimulationFromXML(std::string uri);
|
|
void runSimulations();
|
|
void startTraceAnalyzer();
|
|
|
|
private:
|
|
std::string simulationName;
|
|
|
|
std::vector<simulation::DramSetup> dramSetups;
|
|
std::vector<std::vector<Device>> traceSetups;
|
|
std::string resources;
|
|
|
|
void runSimulation(std::string traceName, DramSetup dramSetup, std::vector<Device> traceSetup);
|
|
void addTraceSetup(tinyxml2::XMLElement* element);
|
|
void checkPaths();
|
|
void printSimulationBatch();
|
|
};
|
|
|
|
} /* namespace simulation */
|
|
|
|
#endif /* SIMULATIONMANAGER_H_ */
|