Gromacs  2020.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes
gmx::SelectionCollection::Impl Class Reference

#include <gromacs/selection/selectioncollection_impl.h>

+ Collaboration diagram for gmx::SelectionCollection::Impl:


Private implemention class for SelectionCollection.

Public Member Functions

 Impl ()
 Creates a new selection collection. More...
void clearSymbolTable ()
 Clears the symbol table of the selection collection. More...
void resolveExternalGroups (const gmx::SelectionTreeElementPointer &root, ExceptionInitializer *errors)
 Replace group references by group contents. More...
bool areForcesRequested () const
 Whether forces have been requested for some selection.
SelectionTopologyProperties requiredTopologyPropertiesForPositionType (const std::string &post, bool forces) const
 Returns topology properties needed for a certain position type.

Public Attributes

gmx_ana_selcollection_t sc_
 Internal data, used for interfacing with old C code.
std::string rpost_
 Default reference position type for selections.
std::string spost_
 Default output position type for selections.
gmx_ana_index_t requiredAtoms_
 Atoms needed for evaluating the selections.
int debugLevel_
 Debugging level for the collection. More...
bool bExternalGroupsSet_
 Whether setIndexGroups() has been called.
 External index groups (can be NULL).

Constructor & Destructor Documentation

gmx::SelectionCollection::Impl::Impl ( )

Creates a new selection collection.

std::bad_allocif out of memory.

Member Function Documentation

void gmx::SelectionCollection::Impl::clearSymbolTable ( )

Clears the symbol table of the selection collection.

Does not throw.

void gmx::SelectionCollection::Impl::resolveExternalGroups ( const gmx::SelectionTreeElementPointer root,
ExceptionInitializer errors 

Replace group references by group contents.

[in]rootRoot of selection tree to process.
errorsObject for reporting any error messages.
std::bad_allocif out of memory.

Recursively searches the selection tree for unresolved external references. If one is found, finds the referenced group in grps_ and replaces the reference with a constant element that contains the atoms from the referenced group. Any failures to resolve references are reported to errors.

Member Data Documentation

int gmx::SelectionCollection::Impl::debugLevel_

Debugging level for the collection.

Possible values:

  • 0: no debugging
  • 1: print selection trees after parsing and compilation
  • 2: like 1, also print intermediate compilation trees
  • 3: like 1, also print the tree after evaluation
  • 4: combine 2 and 3

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