UFO
DataExtractorBackend.h
Go to the documentation of this file.
1
/*
2
* (C) Crown copyright 2021, Met Office
3
*
4
* This software is licensed under the terms of the Apache Licence Version 2.0
5
* which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6
*/
7
8
#ifndef UFO_UTILS_DATAEXTRACTOR_DATAEXTRACTORBACKEND_H_
9
#define UFO_UTILS_DATAEXTRACTOR_DATAEXTRACTORBACKEND_H_
10
11
#include <string>
12
13
namespace
ufo
14
{
15
16
template
<
typename
ExtractedValue>
17
struct
DataExtractorInput;
18
19
/// \brief Provides data to the DataExtractor.
20
///
21
/// \tparam ExtractedValue
22
/// Type of values extracted by the DataExtractor. Must be `float`, `int` or `std::string`.
23
///
24
template
<
typename
ExtractedValue>
25
class
DataExtractorBackend
{
26
public
:
27
virtual
~DataExtractorBackend
() =
default
;
28
29
/// \brief Load data for subsequent extraction.
30
///
31
/// \param payloadGroup
32
/// Group (e.g. ObsBias or ErrorVariance) containing the payload variable,
33
/// i.e. the variable that will be interpolated. The data source
34
/// must contain exactly one variable from this group.
35
///
36
/// \returns An object encapsulating the payload variable, all coordinates indexing it
37
/// and the mapping between dimensions of the payload array and coordinates.
38
virtual
DataExtractorInput<ExtractedValue>
loadData
(
const
std::string &payloadGroup)
const
= 0;
39
};
40
41
}
// namespace ufo
42
43
#endif
// UFO_UTILS_DATAEXTRACTOR_DATAEXTRACTORBACKEND_H_
ufo::DataExtractorBackend
Provides data to the DataExtractor.
Definition:
DataExtractorBackend.h:25
ufo::DataExtractorBackend::loadData
virtual DataExtractorInput< ExtractedValue > loadData(const std::string &payloadGroup) const =0
Load data for subsequent extraction.
ufo::DataExtractorBackend::~DataExtractorBackend
virtual ~DataExtractorBackend()=default
ufo
Definition:
RunCRTM.h:27
ufo::DataExtractorInput
Input data for the DataExtractor.
Definition:
DataExtractorInput.h:53
mpas-bundle
ufo
src
ufo
utils
dataextractor
DataExtractorBackend.h
Generated on Wed Sep 8 2021 16:37:35 for UFO by
1.9.1