|
character(:) function, allocatable, target | fortranise_cstr (cstr) |
|
subroutine | failure_handler_wrapper (unused_context, error) |
|
integer function, public | odc_set_failure_handler (handler, context) |
|
integer function, public | odc_version (version_str) |
|
integer function, public | odc_vcs_version (git_sha1) |
|
integer function, public | odc_column_type_name (type, type_name) |
|
character(:) function, allocatable, target, public | odc_error_string (err) |
|
integer function | reader_open_path (reader, path) |
|
integer function | reader_close (reader) |
|
integer function | frame_initialise (frame, reader) |
|
integer function | frame_free (frame) |
|
integer function | frame_copy (frame, new_frame) |
|
integer function | frame_next (frame, aggregated, maximum_rows) |
|
integer function | frame_row_count (frame, nrows) |
|
integer function | frame_column_count (frame, ncols) |
|
integer function | frame_column_attributes (frame, col, name, type, element_size, element_size_doubles, bitfield_count) |
|
integer function | frame_bitfield_attributes (frame, col, field, name, offset, size) |
|
integer function | decoder_initialise (decoder, column_major) |
|
integer function | decoder_free (decoder) |
|
integer function | decoder_defaults_from_frame (decoder, frame) |
|
integer function | decoder_set_row_count (decoder, count) |
|
integer function | decoder_row_count (decoder, count) |
|
integer function | decoder_set_data_array (decoder, data, column_major) |
|
integer function | decoder_data_array (decoder, data, column_major) |
|
integer function | decoder_add_column (decoder, name) |
|
integer function | decoder_column_count (decoder, count) |
|
integer function | decoder_column_set_data_size (decoder, col, element_size) |
|
integer function | decoder_column_set_data_array (decoder, col, element_size, stride, data) |
|
integer function | decoder_column_data_array (decoder, col, element_size, element_size_doubles, stride, data) |
|
integer function | decoder_decode (decoder, frame, rows_decoded, nthreads) |
|
integer function | encoder_initialise (encoder) |
|
integer function | encoder_free (encoder) |
|
integer function | encoder_set_row_count (encoder, row_count) |
|
integer function | encoder_set_rows_per_frame (encoder, rows_per_frame) |
|
integer function | encoder_set_data_array (encoder, data, column_major) |
|
integer function | encoder_add_column (encoder, name, type) |
|
integer function | encoder_column_set_data_size (encoder, col, element_size, element_size_doubles) |
|
integer function | encoder_column_set_data_array (encoder, col, element_size, element_size_doubles, stride, data) |
|
integer function | encoder_column_add_bitfield (encoder, col, name, nbits) |
|
integer(c_long) function | write_fn (context, buffer, length) |
|
integer function | encoder_encode (encoder, outunit, bytes_written) |
|
ostream & | operator<< (ostream &o, const Block &b) |
|
std::ostream & | operator<< (std::ostream &, const Block &) |
|
const char * | gitsha1 () |
|
std::ostream & | operator<< (std::ostream &o, const Partition &p) |
|
ullong | writeBlock (DataHandle &in, const Block &block, Writer<>::iterator &out) |
|
std::ostream & | operator<< (std::ostream &o, const Partitions &p) |
|
RequestDict | unquoteRequestValues (const RequestDict &request) |
|
void | checkKeywordsHaveValues (const RequestDict &request, const std::vector< std::string > &keywords) |
|
ostream & | operator<< (std::ostream &s, const std::vector< std::string > &st) |
|
|
integer(c_int), parameter, public | odc_ignore = 0 |
|
integer(c_int), parameter, public | odc_integer = 1 |
|
integer(c_int), parameter, public | odc_real = 2 |
|
integer(c_int), parameter, public | odc_string = 3 |
|
integer(c_int), parameter, public | odc_bitfield = 4 |
|
integer(c_int), parameter, public | odc_double = 5 |
|
integer, parameter, public | odc_success = 0 |
|
integer, parameter, public | odc_iteration_complete = 1 |
|
integer, parameter, public | odc_error_general_exception = 2 |
|
integer, parameter, public | odc_error_unknown_exception = 3 |
|
integer, parameter | dp = selected_real_kind(15, 307) |
|
integer, parameter | double_size = 8 |
|
integer(c_long), save | failure_handler_context |
|
procedure(failure_handler_t), pointer, save | failure_handler_fn |
|
const double | maxAbsoluteError = 1e-9 |
|
const double | maxRelativeError = 1e-9 |
|
- Author
- Simon Smart
- Date
- March 2019
- Author
- Simon Smart
- Date
- January 2019
- Author
- Piotr Kuchta, ECMWF, Oct 2015
-
Piotr Kuchta
-
Simon Smart
- Date
- January 2019
- Note
- We have some strange behaviour in here. In particular, we support BOTH decoding and encoding integers from a representation as doubles, and also as integers. This is a little bit strange, and reflects the history of these being used in the IFS and ODB1 where everything was a double.
n.b. The decoded size is int64_t, even though the codec only goes up to int32, as we want to support bigger numbers in the future.
- Author
- Simon Smart
- Date
- Dec 2018
- Author
- Piotr Kuchta, May 2015
-
Piotr Kuchta, October 2016
-
Piotr Kuchta, August 2015
-
Piotr Kuchta, ECMWF, November 2015
-
Simon Smart
- Date
- June 2017
- Author
- Anne Fouilloux
This file will be updated autmatically by the make.sms script
- Author
- Piotr Kuchta, ECMWF, January 2016
-
Simon Smart
- Date
- Aug 2018
- Author
- Piotr Kuchta
-
Simon Smart
- Date
- Feb 2009
- Author
- Piotr Kuchta
- Date
- July 2010
- Author
- Simon Smart
- Date
- January 2019
- Author
- Piotr Kuchta
-
Simon Smart
- Date
- Jan 2009
-
Aug 2018
- Author
- Simon Smart Aug 2018
-
Simon Smart
- Date
- Aug 2018
- Note
- This output is designed to generalise and standardise the output mechanism for the odc::Select class. Prior to this, the class had two problems:
i) It invasively used the internals of the SQLSelect and TableIterators, accessing their internal data buffers, and the results objects directly. This is nasty and results in significant duplicate code.
ii) As a result of the original IFS origins of this code, integers are returned as DOUBLES. this is reasonable, but a bit odd, and it is worth having in code the support to output integers as integers for future/other use - without having to reimplement and duplicate everything.
This output mechanism allows output to be made to a specified buffer (which may be changed on a per-step basis) with a semantically correct behaviour depending on the column type.
This has been put in odc, not in eckit, on the understanding that the handling of integers as doubles is esoteric and should probably not be replicated anywhere else.
- Author
- Piotr Kuchta
-
Simon Smart ECMWF Oct 2010