27 #ifndef SIMULATOR_SIMULATORFACTORY_H
28 #define SIMULATOR_SIMULATORFACTORY_H
56 if (mapObjectCreator.find(
id) != mapObjectCreator.end()){
59 mapObjectCreator.insert( std::pair<std::string,CreateSimulatorFunctionPointer>(
id, &createTheSimulator<C> ) );
60 mapObjectCreator2.insert( std::pair<std::string,CreateSimulatorFunctionPointer2>(
id, &createTheSimulator2<C> ) );
61 mapInteractive.insert(std::pair<std::string,bool>(
id,isInteractive));
63 interactiveSimulators.push_back(
id);
65 nonInteractiveSimulators.push_back(
id);
80 int getNumberOfInteractiveSimulators();
83 int getNumberOfNonInteractiveSimulators();
86 std::string getInteractiveSimulator(
const unsigned int index);
89 std::string getNonInteractiveSimulator(
const unsigned int index);
119 return new C(monitoringManager);
133 return new C(monitoringManager,file);
151 #endif // SIMULATOR_SIMULATORFACTORY_H
std::map< std::string, bool > mapInteractive
map between Simulator name as string to booleen, true if interactive
Definition: SimulatorFactory.h:137
std::map< std::string, CreateSimulatorFunctionPointer2 > mapObjectCreator2
A map between Simulator name as string to functions (for the 2nd constructor that uses a simulator fi...
Definition: SimulatorFactory.h:106
A factory to create Simulator.
Definition: SimulatorFactory.h:40
std::vector< std::string > interactiveSimulators
list of interactive simulators
Definition: SimulatorFactory.h:140
static Simulator * createTheSimulator2(MonitoringManager *monitoringManager, const char *file)
map the simulator name with the 2 parameters constructor (using the given specific simulator file) ...
Definition: SimulatorFactory.h:132
A simulator engine is used to compute the displacements of all atoms of the model.
Definition: Simulator.h:44
bool registerClass(std::string id, bool isInteractive)
Register a class into the map A registered class can be created using createMonitorDisplay() ...
Definition: SimulatorFactory.h:55
Manager of the benchmark tests.
Definition: MonitoringManager.h:50
CamiTK CamiTKDir txt file(STRINGS"${FIND_CAMITK_USER_BASE_DIR}/CamiTK/CamiTKDir.txt"FIND_CAMITK_USER_DIR_LAST_INSTALL) endif() find_program(CAMITK_CONFIG_EXECUTABLE NAMES camitk-config-debug camitk-config PATH_SUFFIXES"bin"PATHS"$
Definition: FindCamiTK.cmake:80
std::map< std::string, CreateSimulatorFunctionPointer > mapObjectCreator
A map between Simulator name as string to functions.
Definition: SimulatorFactory.h:103
static SimulatorFactory * instance
unique instance of the factory
Definition: SimulatorFactory.h:146
std::vector< std::string > nonInteractiveSimulators
list of non interactive simulators
Definition: SimulatorFactory.h:143
static Simulator * createTheSimulator(MonitoringManager *monitoringManager)
map the simulator name with the 1 parameter constructor.
Definition: SimulatorFactory.h:118
#define MML_API
Definition: MMLAPI.h:43
string(REGEX REPLACE"^.*-(.*)-.*""\\1"ARCH"${CAMITK_CONTINUOUS_INTEGRATION}") string(REGEX REPLACE"^.*-.*-(.*)""\\1"BUILDTYPE"$
Definition: continuous.cmake:34