Gromacs  2021.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Public Attributes
gmx::internal::OptionSectionImpl::Group Class Reference

#include <gromacs/options/options_impl.h>

+ Inheritance diagram for gmx::internal::OptionSectionImpl::Group:
+ Collaboration diagram for gmx::internal::OptionSectionImpl::Group:

Description

Describes a group of options (see Options::addGroup()).

Public Types

typedef std::vector
< AbstractOptionStorage * > 
OptionList
 Convenience typedef for list of options.
 
typedef std::list< GroupSubgroupList
 Convenience typedef for list of subgroups.
 

Public Member Functions

 Group (OptionSectionImpl *parent)
 Creates a group within the given Options.
 
IOptionsContaineraddGroup () override
 Creates a subgroup of options within the current options. More...
 
OptionInfoaddOptionImpl (const AbstractOption &settings) override
 Adds a recognized option. More...
 
- Public Member Functions inherited from gmx::IOptionsContainer
template<class OptionType >
OptionType::InfoType * addOption (const OptionType &settings)
 Adds a recognized option. More...
 

Public Attributes

OptionSectionImplparent_
 Containing options object.
 
OptionList options_
 List of options, in insertion order. More...
 
SubgroupList subgroups_
 List of groups, in insertion order.
 

Additional Inherited Members

Member Function Documentation

IOptionsContainer & gmx::internal::OptionSectionImpl::Group::addGroup ( )
overridevirtual

Creates a subgroup of options within the current options.

To add options to the group, use the returned interface.

Currently, this is only used to influence the order of options: all options in a group appear before options in a group added after it, no matter in which order the options are added to the groups. In the future, the groups could also be used to influence the help output.

Implements gmx::IOptionsContainer.

OptionInfo * gmx::internal::OptionSectionImpl::Group::addOptionImpl ( const AbstractOption settings)
overridevirtual

Adds a recognized option.

Parameters
[in]settingsOption description.
Returns
OptionInfo object for the created option (never NULL).
Exceptions
APIErrorif invalid option settings are provided.

This method provides the internal implementation, but the templated method is called from user code. See the templated method for more details.

Implements gmx::IOptionsContainer.

Member Data Documentation

OptionList gmx::internal::OptionSectionImpl::Group::options_

List of options, in insertion order.

Pointers in this container point to the objects managed by Impl::optionsMap_.


The documentation for this class was generated from the following files: