Gromacs  2020.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Public Attributes
gmx::SelectionOptionManager::Impl Class Reference
+ Collaboration diagram for gmx::SelectionOptionManager::Impl:

Description

Private implemention class for SelectionOptionManager.

Classes

class  RequestsClearer
 Helper class that clears a request list on scope exit. More...
 
struct  SelectionRequest
 Request for postponed parsing of selections. More...
 

Public Types

typedef std::vector
< SelectionRequest
RequestList
 Collection for a list of selection requests.
 
typedef std::vector
< SelectionOptionStorage * > 
OptionList
 Collection for list of option storage objects.
 

Public Member Functions

 Impl (SelectionCollection *collection)
 Creates a new selection collection. More...
 
void placeSelectionsInRequests (const SelectionList &selections)
 Assign selections from a list to pending requests. More...
 
void requestUnsetRequiredOptions ()
 Adds a request for each required option that is not yet set. More...
 

Public Attributes

SelectionCollectioncollection_
 Selection collection to which selections are stored.
 
OptionList options_
 List of selection options (storage objects) this manager manages.
 
RequestList requests_
 List of selections requested for later parsing.
 

Constructor & Destructor Documentation

gmx::SelectionOptionManager::Impl::Impl ( SelectionCollection collection)
explicit

Creates a new selection collection.

Exceptions
std::bad_allocif out of memory.

Member Function Documentation

void gmx::SelectionOptionManager::Impl::placeSelectionsInRequests ( const SelectionList selections)

Assign selections from a list to pending requests.

Parameters
[in]selectionsList of selections to assign.
Exceptions
std::bad_allocif out of memory.
InvalidInputErrorif the assignment cannot be done (see parseRequestedFromFile() for documented conditions).

Loops through selections and the pending requests lists in order, and for each requests, assigns the first yet unassigned selections from the list.

void gmx::SelectionOptionManager::Impl::requestUnsetRequiredOptions ( )

Adds a request for each required option that is not yet set.

Exceptions
std::bad_allocif out of memory.

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