Gromacs
5.1.4
|
#include <gromacs/options/options-impl.h>
Private implementation class for Options.
Note that in addition to Options, the OptionsAssigner and OptionsIterator classes also directly access this class.
Public Types | |
typedef gmx_unique_ptr < AbstractOptionStorage > ::type | AbstractOptionStoragePointer |
Smart pointer for managing an AbstractOptionStorage object. | |
typedef std::vector< Options * > | SubSectionList |
Convenience type for list of sections. | |
typedef std::vector < AbstractOptionStoragePointer > | OptionList |
Convenience type for list of options. | |
Public Member Functions | |
Impl (const char *name, const char *title) | |
Sets the name and title. | |
Options * | findSubSection (const char *name) const |
Finds a subsection by name. More... | |
AbstractOptionStorage * | findOption (const char *name) const |
Finds an option by name. More... | |
void | startSource () |
Calls AbstractOptionStorage::startSource() for all options, including subsections. More... | |
Public Attributes | |
std::string | name_ |
Name for the Options object. | |
std::string | title_ |
Description title for the Options object. | |
std::string | description_ |
Full description for the Options object. | |
OptionManagerContainer | managers_ |
Option managers set for this collection. More... | |
SubSectionList | subSections_ |
List of subsections, in insertion order. More... | |
OptionList | options_ |
List of options, in insertion order. More... | |
Options * | parent_ |
Options object that contains this object as a subsection, or NULL. | |
AbstractOptionStorage * gmx::Options::Impl::findOption | ( | const char * | name | ) | const |
Finds an option by name.
[in] | name | Name to search for. |
Does not throw.
Options * gmx::Options::Impl::findSubSection | ( | const char * | name | ) | const |
Finds a subsection by name.
[in] | name | Name to search for. |
Does not throw.
void gmx::Options::Impl::startSource | ( | ) |
Calls AbstractOptionStorage::startSource() for all options, including subsections.
Does not throw.
OptionManagerContainer gmx::Options::Impl::managers_ |
Option managers set for this collection.
This is non-empty only for the top-level Options object.
OptionList gmx::Options::Impl::options_ |
List of options, in insertion order.
All objects in this container are owned by this object, and are freed in the destructor.
SubSectionList gmx::Options::Impl::subSections_ |
List of subsections, in insertion order.
This container contains only references to external objects; memory management is performed elsewhere.