1 #ifndef teca_cf_reader_h
2 #define teca_cf_reader_h
4 #include "teca_config.h"
5 #include "teca_algorithm.h"
6 #include "teca_metadata.h"
15 class teca_cf_reader_internals;
16 using p_teca_cf_reader_internals = std::shared_ptr<teca_cf_reader_internals>;
88 TECA_GET_ALGORITHM_PROPERTIES_DESCRIPTION()
89 TECA_SET_ALGORITHM_PROPERTIES()
96 TECA_ALGORITHM_VECTOR_PROPERTY(std::
string, file_name)
109 TECA_ALGORITHM_PROPERTY(std::
string, files_regex)
116 TECA_ALGORITHM_PROPERTY(
int, periodic_in_x)
123 TECA_ALGORITHM_PROPERTY(
int, periodic_in_y)
130 TECA_ALGORITHM_PROPERTY(
int, periodic_in_z)
137 TECA_ALGORITHM_PROPERTY(
int, select_ensemble_member_index)
145 TECA_ALGORITHM_PROPERTY(std::
string, x_axis_variable)
153 TECA_ALGORITHM_PROPERTY(std::
string, y_axis_variable)
160 TECA_ALGORITHM_PROPERTY(std::
string, z_axis_variable)
168 TECA_ALGORITHM_PROPERTY(std::
string, t_axis_variable)
176 TECA_ALGORITHM_PROPERTY(std::
string, ensemble_dimension_name)
184 TECA_ALGORITHM_PROPERTY(std::
string, calendar)
192 TECA_ALGORITHM_PROPERTY(std::
string, t_units)
214 TECA_ALGORITHM_PROPERTY(std::
string, filename_time_template)
222 TECA_ALGORITHM_VECTOR_PROPERTY(
double, t_value)
231 TECA_ALGORITHM_PROPERTY(
int, max_metadata_ranks)
251 TECA_ALGORITHM_PROPERTY(
int, collective_buffer)
256 void clear_cached_metadata();
261 void get_variables_in_group(
264 std::
string group_name,
266 std::vector<std::
string> &vars);
272 const_p_teca_dataset execute(
274 const std::vector<const_p_teca_dataset> &input_data,
277 virtual
void set_modified() override;
280 std::vector<std::
string> file_names;
281 std::
string files_regex;
282 std::
string x_axis_variable;
283 std::
string y_axis_variable;
284 std::
string z_axis_variable;
285 std::
string t_axis_variable;
286 std::
string ensemble_dimension_name;
287 std::
string calendar;
289 std::
string filename_time_template;
290 std::vector<
double> t_values;
294 int select_ensemble_member_index;
295 int max_metadata_ranks;
297 int collective_buffer;
298 p_teca_cf_reader_internals internals;
The interface to TECA pipeline architecture.
Definition: teca_algorithm.h:244
A reader for Cartesian mesh based data stored in NetCDF CF format.
Definition: teca_cf_reader.h:79
TECA_EXPORT int clamp_dimensions_of_one(unsigned long nx_max, unsigned long ny_max, unsigned long nz_max, unsigned long *extent, bool verbose)
p_teca_error_handler error_handler TECA_EXPORT
The global error handler instance.
Codes dealing with NetCDF I/O calls.
Definition: teca_netcdf_util.h:67