Separate ISimulator interface and data
authorPascal Merz <pascal.merz@me.com>
Fri, 7 Aug 2020 08:24:47 +0000 (08:24 +0000)
committerChristian Blau <cblau.mail@gmail.com>
Fri, 7 Aug 2020 08:24:47 +0000 (08:24 +0000)
commit59d2dc30e5af19192e8b565d7968bab01a76575b
tree703f1f3a97e8d33c56b8684131fabbab7168b50b
parentc0a15a0067a16079c8b0a590393cc8d56f605cfc
Separate ISimulator interface and data

In fulfillment of #3566 this separates ISimulator into a pure
virtual interface (still named ISimulator) and a data object
LegacySimulatorData.

The LegacySimulator now inherits from both classes, no other
changes are needed.

ModularSimulator takes the new LegacySimulatorData as an explicit
member object. ModularSimulatorAlgorithmBuilder uses a pointer to
this new member object rather than holding a copy of the
LegacySimulatorData members.

Closes #3566
src/gromacs/mdrun/isimulator.h
src/gromacs/mdrun/legacysimulator.h
src/gromacs/mdrun/simulatorbuilder.cpp
src/gromacs/modularsimulator/modularsimulator.cpp
src/gromacs/modularsimulator/modularsimulator.h
src/gromacs/modularsimulator/simulatoralgorithm.cpp
src/gromacs/modularsimulator/simulatoralgorithm.h