UFO
ufo::AssignmentParameters Class Reference

Parameters controlling assignment of new values to a variable. More...

#include <VariableAssignment.h>

Inheritance diagram for ufo::AssignmentParameters:
Collaboration diagram for ufo::AssignmentParameters:

Public Member Functions

void deserialize (util::CompositePath &path, const eckit::Configuration &config) override
 

Public Attributes

oops::RequiredParameter< std::string > name {"name", this}
 Name of the variable to which new values should be assigned. More...
 
oops::Parameter< std::string > channels {"channels", "", this}
 Set of channels to which new values should be assigned. More...
 
oops::OptionalParameter< std::string > value_ {"value", this}
 
oops::OptionalParameter< ufo::VariablesourceVariable {"source variable", this}
 
oops::OptionalParameter< ufo::Variablefunction {"function", this}
 
oops::OptionalParameter< ioda::ObsDtype > type {"type", this}
 

Detailed Description

Parameters controlling assignment of new values to a variable.

Definition at line 31 of file VariableAssignment.h.

Member Function Documentation

◆ deserialize()

void ufo::AssignmentParameters::deserialize ( util::CompositePath &  path,
const eckit::Configuration &  config 
)
override

This function is overridden to check that mutually exclusive options aren't specified together, throwing an exception otherwise.

Definition at line 351 of file VariableAssignment.cc.

Member Data Documentation

◆ channels

oops::Parameter<std::string> ufo::AssignmentParameters::channels {"channels", "", this}

Set of channels to which new values should be assigned.

Definition at line 39 of file VariableAssignment.h.

◆ function

oops::OptionalParameter<ufo::Variable> ufo::AssignmentParameters::function {"function", this}

An ObsFunction that should be evaluated and assigned to the specified variable (at all locations selected be the where statement, if present).

Exactly one of the value, source variable and function options must be given.

Definition at line 57 of file VariableAssignment.h.

◆ name

oops::RequiredParameter<std::string> ufo::AssignmentParameters::name {"name", this}

Name of the variable to which new values should be assigned.

Definition at line 36 of file VariableAssignment.h.

◆ sourceVariable

oops::OptionalParameter<ufo::Variable> ufo::AssignmentParameters::sourceVariable {"source variable", this}

Variable that should be copied into the destination variable specified using the name option (at all locations selected be the where statement, if present).

Exactly one of the value, source variable and function options must be given.

Definition at line 51 of file VariableAssignment.h.

◆ type

oops::OptionalParameter<ioda::ObsDtype> ufo::AssignmentParameters::type {"type", this}

Type (int, float, string or datetime) of the variable to which new values should be assigned.

This option must be provided if the variable doesn't exist yet. If this option is provided and the variable already exists, its type must match the value of this option, otherwise an exception will be thrown.

Definition at line 64 of file VariableAssignment.h.

◆ value_

oops::OptionalParameter<std::string> ufo::AssignmentParameters::value_ {"value", this}

Value to be assigned to the specified variable (at all locations selected be the where statement, if present).

Exactly one of the value and function options must be given.

Definition at line 45 of file VariableAssignment.h.


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