Gromacs  2026.0-dev-20241106-9ba7f4d
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions
gmx::AbstractOptionSectionHandle Class Reference

#include <gromacs/options/abstractsection.h>

+ Inheritance diagram for gmx::AbstractOptionSectionHandle:
+ Collaboration diagram for gmx::AbstractOptionSectionHandle:

Description

Base class for handles to option sections.

This class implements the common functionality for adding options and subsections to option sections.

Public Member Functions

IOptionsContaineraddGroup () override
 Creates a subgroup of options within the current options. More...
 
- Public Member Functions inherited from gmx::IOptionsContainerWithSections
template<class SectionType >
SectionType::HandleType addSection (const SectionType &section)
 Adds a section to this collection. More...
 
- Public Member Functions inherited from gmx::IOptionsContainer
template<class OptionType >
OptionType::InfoType * addOption (const OptionType &settings)
 Adds a recognized option. More...
 

Protected Member Functions

 AbstractOptionSectionHandle (internal::OptionSectionImpl *section)
 Wraps a given section storage object.
 
- Protected Member Functions inherited from gmx::IOptionsContainerWithSections
 GMX_DEFAULT_CONSTRUCTORS (IOptionsContainerWithSections)
 
- Protected Member Functions inherited from gmx::IOptionsContainer
 GMX_DEFAULT_CONSTRUCTORS (IOptionsContainer)
 

Static Protected Member Functions

template<typename StorageType >
static StorageType * getStorage (internal::OptionSectionImpl *section)
 Returns the storage for a particular type of section. More...
 

Member Function Documentation

IOptionsContainer & gmx::AbstractOptionSectionHandle::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.

template<typename StorageType >
IOptionSectionStorage * gmx::AbstractOptionSectionHandle::getStorage ( internal::OptionSectionImpl section)
inlinestaticprotected

Returns the storage for a particular type of section.

This is intended for use in derived class constructors, where the handle needs access to the actual storage. The handle should know the type of storage created for the section type it deals with, so the cast should always be successful.


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