Gromacs  2025-dev-20241002-88a4191
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Friends
gmx::FloatOption Class Reference

#include <gromacs/options/basicoptions.h>

+ Inheritance diagram for gmx::FloatOption:
+ Collaboration diagram for gmx::FloatOption:

Description

Specifies an option that provides floating-point (float) values.

Public methods in this class do not throw.

See Also
DoubleOption

Public Types

typedef FloatOptionInfo InfoType
 OptionInfo subclass corresponding to this option type.
 
- Public Types inherited from gmx::OptionTemplate< float, FloatOption >
typedef float ValueType
 Type that stores a single option value.
 
typedef FloatOption MyClass
 Alias for the derived class type.
 

Public Member Functions

 FloatOption (const char *name)
 Initializes an option with the given name.
 
MyClassvector ()
 Sets the option to return a vector value. More...
 
MyClasstimeValue ()
 Marks this option as providing a time value whose unit can be changed. More...
 
- Public Member Functions inherited from gmx::OptionTemplate< float, FloatOption >
MyClassdescription (const char *descr)
 Sets a description for the option. More...
 
MyClasshidden (bool bHidden=true)
 Hides the option from normal help output.
 
MyClassrequired (bool bRequired=true)
 Requires the option to be specified explicitly. More...
 
MyClassallowMultiple (bool bMulti=true)
 Allows the option to be specified multiple times.
 
MyClassvalueCount (int count)
 Requires exactly count values for the option.
 
MyClassmultiValue (bool bMulti=true)
 Allows any number of values for the option.
 
MyClassdefaultValue (const float &defaultValue)
 Sets a default value for the option. More...
 
MyClassdefaultValueIfSet (const float &defaultValue)
 Sets a default value for the option when it is set. More...
 
MyClassstore (float *store)
 Stores value(s) in memory pointed by store. More...
 
MyClassstoreCount (int *countptr)
 Stores number of values in the value pointed by countptr. More...
 
MyClassstoreVector (std::vector< float > *store)
 Stores option values in the provided vector. More...
 
MyClassstoreIsSet (bool *store)
 Stores whether the option was explicitly set. More...
 

Friends

class FloatOptionStorage
 Needed to initialize FloatOptionStorage from this class without otherwise unnecessary accessors.
 

Additional Inherited Members

- Protected Types inherited from gmx::OptionTemplate< float, FloatOption >
typedef OptionTemplate< float,
FloatOption
MyBase
 Alias for the template class for use in base classes.
 
- Protected Member Functions inherited from gmx::OptionTemplate< float, FloatOption >
const float * defaultValue () const
 Returns a pointer to user-specified default value, or NULL if there is none.
 
const float * defaultValueIfSet () const
 Returns a pointer to user-specified default value, or NULL if there is none.
 
float * store () const
 Returns a pointer to the storage location, or NULL if none specified.
 
std::vector< float > * storeVector () const
 Returns a pointer to the storage vector, or NULL if none specified.
 
 OptionTemplate (const char *name)
 Initializes the name and default values for an option.
 
MyClassme ()
 Returns *this casted into MyClass to reduce typing.
 
- Protected Member Functions inherited from gmx::AbstractOption
 AbstractOption (const char *name)
 Initializes the name and default values for an option.
 
void setDescription (const char *descr)
 Sets the description for the option.
 
void setStoreIsSet (bool *store)
 Sets the storage location for whether the option is set.
 
void setFlag (OptionFlag flag)
 Sets a flag for the option.
 
void clearFlag (OptionFlag flag)
 Clears a flag for the option.
 
void setFlag (OptionFlag flag, bool bSet)
 Sets or clears a flag for the option.
 
bool isVector () const
 Returns true if the option is vector-valued.
 
void setVector ()
 Sets the option to be vector-valued. More...
 
void setValueCount (int count)
 Sets the required number of values for the option.
 
- Protected Attributes inherited from gmx::AbstractOption
int minValueCount_
 Minimum number of values required for the option.
 
int maxValueCount_
 Maximum number of values allowed for the option.
 

Member Function Documentation

MyClass& gmx::FloatOption::timeValue ( )
inline

Marks this option as providing a time value whose unit can be changed.

By itself, this option does nothing. It marks the option as a time value such that TimeUnitManager::scaleTimeOptions() can process it. In typical cases, GROMACS scales the time options just before Options::finish() has been called, so the option value is only available after all option values have been processed. All values in the program are in ps (including any default value); user-provided values are scaled according to the time unit set in TimeUnitManager.

MyClass& gmx::FloatOption::vector ( )
inline

Sets the option to return a vector value.

A vector value returns a fixed number of values, the default being three (can be changed with valueCount()). However, it also accepts a single value, in which case the value is used to fill the whole vector.


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