1 #ifndef teca_table_reader_h
2 #define teca_table_reader_h
4 #include "teca_config.h"
5 #include "teca_algorithm.h"
6 #include "teca_metadata.h"
8 #include "teca_table.h"
95 TECA_GET_ALGORITHM_PROPERTIES_DESCRIPTION()
96 TECA_SET_ALGORITHM_PROPERTIES()
99 TECA_ALGORITHM_PROPERTY(std::
string, file_name)
106 TECA_ALGORITHM_PROPERTY(std::
string, index_column)
111 TECA_ALGORITHM_PROPERTY(
int, generate_original_ids)
114 TECA_ALGORITHM_VECTOR_PROPERTY(std::
string, metadata_column_name)
117 TECA_ALGORITHM_VECTOR_PROPERTY(std::
string, metadata_column_key)
120 void add_metadata_column(const std::
string &column, const std::
string &key)
122 this->append_metadata_column_name(column);
123 this->append_metadata_column_key(key);
127 void clear_metadata_columns()
129 this->clear_metadata_column_names();
130 this->clear_metadata_column_keys();
135 enum {format_csv, format_bin, format_xlsx, format_auto};
136 TECA_ALGORITHM_PROPERTY(
int, file_format)
137 void set_file_format_csv(){ this->set_file_format(format_csv); }
138 void set_file_format_bin(){ this->set_file_format(format_bin); }
139 void set_file_format_xlsx(){ this->set_file_format(format_xlsx); }
140 void set_file_format_auto(){ this->set_file_format(format_auto); }
149 const std::vector<teca_metadata> &input_md)
override;
151 const_p_teca_dataset execute(
unsigned int port,
152 const std::vector<const_p_teca_dataset> &input_data,
155 void set_modified()
override;
156 void clear_cached_metadata();
159 std::string file_name;
160 std::string index_column;
161 int generate_original_ids;
163 std::vector<std::string> metadata_column_names;
164 std::vector<std::string> metadata_column_keys;
166 struct teca_table_reader_internals;
167 teca_table_reader_internals *internals;
The interface to TECA pipeline architecture.
Definition: teca_algorithm.h:244
virtual teca_metadata get_output_metadata(unsigned int port, const std::vector< teca_metadata > &input_md)
a reader for data stored in binary table format
Definition: teca_table_reader.h:86
p_teca_error_handler error_handler TECA_EXPORT
The global error handler instance.