1 #ifndef SIM_SIMULATOR_INTERFACE_H_INCLUDED
2 #define SIM_SIMULATOR_INTERFACE_H_INCLUDED
25 #include <boost/property_tree/ptree_fwd.hpp>
46 virtual const boost::property_tree::ptree&
GetParameters()
const = 0;
67 virtual void Reinitialize(
const boost::property_tree::ptree& parameters) = 0;
75 #endif // end_of_include_guard
Core data with mesh, parameters, random engine and time data.
virtual bool IsAtTermination() const =0
Query whether simulation has met termination condition.
virtual void TimeStep()=0
Let simulator take a time step.
virtual std::string GetProjectName() const =0
Return name that identifies this project.
virtual const boost::property_tree::ptree & GetParameters() const =0
Provide reference to the parameters.
virtual std::string GetRunDate() const =0
Return start time/date of the current simulation run.
Namespace for the core simulator.
virtual ~SimInterface()
Virtual destructor.
virtual Timings GetTimings() const =0
Execution timings in duration units specified in milliseconds.
virtual void Reinitialize(const boost::property_tree::ptree ¶meters)=0
Reinitialize with parameters; executed any time the parameters change.
virtual int GetSimStep() const =0
Get number of simulation steps taken in this simulation history.
virtual bool IsStationary() const =0
Returns true if the simulation is in a stationary state.
virtual CoreData & GetCoreData()=0
Access to CoreData.
Utility class to for timing.