Task #2877
Task #2045: API design and language bindings
use gmx::Options more
Description
Legacy command-line tools/modules use the legacy parse_common_args() routine. This needs to be updated so that we end up with only one kind of option handling. It will be much more feasible to support API bindings to modules when they do use the new framework.
Proposed first tools to convert
-------------------------------
dump
check
mdrun
Later
-----
grompp
Naturally there will be preliminary cleanup patches in some of these cases.
Associated revisions
Eliminate mdlib/mdrun.h
This file was filled with stuff that works better elsewhere.
Moved the options structs into gmx namespace
Refs #2877
Change-Id: Ib796ef8e9896804c56936f23f67dcd3fc12900fd
Improve mimic module
File naming did not conform to style. Improved some include structure. This
module no longer needs to depend on gmxpreprocess.
Preparation for #2877
Change-Id: I0a3a4e72828f3e47f28d0d7420e5c65e580d5428
Clean up mdrun help description
Details about how unix signals are implemented can go in the user
guide.
The nice level does not actually change with whether mpirun is used,
so we should not say so.
Mentions of "experimental" features that have been in the code for a
decade don't belong here.
Fixed a repeated word.
Preparation for #2877
Change-Id: Ib68ab15717e52a9155be869581c18ba21513f067
Convert gmx dump to module
Used Options and more std::string.
Minor fixes and improvements to text. Removed the report of the known
bug, replacing it with a TODO.
Added eftRunInput to the filename option types understood by
FileNameOption machinery, so that tools that only operate on .tpr
files work properly. This is then used for gmx dump -s.
Refs #2877
Change-Id: I5bb1c73c39a4cdd820735f894d4cb55d171afd48
Move DomdecOptions into its own header
This reduces compilation coupling and prepares for implementing proper
Options support into mdrun. Moved content into gmx namespace and
replaced gmx_bool. Renamed nr enum members to Count for future
compatibility with the new enumeration helpers.
Refs #2877
Change-Id: Ib5f5889111f858579f594f4c76f3aa8c222403b2
Move MDModules initialization earlier
This will permit extending the functionality to also provide
command-line options and help descriptions for gmx tools.
Moved more functionality into Mdrunner::Builder
It also permits the Mdrunner constructor that is normally used to
prompt the construction of a properly formed MDModules. Removed a
comment about default initialization that is a normal fact of life
with constructors. Updating it would be wordy and no real value.
Refs #2877
Change-Id: I70126f297422a9076484083d461b0b003ae2e23b
Make ImdSession into a Pimpl-ed class with factory function
This prepares to make IMD into a proper module. No
functionality changes in this commit.
Replaced gmx_bool with bool
Used fast returns when IMD is inactive, for better
readability of code.
Refs #2877
Change-Id: Ibbe8c452f6f480e9a357fe1b87da3ab0ae166317
Start making IMD and swap model IMDModule
Moved MDModules to mdrun code module (to relieve cyclic dependency
that would otherwise result), because it is a very high level thing
that is intended to be aware of very many components.
Refs #2877
Change-Id: Ia7d1422bab887f768f8abed01edcbc4fb290dfeb
History
#1 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~Ib796ef8e9896804c56936f23f67dcd3fc12900fd
Gerrit URL: https://gerrit.gromacs.org/9266
#2 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~I5bb1c73c39a4cdd820735f894d4cb55d171afd48
Gerrit URL: https://gerrit.gromacs.org/9268
#3 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~Ib5f5889111f858579f594f4c76f3aa8c222403b2
Gerrit URL: https://gerrit.gromacs.org/9302
#4 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~Ib68ab15717e52a9155be869581c18ba21513f067
Gerrit URL: https://gerrit.gromacs.org/9339
#5 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~I0a3a4e72828f3e47f28d0d7420e5c65e580d5428
Gerrit URL: https://gerrit.gromacs.org/9340
#6 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '3' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~I70126f297422a9076484083d461b0b003ae2e23b
Gerrit URL: https://gerrit.gromacs.org/9374
#7 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~Ibbe8c452f6f480e9a357fe1b87da3ab0ae166317
Gerrit URL: https://gerrit.gromacs.org/9383
#8 Updated by Gerrit Code Review Bot almost 2 years ago
Gerrit received a related patchset '1' for Issue #2877.
Uploader: Mark Abraham (mark.j.abraham@gmail.com)
Change-Id: gromacs~master~Ia7d1422bab887f768f8abed01edcbc4fb290dfeb
Gerrit URL: https://gerrit.gromacs.org/9388
#9 Updated by Artem Zhmurov about 1 year ago
- Target version changed from 2020 to 2021
Eliminate mdlib/mdrun.h
This file was filled with stuff that works better elsewhere.
Moved the options structs into gmx namespace
Refs #2877
Change-Id: Ib796ef8e9896804c56936f23f67dcd3fc12900fd