11 #include "eckit/eckit.h"
12 #include "eckit/exception/Exceptions.h"
13 #include "eckit/log/Log.h"
14 #include "eckit/log/Timer.h"
23 using namespace eckit;
32 const char *filename =
"test.odb";
48 for (
int i = 1;
i <= 10;
i++)
63 Timer t(
"Writing test.odb");
67 writer->setNumberOfColumns(2);
74 for (
int i = 1;
i <= 10;
i++)
86 std::cout <<
"UnitTest odacapi..." << std::endl;
90 std::cout <<
"Calling oda_create..." << std::endl;
119 double* data = buffer;
125 int v0 =
int(data[0]);
127 std::cout <<
"Read row " << nRows << std::endl;
134 std::cout <<
"OK" << std::endl;
140 std::cout <<
"UnitTest odacapi 2..." << std::endl;
144 std::cout <<
"Calling odb_start_with_args..." << std::endl;
147 std::cout <<
"Calling odb_create..." << std::endl;
151 Log::info() <<
"Log::info initialised properly." << std::endl;
178 double* data = buffer;
184 int v0 =
int(data[0]);
186 std::cout <<
"Read row " << nRows << std::endl;
193 std::cout <<
"OK" << std::endl;
199 std::cout <<
"UnitTest ODB C API append to file functionality..." << std::endl;
201 const char *filename =
"test.odb";
205 std::cout <<
"test_odacapi3: number of rows = " << n << std::endl;
223 for (
int i = 1;
i <= 10;
i++)
236 std::cout <<
"test_odacapi3: number of rows = " << n << std::endl;
244 std::cout <<
"Calling odb_init..." << std::endl;
246 Log::info() <<
"Log::info initialised properly." << std::endl;
oda_read_iterator_ptr odb_create_read_iterator(oda_ptr co, const char *filename, int *err)
int odb_write_iterator_write_header(oda_write_iterator_ptr wi)
int odb_read_iterator_destroy(oda_read_iterator_ptr it)
int odb_read_iterator_get_no_of_columns(oda_read_iterator_ptr it, int *numberOfColumns)
double odb_count(const char *filename)
int odb_select_iterator_destroy(oda_select_iterator_ptr it)
int odb_write_iterator_set_column(oda_write_iterator_ptr wi, int index, int type, const char *name)
oda_ptr odb_read_create(const char *config, int *err)
oda_ptr odb_select_create(const char *config, int *err)
int odb_select_iterator_get_next_row(oda_select_iterator_ptr it, int count, double *data, int *new_dataset)
int odb_write_iterator_set_no_of_columns(oda_write_iterator_ptr wi, int n)
oda_writer_ptr odb_writer_create(const char *config, int *err)
int odb_writer_destroy(oda_writer_ptr o)
int odb_read_iterator_get_column_type(oda_select_iterator_ptr it, int n, int *type)
int odb_write_iterator_set_next_row(oda_write_iterator_ptr wi, double *data, int count)
int odb_select_iterator_get_column_type(oda_select_iterator_ptr it, int n, int *type)
oda_write_iterator_ptr odb_create_write_iterator(oda_ptr co, const char *filename, int *err)
int odb_select_iterator_get_no_of_columns(oda_select_iterator_ptr it, int *numberOfColumns)
oda_write_iterator_ptr odb_create_append_iterator(oda_ptr co, const char *filename, int *err)
oda_select_iterator_ptr odb_create_select_iterator(oda_ptr co, const char *sql, int *err)
void odb_start_with_args(int argc, char *argv[])
int odb_read_iterator_get_column_name(oda_read_iterator_ptr it, int n, char **name, int *size_name)
int odb_write_iterator_destroy(oda_write_iterator_ptr wi)
int odb_read_destroy(oda_ptr o)
int odb_select_iterator_get_column_name(oda_select_iterator_ptr it, int n, char **name, int *size_name)
int odb_read_iterator_get_next_row(oda_read_iterator_ptr it, int count, double *data, int *new_dataset)