Gromacs  2024.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions

#include <gromacs/coordinateio/outputadapters/setforces.h>

+ Inheritance diagram for gmx::SetForces:
+ Collaboration diagram for gmx::SetForces:

Description

SetForces class allows changing writing of forces to file.

This class allows the user to define if forces should be written to the output coordinate file, and checks if they are available from the currently processed data.

Public Member Functions

 SetForces (ChangeSettingType force)
 Construct SetForces object with choice for boolean value. More...
 
 SetForces (SetForces &&old) noexcept=default
 Move constructor for SetForces.
 
void processFrame (int, t_trxframe *input) override
 Change coordinate frame information for output. More...
 
void checkAbilityDependencies (unsigned long abilities) const override
 Checks that the abilities of the output writer are sufficient for this adapter. More...
 
 GMX_DISALLOW_COPY_AND_ASSIGN (IOutputAdapter)
 

Constructor & Destructor Documentation

gmx::SetForces::SetForces ( ChangeSettingType  force)
inlineexplicit

Construct SetForces object with choice for boolean value.

Can be used to initialize SetForces from outside of trajectoryanalysis with the user specified option to write coordinate forces or not.

Member Function Documentation

void gmx::SetForces::checkAbilityDependencies ( unsigned long  abilities) const
overridevirtual

Checks that the abilities of the output writer are sufficient for this adapter.

It can happen that a method to write coordinate files does not match with a requested operation on the input data (e.g. the user requires velocities or forces to be written to a PDB file). To check those dependencies, derived classes need to implement a version of this function to make sure that only matching methods can be used.

Parameters
[in]abilitiesThe abilities of an output method that need to be checked against the dependencies created by using the derived method.
Exceptions
InconsistentInputErrorIf dependencies can not be matched to abilities.

Implements gmx::IOutputAdapter.

void gmx::SetForces::processFrame ( int  ,
t_trxframe *  input 
)
overridevirtual

Change coordinate frame information for output.

In this case, the correct flag for writing the forces is applied to the output frame, depending on user selection and availability in the input data.

Parameters
[in]inputCoordinate frame to be modified later.

Implements gmx::IOutputAdapter.


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