|
Hyperiso 1.0.3
Modular flavour-physics calculations, Wilson coefficients and statistical inference
|
Interface for mutating parameters or changing their mode. More...
#include <IDataMutator.h>
Public Member Functions | |
| virtual | ~IDataMutator ()=default |
| Virtual destructor for interface. | |
| virtual void | mutate (const T &, U)=0 |
| Mutates the value of a parameter. | |
| virtual void | change_mode (const T &, V)=0 |
| Changes the operational mode of a parameter. | |
Interface for mutating parameters or changing their mode.
This is a generic interface that decouples the notion of “what” is mutated from “how” the mutation is implemented.
Typical template arguments are:
T : an identifier type (e.g. ParamId),U : a value type (e.g. scalar_t),V : a mode type (e.g. ParameterMode).Concrete implementations can then decide whether they:
| T | The parameter ID type. |
| U | The type of the value to set (e.g., scalar). |
| V | The type of the mode to apply (e.g., ParameterMode). |
Definition at line 70 of file IDataMutator.h.
|
virtualdefault |
Virtual destructor for interface.
|
pure virtual |
Changes the operational mode of a parameter.
Typical modes are represented by an enum (e.g. ParameterMode), and control how the parameter behaves in fits, scans, or updates.
| param_id | The identifier of the parameter. |
| new_mode | The new mode to assign. |
Implemented in ParameterSetter, and ParameterShifter.
|
pure virtual |
Mutates the value of a parameter.
Implementations are free to interpret new_value as:
| param_id | The identifier of the parameter to modify. |
| new_value | The new value to apply (interpretation is implementation-dependent). |
Implemented in ParameterSetter, and ParameterShifter.