TECA
The Toolkit for Extreme Climate Analysis
teca_face_to_cell_centering.h
1 #ifndef teca_face_to_cell_centering_h
2 #define teca_face_to_cell_centering_h
3 
4 #include "teca_shared_object.h"
5 #include "teca_algorithm.h"
6 #include "teca_metadata.h"
7 
8 #include <string>
9 #include <vector>
10 
11 TECA_SHARED_OBJECT_FORWARD_DECL(teca_face_to_cell_centering)
12 
13 /// An algorithm that transforms from face to cell centering
15 {
16 public:
17  TECA_ALGORITHM_STATIC_NEW(teca_face_to_cell_centering)
18  TECA_ALGORITHM_DELETE_COPY_ASSIGN(teca_face_to_cell_centering)
19  TECA_ALGORITHM_CLASS_NAME(teca_face_to_cell_centering)
21 
22  // report/initialize to/from Boost program options
23  // objects.
24  TECA_GET_ALGORITHM_PROPERTIES_DESCRIPTION()
25  TECA_SET_ALGORITHM_PROPERTIES()
26 
27 protected:
29 
30 private:
31  using teca_algorithm::get_output_metadata;
32 
33  teca_metadata get_output_metadata(
34  unsigned int port,
35  const std::vector<teca_metadata> &input_md) override;
36 
37  std::vector<teca_metadata> get_upstream_request(
38  unsigned int port,
39  const std::vector<teca_metadata> &input_md,
40  const teca_metadata &request) override;
41 
42  const_p_teca_dataset execute(
43  unsigned int port,
44  const std::vector<const_p_teca_dataset> &input_data,
45  const teca_metadata &request) override;
46 };
47 
48 #endif
teca_metadata
A generic container for meta data in the form of name=value pairs.
Definition: teca_metadata.h:21
teca_face_to_cell_centering
An algorithm that transforms from face to cell centering.
Definition: teca_face_to_cell_centering.h:14
teca_shared_object.h
teca_error::TECA_EXPORT
p_teca_error_handler error_handler TECA_EXPORT
The global error handler instance.
teca_algorithm
The interface to TECA pipeline architecture.
Definition: teca_algorithm.h:237