Enable time unit and selections in ICommandLineOptionsModule
commit20286f9986a548fa31800a3d36d46b49c811cb2e
authorTeemu Murtola <teemu.murtola@gmail.com>
Thu, 27 Aug 2015 03:33:41 +0000 (27 06:33 +0300)
committerDavid van der Spoel <davidvanderspoel@gmail.com>
Thu, 1 Oct 2015 07:19:45 +0000 (1 09:19 +0200)
tree28aafd8f599cdaa22614d5e66ff526311d3209c8
parent7a922497dcae6f3f5f3ec4b644e495dea9ed4cd9
Enable time unit and selections in ICommandLineOptionsModule

Make it possible to use TimeUnitManager and SelectionOptionManager from
an module that implements ICommandLineOptionsModule.  The interface to
actually create and associate the new options behaviors may change in
the future for easier usage, but let's first see where this goes when
more functionality is moved to SelectionOptionBehavior.

Prerequisite for making TrajectoryAnalysisCommandLineRunner actually use
ICommandLineOptionsModule, but split out from the main commit for that.

Some use of C++11 range-for is introduced; it is easy to get rid of if
necessary, it's just less readable and more typing.

Change-Id: I57f6de0f452e6d241c2e0223aec3722812b54a27
22 files changed:
src/gromacs/analysisdata/modules/plot.cpp
src/gromacs/commandline/cmdlinehelpwriter.cpp
src/gromacs/commandline/cmdlinehelpwriter.h
src/gromacs/commandline/cmdlineoptionsmodule.cpp
src/gromacs/commandline/cmdlineoptionsmodule.h
src/gromacs/commandline/pargs.cpp
src/gromacs/options.h
src/gromacs/options/CMakeLists.txt
src/gromacs/options/behaviorcollection.cpp [copied from src/gromacs/trajectoryanalysis/analysissettings-impl.h with 54% similarity]
src/gromacs/options/behaviorcollection.h [copied from src/gromacs/trajectoryanalysis/analysissettings-impl.h with 50% similarity]
src/gromacs/options/ioptionsbehavior.h [copied from src/gromacs/trajectoryanalysis/analysissettings-impl.h with 51% similarity]
src/gromacs/options/tests/timeunitmanager.cpp
src/gromacs/options/timeunitmanager.cpp
src/gromacs/options/timeunitmanager.h
src/gromacs/selection/selectionoptionmanager.cpp
src/gromacs/selection/selectionoptionmanager.h
src/gromacs/trajectoryanalysis/analysissettings-impl.h
src/gromacs/trajectoryanalysis/analysissettings.cpp
src/gromacs/trajectoryanalysis/analysissettings.h
src/gromacs/trajectoryanalysis/cmdlinerunner.cpp
src/gromacs/trajectoryanalysis/runnercommon.cpp
src/gromacs/trajectoryanalysis/runnercommon.h