Use ConstraintsParam.
authorM. Eric Irrgang <ericirrgang@gmail.com>
Thu, 23 Apr 2020 14:37:02 +0000 (17:37 +0300)
committerJoe Jordan <ejjordan12@gmail.com>
Fri, 26 Jun 2020 10:54:08 +0000 (10:54 +0000)
Refs #3567

src/gromacs/mdrun/runner.cpp
src/gromacs/mdrun/simulatorbuilder.cpp
src/gromacs/mdrun/simulatorbuilder.h

index 36acc0d9ea5721727d909c3b17ff3bff9d1b2fa3..d310c92058157c61d7d5c481ff5204b85c2c42a1 100644 (file)
@@ -1656,8 +1656,7 @@ int Mdrunner::mdrunner()
 
         // build and run simulator object based on user-input
         auto simulator = simulatorBuilder.build(
-                useModularSimulator, static_cast<int>(filenames.size()), filenames.data(), vsite.get(),
-                constr.get(), enforcedRotation ? enforcedRotation->getLegacyEnfrot() : nullptr,
+                useModularSimulator, static_cast<int>(filenames.size()), filenames.data(),
                 deform.get(), mdModules_->outputProvider(), mdModules_->notifier(), inputrec,
                 imdSession.get(), pull_work, swap, &mtop, mdAtoms.get(), fr, replExParams);
         simulator->run();
index 8aa55bff7b62ae39af715354cccdeb9effa4161d..5b53675b57b9630e80b85e3ab2003e9b81cab3d9 100644 (file)
@@ -59,9 +59,6 @@ namespace gmx
 std::unique_ptr<ISimulator> SimulatorBuilder::build(bool                     useModularSimulator,
                                                     int                      nfile,
                                                     const t_filenm*          fnm,
-                                                    VirtualSitesHandler*     vsite,
-                                                    Constraints*             constr,
-                                                    gmx_enfrot*              enforcedRotation,
                                                     BoxDeformation*          deform,
                                                     IMDOutputProvider*       outputProvider,
                                                     const MdModulesNotifier& mdModulesNotifier,
@@ -140,7 +137,8 @@ std::unique_ptr<ISimulator> SimulatorBuilder::build(bool                     use
         return std::unique_ptr<ModularSimulator>(new ModularSimulator(
                 simulatorEnv_->fplog_, simulatorEnv_->commRec_, simulatorEnv_->multisimCommRec_,
                 simulatorEnv_->logger_, nfile, fnm, simulatorEnv_->outputEnv_, simulatorConfig_->mdrunOptions_,
-                simulatorConfig_->startingBehavior_, vsite, constr, enforcedRotation, deform,
+                simulatorConfig_->startingBehavior_, constraintsParam_->vsite,
+                constraintsParam_->constr, constraintsParam_->enforcedRotation, deform,
                 outputProvider, mdModulesNotifier, inputrec, imdSession, pull_work, swap, top_global,
                 simulatorStateData_->globalState_p, simulatorStateData_->observablesHistory_p,
                 mdAtoms, profiling_->nrnb, profiling_->wallCycle, fr, simulatorStateData_->enerdata_p,
@@ -151,9 +149,10 @@ std::unique_ptr<ISimulator> SimulatorBuilder::build(bool                     use
     // NOLINTNEXTLINE(modernize-make-unique): make_unique does not work with private constructor
     return std::unique_ptr<LegacySimulator>(new LegacySimulator(
             simulatorEnv_->fplog_, simulatorEnv_->commRec_, simulatorEnv_->multisimCommRec_,
-            simulatorEnv_->logger_, nfile, fnm, simulatorEnv_->outputEnv_, simulatorConfig_->mdrunOptions_,
-            simulatorConfig_->startingBehavior_, vsite, constr, enforcedRotation, deform,
-            outputProvider, mdModulesNotifier, inputrec, imdSession, pull_work, swap, top_global,
+            simulatorEnv_->logger_, nfile, fnm, simulatorEnv_->outputEnv_,
+            simulatorConfig_->mdrunOptions_, simulatorConfig_->startingBehavior_,
+            constraintsParam_->vsite, constraintsParam_->constr, constraintsParam_->enforcedRotation,
+            deform, outputProvider, mdModulesNotifier, inputrec, imdSession, pull_work, swap, top_global,
             simulatorStateData_->globalState_p, simulatorStateData_->observablesHistory_p, mdAtoms,
             profiling_->nrnb, profiling_->wallCycle, fr, simulatorStateData_->enerdata_p,
             simulatorStateData_->ekindata_p, simulatorConfig_->runScheduleWork_, replExParams,
index 2dd0f41746615557bfeee8f4938dda1631d7ca38..9088447fe4b508617d2dca93caa56b1b9ca10718 100644 (file)
@@ -165,11 +165,16 @@ public:
 class ConstraintsParam
 {
 public:
-    ConstraintsParam(Constraints gmx_unused* pConstraints,
-                     gmx_enfrot gmx_unused* pEnfrot,
-                     VirtualSitesHandler gmx_unused* pVsite)
+    ConstraintsParam(Constraints* constraints, gmx_enfrot* enforcedRotation, VirtualSitesHandler* vSite) :
+        constr(constraints),
+        enforcedRotation(enforcedRotation),
+        vsite(vSite)
     {
     }
+
+    Constraints*         constr;
+    gmx_enfrot*          enforcedRotation;
+    VirtualSitesHandler* vsite;
 };
 
 class LegacyInput
@@ -304,9 +309,6 @@ public:
     std::unique_ptr<ISimulator> build(bool                             useModularSimulator,
                                       int                              nfile,
                                       const t_filenm*                  fnm,
-                                      VirtualSitesHandler*             vsite,
-                                      Constraints*                     constr,
-                                      gmx_enfrot*                      enforcedRotation,
                                       BoxDeformation*                  deform,
                                       IMDOutputProvider*               outputProvider,
                                       const MdModulesNotifier&         mdModulesNotifier,