UFO
ufo::DrawValueFromFile< T > Class Template Reference

Produce values by interpolating an array loaded from a file, indexed by coordinates whose names correspond to ObsSpace variables. More...

#include <DrawValueFromFile.h>

Inheritance diagram for ufo::DrawValueFromFile< T >:
Collaboration diagram for ufo::DrawValueFromFile< T >:

Public Member Functions

 DrawValueFromFile (const eckit::LocalConfiguration &)
 
void compute (const ObsFilterData &, ioda::ObsDataVector< T > &) const
 compute the result of the function More...
 
const ufo::VariablesrequiredVariables () const
 geovals required to compute the function More...
 
- Public Member Functions inherited from ufo::ObsFunctionBase< T >
 ObsFunctionBase (const eckit::LocalConfiguration conf=eckit::LocalConfiguration())
 
virtual ~ObsFunctionBase ()
 

Private Attributes

Variables allvars_
 
std::unordered_map< std::string, InterpMethodinterpMethod_
 
std::string fpath_
 
DrawValueFromFileParameters options_
 
std::vector< int > channels_
 

Additional Inherited Members

- Public Types inherited from ufo::ObsFunctionBase< T >
typedef T Value_
 Type of the values produced by the function. More...
 

Detailed Description

template<typename T>
class ufo::DrawValueFromFile< T >

Produce values by interpolating an array loaded from a file, indexed by coordinates whose names correspond to ObsSpace variables.

Template Parameters
TType of values produced by this ObsFunction. Must be float, int or std::string.

See DataExtractor for details on the format of this file.

example configurations:

- filter: Variable Assignment
assignments:
- name: interpolated_value@DerivedObsValue
function:
name: DrawValueFromFile@ObsFunction
channels: 1-3
options:
file: <filepath>
channels: 1-3
group: DerivedObsValue
interpolation:
- name: satellite_id@MetaData
method: exact
- name: processing_center@MetaData
method: exact
- name: air_pressure@MetaData
method: linear

Note that channel number extraction is implicit, using the channels selected and performed as an exact match before any user defined interpolation takes place.

Definition at line 145 of file DrawValueFromFile.h.

Constructor & Destructor Documentation

◆ DrawValueFromFile()

template<typename T >
ufo::DrawValueFromFile< T >::DrawValueFromFile ( const eckit::LocalConfiguration &  config)
explicit

Definition at line 62 of file DrawValueFromFile.cc.

Member Function Documentation

◆ compute()

template<typename T >
void ufo::DrawValueFromFile< T >::compute ( const ObsFilterData ,
ioda::ObsDataVector< T > &   
) const
virtual

compute the result of the function

Implements ufo::ObsFunctionBase< T >.

Definition at line 126 of file DrawValueFromFile.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ requiredVariables()

template<typename T >
const ufo::Variables & ufo::DrawValueFromFile< T >::requiredVariables
virtual

geovals required to compute the function

Implements ufo::ObsFunctionBase< T >.

Definition at line 185 of file DrawValueFromFile.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ allvars_

template<typename T >
Variables ufo::DrawValueFromFile< T >::allvars_
private

Definition at line 154 of file DrawValueFromFile.h.

◆ channels_

template<typename T >
std::vector<int> ufo::DrawValueFromFile< T >::channels_
private

Definition at line 158 of file DrawValueFromFile.h.

◆ fpath_

template<typename T >
std::string ufo::DrawValueFromFile< T >::fpath_
private

Definition at line 156 of file DrawValueFromFile.h.

◆ interpMethod_

template<typename T >
std::unordered_map<std::string, InterpMethod> ufo::DrawValueFromFile< T >::interpMethod_
private

Definition at line 155 of file DrawValueFromFile.h.

◆ options_

template<typename T >
DrawValueFromFileParameters ufo::DrawValueFromFile< T >::options_
private

Definition at line 157 of file DrawValueFromFile.h.


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