bufr2synop 0.24.0
|
Include header file for binary bufr2tac. More...
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <getopt.h>
#include <time.h>
#include <math.h>
#include <sys/stat.h>
#include "bufrdeco.h"
#include "metsynop.h"
#include "metbuoy.h"
#include "mettemp.h"
#include "metclimat.h"
Go to the source code of this file.
Data Structures | |
struct | bufr2tac_error |
Store an error/warning/info and its severity. More... | |
struct | bufr2tac_error_stack |
A stack of structs bufr2tac_error. More... | |
struct | bufr2tac_subset_state |
stores information needed to parse a sequential list of expanded descriptors for a subset More... | |
struct | met_geo |
Geographic meta information. More... | |
struct | metreport |
all the information for a meteorological report in WMO text format from a BUFR file More... | |
Macros | |
#define | _GNU_SOURCE |
#define | SUBSET_MASK_LATITUDE_SOUTH (1) |
Bit mask to mark a struct bufr_subset_sequence_data with south latitude. More... | |
#define | SUBSET_MASK_LONGITUDE_WEST (2) |
Bit mask to mark a struct bufr_subset_sequence_data with west longitude. More... | |
#define | SUBSET_MASK_HAVE_TYPE_STATION (4) |
Bit mask to mark a struct bufr_subset_sequence_data having type station information. More... | |
#define | SUBSET_MASK_HAVE_NO_SIGNIFICANT_WW (8) |
Bit mask to mark a struct bufr_subset_sequence_data without WW information. More... | |
#define | SUBSET_MASK_HAVE_NO_SIGNIFICANT_W1 (16) |
Bit mask to mark a struct bufr_subset_sequence_data without W1 information. More... | |
#define | SUBSET_MASK_HAVE_NO_SIGNIFICANT_W2 (32) |
Bit mask to mark a struct bufr_subset_sequence_data without W1 information. More... | |
#define | SUBSET_MASK_HAVE_LATITUDE (64) |
Bit mask to mark a struct bufr_subset_sequence_data having latitude. More... | |
#define | SUBSET_MASK_HAVE_LONGITUDE (128) |
Bit mask to mark a struct bufr_subset_sequence_data having longitude. More... | |
#define | SUBSET_MASK_HAVE_ALTITUDE (256) |
Bit mask to mark a struct bufr_subset_sequence_data having altitude. More... | |
#define | SUBSET_MASK_HAVE_NAME (512) |
Bit mask to mark a struct bufr_subset_sequence_data having station name. More... | |
#define | SUBSET_MASK_HAVE_COUNTRY (1024) |
Bit mask to mark a struct bufr_subset_sequence_data having country name. More... | |
#define | SUBSET_MASK_HAVE_YEAR (2048) |
Bit mask to mark a struct bufr_subset_sequence_data having observation year. More... | |
#define | SUBSET_MASK_HAVE_MONTH (4096) |
Bit mask to mark a struct bufr_subset_sequence_data having observation month. More... | |
#define | SUBSET_MASK_HAVE_DAY (8192) |
Bit mask to mark a struct bufr_subset_sequence_data having observation day in a month. More... | |
#define | SUBSET_MASK_HAVE_HOUR (16384) |
Bit mask to mark a struct bufr_subset_sequence_data having observation hour. More... | |
#define | SUBSET_MASK_HAVE_MINUTE (32768) |
Bit mask to mark a struct bufr_subset_sequence_data having observation minute. More... | |
#define | SUBSET_MASK_HAVE_SECOND (65536) |
Bit mask to mark a struct bufr_subset_sequence_data having observation second. More... | |
#define | SUBSET_MASK_HAVE_GUST (131072) |
Bit mask to mark a struct bufr_subset_sequence_data having wind gust observation other than 10 minutes. More... | |
#define | SUBSET_MASK_HAVE_GUST10 ( 2 * 131072) |
Bit mask to mark a struct bufr_subset_sequence_data having wind gust observation other than 10 minutes. More... | |
#define | SUBSET_MASK_HAVE_WIGOS_ID ( 4 * 131072) |
Bit mask to mark if a subset has a WIGOS ID. More... | |
#define | BUFR2TAC_ERROR_STACK_DIM 16 |
set de dimension of a struct bufr2tac_error_stack More... | |
#define | BUFR2TAC_ERROR_DESCRIPTION_LENGTH 1024 |
set de dimension of member description of a struct bufr2tac_error More... | |
#define | REPORT_LENGTH (16384) |
#define | PRINT_BITMASK_WIGOS (1) |
Bit mask to member print_mask in struct metreport to print WIGOS Identifier. More... | |
#define | PRINT_BITMASK_GEO (2) |
Bit mask to member print_mask in struct metreport to print geographic position. More... | |
#define | bufr_subset_sequence_data bufrdeco_subset_sequence_data |
To use bufrdeco library with legacy old code using ECMWF library which is not used currently. More... | |
Functions | |
char * | bufr2tac_get_version (char *version, size_t dversion, char *build, size_t dbuild, char *builder, size_t dbuilder, int *version_major, int *version_minor, int *version_patch) |
int | bufr2tac_push_error (struct bufr2tac_error_stack *e, int severity, char *description) |
int | bufr2tac_clean_error_stack (struct bufr2tac_error_stack *e) |
int | bufr2tac_set_error (struct bufr2tac_subset_state *s, int severity, char *origin, char *explanation) |
int | bufr2tac_print_error (struct bufr2tac_error_stack *e) |
int | bufr2tac_set_debug_level (int level) |
void | bufr2tac_clean_buoy_chunks (struct buoy_chunks *b) |
cleans a buoy_chunks struct More... | |
void | bufr2tac_clean_synop_chunks (struct synop_chunks *s) |
void | bufr2tac_clean_temp_chunks (struct temp_chunks *t) |
cleans a buoy_chunks struct More... | |
void | bufr2tac_clean_climat_chunks (struct climat_chunks *c) |
cleans a climat_chunks struct More... | |
void | bufr2tac_clean_metreport (struct metreport *m) |
int | set_environment (char *default_bufrtables, char *bufrtables_dir) |
int | integer_to_descriptor (struct bufr_descriptor *d, int id) |
parse an integer with a descriptor fom bufr ECWMF libary More... | |
int | descriptor_to_integer (int *id, struct bufr_descriptor *d) |
parse a descriptor and sets an integer in the decimal formas fxxyyy More... | |
unsigned int | three_bytes_to_uint (const unsigned char *source) |
returns the integer value from an array of three bytes, most significant first More... | |
char * | charray_to_string (char *s, unsigned char *buf, size_t size) |
get a null termitated c-string from an array of unsigned chars More... | |
char * | adjust_string (char *s) |
Supress trailing blanks of a string. More... | |
char * | get_explained_table_val (char *expl, size_t dim, char tablec[MAXLINES_TABLEC][92], size_t nlines_tablec, struct bufr_descriptor *d, int ival) |
char * | get_explained_flag_val (char *expl, size_t dim, char tablec[MAXLINES_TABLEC][92], size_t nlines_tablec, struct bufr_descriptor *d, unsigned long ival) |
char * | get_ecmwf_tablename (char *target, char type, char *bufrtables_dir, int ksec1[40]) |
Get the complete pathname of a table file needed by a bufr message. More... | |
int | parse_subset_as_buoy (struct metreport *m, struct bufr2tac_subset_state *s, struct bufr_subset_sequence_data *sq, char *err) |
int | parse_subset_as_synop (struct metreport *m, struct bufr2tac_subset_state *s, struct bufr_subset_sequence_data *sq, char *err) |
parses a subset sequence as an Land fixed SYNOP FM-12, SHIP FM-13 or SYNOP-mobil FM-14 report More... | |
int | parse_subset_as_temp (struct metreport *m, struct bufr2tac_subset_state *s, struct bufr_subset_sequence_data *sq, char *err) |
int | parse_subset_as_climat (struct metreport *m, struct bufr2tac_subset_state *s, struct bufr_subset_sequence_data *sq, char *err) |
int | YYYYMMDDHHmm_to_met_datetime (struct met_datetime *t, const char *source) |
Parse the string YYYYMMDDHHmm[ss] and set a struct met_datetime. More... | |
int | round_met_datetime_to_hour (struct met_datetime *target, struct met_datetime *source) |
int | synop_YYYYMMDDHHmm_to_YYGG (struct synop_chunks *syn) |
Sets YYGG from YYYYMMDDHHmm extended group. More... | |
char * | met_datetime_to_YYGG (char *target, struct met_datetime *t) |
Get YYGG from a struct met_datetime. More... | |
int | buoy_YYYYMMDDHHmm_to_JMMYYGGgg (struct buoy_chunks *b) |
Sets YYGG from YYYYMMDDHHmm extended group. More... | |
int | check_date_from_future (struct metreport *m) |
Check a estructure metreport not from future. More... | |
char * | guess_WMO_region (char *A1, char *Reg, const char *II, const char *iii) |
get WMO region A1 and Reg items from II and iii (WMO index) More... | |
char * | guess_WMO_region_synop (struct synop_chunks *syn) |
Try to find WMO region if it is not already set and WMO Block and number index are known. More... | |
char * | guess_WMO_region_temp (struct temp_chunks *temp) |
int | read_table_c (char tablec[MAXLINES_TABLEC][92], size_t *nlines_tablec, char *bufrtables_dir, int ksec1[40]) |
int | parse_subset_sequence (struct metreport *m, struct bufr_subset_sequence_data *sq, struct bufr2tac_subset_state *st, int *kdtlst, size_t nlst, int *ksec1, char *err) |
Parse a sequence of expanded descriptors for a subset. More... | |
int | find_descriptor (int *haystack, size_t nlst, int needle) |
Try to find a descriptor in an array. More... | |
int | find_descriptor_interval (int *haystack, size_t nlst, int needlemin, int needlemax) |
int | bufr_set_environment (char *default_bufrtables, char *bufrtables_dir) |
set the environment vars needed to work properly with ECMWF bufrdc library More... | |
int | guess_gts_header (struct gts_header *h, const char *f) |
Guess the WMO GTS header from filename. More... | |
int | read_bufr (unsigned char *bufr, char *filename, int *length) |
read a bufr file as an array of unsigned chars More... | |
int | time_period_duration (struct bufr2tac_subset_state *s) |
Get time period duration in seconds. More... | |
int | hour_rounded (struct synop_chunks *syn) |
Get the rounded hour of a given date. More... | |
char * | latlon_to_MMM (char *target, double lat, double lon) |
convert latitude and longitude to a MMM string More... | |
char * | kelvin_to_TTTT (char *target, double T) |
converts a kelvin temperature value into a TTTT string More... | |
char * | kelvin_to_snTTT (char *target, double T) |
converts a kelvin temperature value into a snTTT string More... | |
char * | kelvin_to_snTT (char *target, double T) |
converts a kelvin temperature value into a snTT string More... | |
char * | kelvin_to_TT (char *target, double T) |
converts a kelvin temperature value into a TT string More... | |
char * | kelvin_to_TTTa (char *target, double T) |
Set temperature TTTa. More... | |
char * | dewpoint_depression_to_DnDn (char *target, double T, double Td) |
Set DnDn (dewpoint depression) More... | |
char * | m_to_h (char *target, double h) |
converts the altitude of cloud layer into h string code More... | |
char * | m_to_hh (char *target, double h) |
converts the altitude of cloud layer into hh string code More... | |
char * | m_to_9h (char *target, double h) |
converts the altitude of cloud layer into 9h string code More... | |
char * | m_to_RR (char *target, double m) |
Convert distance (m) in RR code (3570) More... | |
char * | pascal_to_ppp (char *target, double P) |
Converts pascal values (variation) into a ppp string. More... | |
char * | pascal_to_pnpnpn (char *target, double P) |
char * | pascal_to_PPPP (char *target, double P) |
Converts pascal values into a PPPP string. More... | |
char * | percent_to_okta (char *target, double perc) |
Converts percent cloud cover into okta. More... | |
char * | prec_to_RRR (char *target, double r) |
converts a precipitation in Kg/m2 into a RRR string More... | |
char * | prec_to_RRRR24 (char *target, double r) |
converts a precipitation in Kg/m2 into a RRRR24 string More... | |
char * | secs_to_tt (char *tt, int secs) |
get tt code from seconds More... | |
char * | vism_to_VV (char *target, double V) |
Convert horizontal visibilty in meters to a VV string. More... | |
char * | recent_snow_to_ss (char *target, double r) |
converts recent snow in m to ss (code table 3870) More... | |
char * | total_snow_depth_to_sss (char *target, double r) |
converts tatal snow depth in m to sss (code table 3889) More... | |
char * | wind_to_dndnfnfnfn (char *target, double dd, double ff) |
char * | grad_to_D (char *D, double grad) |
Converts true direction in grads to D (code table 0700) More... | |
char * | grad_to_ec (char *target, double grad) |
Converts elevation in grads to ec (code table 1004) More... | |
int | check_kj_m2 (double val) |
Check if a radiation value can be wrote in Kj/m2 using up to 4 chars. More... | |
int | check_j_cm2 (double val) |
Check if a radiation value can be wrote in J/cm2 using up to 4 chars. More... | |
size_t | print_geo (char **geo, size_t lmax, struct metreport *m) |
size_t | print_wigos_id (char **wid, size_t lmax, struct metreport *m) |
int | print_synop_report (struct metreport *m) |
prints a synop into a string More... | |
size_t | print_synop_sec0 (char **sec0, size_t lmax, struct synop_chunks *syn) |
Prints the synop section 0 (header) More... | |
size_t | print_synop_sec1 (char **sec1, size_t lmax, struct synop_chunks *syn) |
Prints the synop section 1. More... | |
size_t | print_synop_sec2 (char **sec2, size_t lmax, struct synop_chunks *syn) |
Prints the synop section 2. More... | |
size_t | print_synop_sec3 (char **sec3, size_t lmax, struct synop_chunks *syn) |
Prints the synop section 3. More... | |
size_t | print_synop_wigos_id (char **wid, size_t lmax, struct synop_chunks *syn) |
int | print_buoy_report (struct metreport *m) |
prints a buoy into a string More... | |
size_t | print_buoy_sec0 (char **sec0, size_t lmax, struct buoy_chunks *b) |
Prints the buoy section 1. More... | |
size_t | print_buoy_sec1 (char **sec1, size_t lmax, struct buoy_chunks *b) |
Prints the buoy section 1. More... | |
size_t | print_buoy_sec2 (char **sec2, size_t lmax, struct buoy_chunks *b) |
Prints the buoy section 1. More... | |
size_t | print_buoy_sec3 (char **sec3, size_t lmax, struct buoy_chunks *b) |
Prints the buoy section 3. More... | |
size_t | print_buoy_wigos_id (char **wid, size_t lmax, struct buoy_chunks *b) |
int | print_climat_report (struct metreport *m) |
prints a climat into a string More... | |
size_t | print_climat_sec0 (char **sec0, size_t lmax, struct climat_chunks *cl) |
Prints the climat section 0 (header) More... | |
size_t | print_climat_sec1 (char **sec1, size_t lmax, struct climat_chunks *cl) |
Prints the climat section 1. More... | |
size_t | print_climat_sec2 (char **sec2, size_t lmax, struct climat_chunks *cl) |
Prints the climat section 2. More... | |
size_t | print_climat_sec3 (char **sec3, size_t lmax, struct climat_chunks *cl) |
Prints the climat section 3. More... | |
size_t | print_climat_sec4 (char **sec4, size_t lmax, struct climat_chunks *cl) |
Prints the climat section 4. More... | |
size_t | print_climat_wigos_id (char **wid, size_t lmax, struct climat_chunks *cl) |
int | print_temp_report (struct metreport *m) |
print the four parts of a decoded TEMP report from a BUFR file into strings More... | |
int | print_temp_a (struct metreport *m) |
Prints the part A of a TEMP report into a string. More... | |
size_t | print_temp_a_sec1 (char **sec1, size_t lmax, struct temp_chunks *t) |
Prints the section 1 of part A of a TEMP report. More... | |
size_t | print_temp_a_sec2 (char **sec2, size_t lmax, struct temp_chunks *t) |
Prints the section 2 of part A of a TEMP report. More... | |
size_t | print_temp_a_sec3 (char **sec3, size_t lmax, struct temp_chunks *t) |
Prints the section 3 of part A of a TEMP report. More... | |
size_t | print_temp_a_sec4 (char **sec4, size_t lmax, struct temp_chunks *t) |
Prints the section 4 of part A of a TEMP report. More... | |
size_t | print_temp_a_sec7 (char **sec7, size_t lmax, struct temp_chunks *t) |
Prints the section 7 of part A of a TEMP report. More... | |
int | print_temp_b (struct metreport *m) |
Prints the part B of a TEMP report into a string. More... | |
size_t | print_temp_b_sec1 (char **sec1, size_t lmax, struct temp_chunks *t) |
Prints the section 1 of part B of a TEMP report. More... | |
size_t | print_temp_b_sec5 (char **sec5, size_t lmax, struct temp_chunks *t) |
Prints the section 5 of part B of a TEMP report. More... | |
size_t | print_temp_b_sec6 (char **sec6, size_t lmax, struct temp_chunks *t) |
Prints the section 6 of part B of a TEMP report. More... | |
size_t | print_temp_b_sec7 (char **sec7, size_t lmax, struct temp_chunks *t) |
Prints the section 7 of part B of a TEMP report. More... | |
size_t | print_temp_b_sec8 (char **sec8, size_t lmax, struct temp_chunks *t) |
Prints the section 8 of part B of a TEMP report. More... | |
int | print_temp_c (struct metreport *m) |
Prints the part C of a TEMP report into a string. More... | |
size_t | print_temp_c_sec1 (char **sec1, size_t lmax, struct temp_chunks *t) |
Prints the section 1 of part C of a TEMP report. More... | |
size_t | print_temp_c_sec2 (char **sec2, size_t lmax, struct temp_chunks *t) |
Prints the section 2 of part C of a TEMP report. More... | |
size_t | print_temp_c_sec3 (char **sec3, size_t lmax, struct temp_chunks *t) |
Prints the section 3 of part C of a TEMP report. More... | |
size_t | print_temp_c_sec4 (char **sec4, size_t lmax, struct temp_chunks *t) |
Prints the section 4 of part C of a TEMP report. More... | |
size_t | print_temp_c_sec7 (char **sec7, size_t lmax, struct temp_chunks *t) |
Prints the section 7 of part C of a TEMP report. More... | |
int | print_temp_d (struct metreport *m) |
Prints the part D of a TEMP report into a string. More... | |
size_t | print_temp_d_sec1 (char **sec1, size_t lmax, struct temp_chunks *t) |
Prints the section 1 of part D of a TEMP report. More... | |
size_t | print_temp_d_sec5 (char **sec5, size_t lmax, struct temp_chunks *t) |
Prints the section 5 of part D of a TEMP report. More... | |
size_t | print_temp_d_sec6 (char **sec6, size_t lmax, struct temp_chunks *t) |
Prints the section 6 of part D of a TEMP report. More... | |
size_t | print_temp_d_sec7 (char **sec7, size_t lmax, struct temp_chunks *t) |
Prints the section 7 of part D of a TEMP report. More... | |
size_t | print_temp_d_sec8 (char **sec8, size_t lmax, struct temp_chunks *t) |
size_t | print_temp_wigos_id (char **wid, size_t lmax, struct temp_chunks *t) |
int | parse_temp_raw_data (struct temp_chunks *t, struct temp_raw_data *r) |
parse a struct temp_raw_data to fill chunks in a struct temp_chunks More... | |
int | parse_temp_raw_wind_shear_data (struct temp_chunks *t, struct temp_raw_wind_shear_data *w) |
int | print_temp_raw_data (struct temp_raw_data *r) |
Prints for debug a struct temp_raw_data. More... | |
int | print_temp_raw_wind_shear_data (struct temp_raw_wind_shear_data *w) |
Prints for debug a struct temp_raw_data. More... | |
int | print_csv (FILE *f, struct metreport *m) |
prints a struct metreport in labeled csv format More... | |
int | print_json (FILE *f, struct metreport *m) |
prints a struct metreport in json format More... | |
int | print_xml (FILE *f, struct metreport *m) |
prints a struct metreport in xml format More... | |
int | print_plain (FILE *f, struct metreport *m) |
Print in a file the report decoded to Traditional Alphanumeric Code in plain text format. A line per report. More... | |
int | print_html (FILE *f, struct metreport *m) |
Print in a file the report decoded to Traditional Alphanumeric Code in plain html format. A line per report. More... | |
int | syn_parse_x01 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 01. More... | |
int | syn_parse_x02 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 02. More... | |
int | syn_parse_x04 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 04. More... | |
int | syn_parse_x05 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 05. More... | |
int | syn_parse_x06 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 06. More... | |
int | syn_parse_x07 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 07. More... | |
int | syn_parse_x08 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 08. More... | |
int | syn_parse_x10 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 10. More... | |
int | syn_parse_x11 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 11. More... | |
int | syn_parse_x12 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 12. More... | |
int | syn_parse_x13 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 13. More... | |
int | syn_parse_x14 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 14. More... | |
int | syn_parse_x20 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 20. More... | |
int | syn_parse_x22 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 01. More... | |
int | syn_parse_x31 (struct synop_chunks *syn, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 31. More... | |
int | buoy_parse_x01 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 01. More... | |
int | buoy_parse_x02 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 02. More... | |
int | buoy_parse_x04 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 04. More... | |
int | buoy_parse_x05 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 05. More... | |
int | buoy_parse_x06 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 06. More... | |
int | buoy_parse_x07 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 07. More... | |
int | buoy_parse_x08 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 08. More... | |
int | buoy_parse_x10 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 10. More... | |
int | buoy_parse_x11 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 11. More... | |
int | buoy_parse_x12 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 12. More... | |
int | buoy_parse_x13 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 13. More... | |
int | buoy_parse_x14 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 14. More... | |
int | buoy_parse_x20 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 20. More... | |
int | buoy_parse_x22 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 22. More... | |
int | buoy_parse_x31 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 31. More... | |
int | buoy_parse_x33 (struct buoy_chunks *b, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 33. More... | |
int | climat_parse_x01 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 01. More... | |
int | climat_parse_x02 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 02. More... | |
int | climat_parse_x04 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 04. More... | |
int | climat_parse_x05 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 05. More... | |
int | climat_parse_x06 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 06. More... | |
int | climat_parse_x07 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
int | climat_parse_x08 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 08. More... | |
int | climat_parse_x10 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 10. More... | |
int | climat_parse_x11 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 11. More... | |
int | climat_parse_x12 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 12. More... | |
int | climat_parse_x13 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 13. More... | |
int | climat_parse_x14 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 14. More... | |
int | climat_parse_x20 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
int | climat_parse_x22 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
int | climat_parse_x31 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
int | climat_parse_x33 (struct climat_chunks *c, struct bufr2tac_subset_state *s) |
int | temp_parse_x01 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 01. More... | |
int | temp_parse_x02 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 02. More... | |
int | temp_parse_x04 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 04. More... | |
int | temp_parse_x05 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
int | temp_parse_x06 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
int | temp_parse_x07 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
int | temp_parse_x08 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 08. More... | |
int | temp_parse_x10 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 10. More... | |
int | temp_parse_x11 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 11. More... | |
int | temp_parse_x12 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 12. More... | |
int | temp_parse_x20 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 20. More... | |
int | temp_parse_x22 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 22. More... | |
int | temp_parse_x31 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 31. More... | |
int | temp_parse_x33 (struct temp_chunks *t, struct bufr2tac_subset_state *s) |
Parse a expanded descriptor with X = 33. More... | |
int | bus012_ (int *, unsigned int *, int *, int *, int *, int *, int *) |
int | buprs0_ (int *) |
int | buprs1_ (int *) |
int | buprs3_ (int *, int *, int *, int *, int *, int *, char **) |
int | bufrex_ (int *, int *, int *, int *, int *, int *, int *, int *, int *, char **, char **, int *, double *, char **, int *) |
int | busel_ (int *, int *, int *, int *, int *) |
int | busel2_ (int *, int *, int *, char **, int *, char **, char **, char **, int *) |
int | buukey_ (int *, int *, int *, int *, int *) |
int | buprt_ (int *, int *, int *, int *, char **, char **, char **, int *, double *, int *, int *, int *) |
Variables | |
int | BUFR2TAC_DEBUG_LEVEL |
Include header file for binary bufr2tac.
Definition in file bufr2tac.h.
#define _GNU_SOURCE |
Definition at line 28 of file bufr2tac.h.
#define BUFR2TAC_ERROR_DESCRIPTION_LENGTH 1024 |
set de dimension of member description of a struct bufr2tac_error
Definition at line 199 of file bufr2tac.h.
#define BUFR2TAC_ERROR_STACK_DIM 16 |
set de dimension of a struct bufr2tac_error_stack
Definition at line 194 of file bufr2tac.h.
#define bufr_subset_sequence_data bufrdeco_subset_sequence_data |
To use bufrdeco library with legacy old code using ECMWF library which is not used currently.
Definition at line 220 of file bufr2tac.h.
#define PRINT_BITMASK_GEO (2) |
Bit mask to member print_mask in struct metreport to print geographic position.
Definition at line 214 of file bufr2tac.h.
#define PRINT_BITMASK_WIGOS (1) |
Bit mask to member print_mask in struct metreport to print WIGOS Identifier.
Definition at line 208 of file bufr2tac.h.
#define REPORT_LENGTH (16384) |
Definition at line 202 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_ALTITUDE (256) |
Bit mask to mark a struct bufr_subset_sequence_data having altitude.
Definition at line 122 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_COUNTRY (1024) |
Bit mask to mark a struct bufr_subset_sequence_data having country name.
Definition at line 134 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_DAY (8192) |
Bit mask to mark a struct bufr_subset_sequence_data having observation day in a month.
Definition at line 152 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_GUST (131072) |
Bit mask to mark a struct bufr_subset_sequence_data having wind gust observation other than 10 minutes.
Definition at line 176 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_GUST10 ( 2 * 131072) |
Bit mask to mark a struct bufr_subset_sequence_data having wind gust observation other than 10 minutes.
Definition at line 182 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_HOUR (16384) |
Bit mask to mark a struct bufr_subset_sequence_data having observation hour.
Definition at line 158 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_LATITUDE (64) |
Bit mask to mark a struct bufr_subset_sequence_data having latitude.
Definition at line 110 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_LONGITUDE (128) |
Bit mask to mark a struct bufr_subset_sequence_data having longitude.
Definition at line 116 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_MINUTE (32768) |
Bit mask to mark a struct bufr_subset_sequence_data having observation minute.
Definition at line 164 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_MONTH (4096) |
Bit mask to mark a struct bufr_subset_sequence_data having observation month.
Definition at line 146 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_NAME (512) |
Bit mask to mark a struct bufr_subset_sequence_data having station name.
Definition at line 128 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_NO_SIGNIFICANT_W1 (16) |
Bit mask to mark a struct bufr_subset_sequence_data without W1 information.
Definition at line 98 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_NO_SIGNIFICANT_W2 (32) |
Bit mask to mark a struct bufr_subset_sequence_data without W1 information.
Definition at line 104 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_NO_SIGNIFICANT_WW (8) |
Bit mask to mark a struct bufr_subset_sequence_data without WW information.
Definition at line 92 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_SECOND (65536) |
Bit mask to mark a struct bufr_subset_sequence_data having observation second.
Definition at line 170 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_TYPE_STATION (4) |
Bit mask to mark a struct bufr_subset_sequence_data having type station information.
Definition at line 86 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_WIGOS_ID ( 4 * 131072) |
Bit mask to mark if a subset has a WIGOS ID.
Definition at line 188 of file bufr2tac.h.
#define SUBSET_MASK_HAVE_YEAR (2048) |
Bit mask to mark a struct bufr_subset_sequence_data having observation year.
Definition at line 140 of file bufr2tac.h.
#define SUBSET_MASK_LATITUDE_SOUTH (1) |
Bit mask to mark a struct bufr_subset_sequence_data with south latitude.
Definition at line 74 of file bufr2tac.h.
#define SUBSET_MASK_LONGITUDE_WEST (2) |
Bit mask to mark a struct bufr_subset_sequence_data with west longitude.
Definition at line 80 of file bufr2tac.h.
char * adjust_string | ( | char * | s | ) |
Supress trailing blanks of a string.
s | string to process |
Definition at line 99 of file bufr2tac_utils.c.
Referenced by buoy_parse_x01(), climat_parse_x01(), syn_parse_x01(), and temp_parse_x01().
void bufr2tac_clean_buoy_chunks | ( | struct buoy_chunks * | b | ) |
cleans a buoy_chunks struct
b | pointer to the struct to clean |
Definition at line 178 of file bufr2tac_mrproper.c.
References clean_buoy_sec0(), clean_buoy_sec1(), clean_buoy_sec2(), clean_buoy_sec3(), clean_buoy_sec4(), clean_report_date_ext(), clean_wigos_id(), buoy_chunks::e, buoy_chunks::error, buoy_chunks::mask, buoy_chunks::s0, buoy_chunks::s1, buoy_chunks::s2, buoy_chunks::s3, buoy_chunks::s4, and buoy_chunks::wid.
Referenced by parse_subset_as_buoy().
void bufr2tac_clean_climat_chunks | ( | struct climat_chunks * | c | ) |
cleans a climat_chunks struct
c | pointer to the struct to clean |
Definition at line 262 of file bufr2tac_mrproper.c.
References clean_climat_old(), clean_climat_sec0(), clean_climat_sec1(), clean_climat_sec2(), clean_climat_sec3(), clean_climat_sec4(), clean_report_date_ext(), clean_wigos_id(), climat_chunks::e, climat_chunks::error, climat_chunks::mask, climat_chunks::o, climat_chunks::s0, climat_chunks::s1, climat_chunks::s2, climat_chunks::s3, climat_chunks::s4, and climat_chunks::wid.
Referenced by parse_subset_as_climat().
int bufr2tac_clean_error_stack | ( | struct bufr2tac_error_stack * | e | ) |
Definition at line 49 of file bufr2tac_error.c.
void bufr2tac_clean_metreport | ( | struct metreport * | m | ) |
Definition at line 276 of file bufr2tac_mrproper.c.
Referenced by bufrtotac_parse_subset_sequence().
void bufr2tac_clean_synop_chunks | ( | struct synop_chunks * | s | ) |
Definition at line 104 of file bufr2tac_mrproper.c.
References clean_report_date_ext(), clean_syn_sec0(), clean_syn_sec1(), clean_syn_sec2(), clean_syn_sec3(), clean_syn_sec5(), clean_wigos_id(), synop_sec1::dd, synop_chunks::e, synop_chunks::error, synop_sec1::ff, synop_sec1::h, synop_sec1::ir, synop_sec0::iw, synop_sec1::ix, synop_chunks::mask, synop_sec1::N, synop_chunks::s0, synop_chunks::s1, synop_chunks::s2, synop_chunks::s3, synop_chunks::s5, synop_sec1::VV, and synop_chunks::wid.
Referenced by parse_subset_as_synop().
void bufr2tac_clean_temp_chunks | ( | struct temp_chunks * | t | ) |
cleans a buoy_chunks struct
t | pointer to the struct to clean |
Definition at line 197 of file bufr2tac_mrproper.c.
Referenced by parse_subset_as_temp().
char * bufr2tac_get_version | ( | char * | version, |
size_t | dversion, | ||
char * | build, | ||
size_t | dbuild, | ||
char * | builder, | ||
size_t | dbuilder, | ||
int * | version_major, | ||
int * | version_minor, | ||
int * | version_patch | ||
) |
Definition at line 48 of file bufr2tac.c.
References VERSION.
Referenced by bufrtotac_print_version().
int bufr2tac_print_error | ( | struct bufr2tac_error_stack * | e | ) |
Definition at line 87 of file bufr2tac_error.c.
References bufr2tac_error::description, bufr2tac_error_stack::err, bufr2tac_error_stack::full, bufr2tac_error_stack::ne, and bufr2tac_error::severity.
Referenced by parse_subset_sequence().
int bufr2tac_push_error | ( | struct bufr2tac_error_stack * | e, |
int | severity, | ||
char * | description | ||
) |
Definition at line 26 of file bufr2tac_error.c.
References BUFR2TAC_ERROR_STACK_DIM, bufr2tac_error::description, bufr2tac_error_stack::err, bufr2tac_error_stack::full, bufr2tac_error_stack::ne, and bufr2tac_error::severity.
Referenced by bufr2tac_set_error().
int bufr2tac_set_debug_level | ( | int | level | ) |
Definition at line 93 of file bufr2tac.c.
References BUFR2TAC_DEBUG_LEVEL.
Referenced by bufrtotac_read_args().
int bufr2tac_set_error | ( | struct bufr2tac_subset_state * | s, |
int | severity, | ||
char * | origin, | ||
char * | explanation | ||
) |
Definition at line 59 of file bufr2tac_error.c.
References bufr2tac_subset_state::a, BUFR2TAC_ERROR_DESCRIPTION_LENGTH, bufr2tac_push_error(), bufr_atom_data::ctable, bufr_atom_data::cval, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::e, bufr_descriptor::f, bufr_atom_data::mask, bufr_atom_data::name, bufr_atom_data::val, bufr_descriptor::x, and bufr_descriptor::y.
Referenced by buoy_parse_x01(), buoy_parse_x02(), buoy_parse_x04(), buoy_parse_x05(), buoy_parse_x06(), buoy_parse_x07(), buoy_parse_x08(), buoy_parse_x10(), buoy_parse_x11(), buoy_parse_x12(), buoy_parse_x13(), buoy_parse_x14(), buoy_parse_x20(), buoy_parse_x22(), buoy_parse_x31(), buoy_parse_x33(), climat_parse_x01(), climat_parse_x02(), climat_parse_x04(), climat_parse_x05(), climat_parse_x06(), climat_parse_x07(), climat_parse_x08(), climat_parse_x10(), climat_parse_x11(), climat_parse_x12(), climat_parse_x13(), climat_parse_x14(), syn_parse_x01(), syn_parse_x02(), syn_parse_x04(), syn_parse_x05(), syn_parse_x06(), syn_parse_x07(), syn_parse_x08(), syn_parse_x10(), syn_parse_x11(), syn_parse_x12(), syn_parse_x13(), syn_parse_x14(), syn_parse_x20(), syn_parse_x22(), syn_parse_x31(), temp_parse_x01(), temp_parse_x02(), temp_parse_x04(), temp_parse_x05(), temp_parse_x06(), temp_parse_x07(), temp_parse_x08(), temp_parse_x10(), temp_parse_x11(), temp_parse_x12(), temp_parse_x20(), temp_parse_x22(), temp_parse_x31(), and temp_parse_x33().
int bufr_set_environment | ( | char * | default_bufrtables, |
char * | bufrtables_dir | ||
) |
set the environment vars needed to work properly with ECMWF bufrdc library
default_bufrtables | defaut bufr tables dir. ususally '/usr/local/lib/bufrtables/' |
bufrtables_dir | alternative char with bufr tables dir |
During decoding Bufr table path and the names are printed. If user doeas not want that, set: VARIABLE PRINT_TABLE_NAMES=false
During decoding code/flag tables could be read if code figure meaning is needed. If user want to use code and flag tables set: VARIABLE USE TABLE C=true
Then we set the proper environment here
Definition at line 41 of file bufr2tac_env.c.
int bufrex_ | ( | int * | , |
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
char ** | , | ||
char ** | , | ||
int * | , | ||
double * | , | ||
char ** | , | ||
int * | |||
) |
int buoy_parse_x01 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 01.
b | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 205 of file bufr2tac_x01.c.
References bufr2tac_subset_state::a, buoy_sec0::A1, adjust_string(), BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), buoy_sec0::bw, check_wigos_local_id(), bufr2tac_subset_state::country, bufr_atom_data::ctable, bufr_atom_data::cval, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, wigos_id::issue, wigos_id::issuer, bufr2tac_subset_state::ival, wigos_id::local_id, bufr_atom_data::mask, bufr2tac_subset_state::mask, bufr2tac_subset_state::name, buoy_sec0::nbnbnb, buoy_chunks::s0, wigos_id::series, SUBSET_MASK_HAVE_COUNTRY, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_WIGOS_ID, bufr_atom_data::val, buoy_chunks::wid, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x02 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 02.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 83 of file bufr2tac_x02.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), BUOY_SEC3, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::ival, buoy_sec0::iw, buoy_sec3::k2, buoy_sec3::k3, buoy_sec3::k6, bufr_atom_data::mask, bufr2tac_subset_state::mask, buoy_chunks::mask, buoy_chunks::s0, buoy_chunks::s3, SUBSET_MASK_HAVE_TYPE_STATION, bufr2tac_subset_state::type, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x04 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 04.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 254 of file bufr2tac_x04.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), report_date_ext::DD, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, buoy_chunks::e, report_date_ext::HH, bufr2tac_subset_state::i, bufr2tac_subset_state::itval, bufr2tac_subset_state::ival, bufr2tac_subset_state::jtval, bufr2tac_subset_state::k_itval, bufr2tac_subset_state::k_jtval, bufr_atom_data::mask, bufr2tac_subset_state::mask, report_date_ext::MM, report_date_ext::mm, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_MINUTE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_YEAR, bufr_descriptor::y, and report_date_ext::YYYY.
Referenced by parse_subset_as_buoy().
int buoy_parse_x05 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 05.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 134 of file bufr2tac_x05.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, buoy_sec0::LaLaLaLaLa, bufr2tac_subset_state::lat, bufr_atom_data::mask, bufr2tac_subset_state::mask, buoy_chunks::s0, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_LATITUDE_SOUTH, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x06 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 06.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 129 of file bufr2tac_x06.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, buoy_sec0::LoLoLoLoLoLo, bufr2tac_subset_state::lon, bufr_atom_data::mask, bufr2tac_subset_state::mask, buoy_chunks::s0, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_LONGITUDE_WEST, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x07 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 07.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 164 of file bufr2tac_x07.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr2tac_subset_state::deep, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::i, bufr2tac_subset_state::k_rep, bufr2tac_subset_state::layer, bufr_atom_data::mask, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x08 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 08.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 121 of file bufr2tac_x08.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::isq, bufr_atom_data::mask, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x10 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 10.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 161 of file bufr2tac_x10.c.
References bufr2tac_subset_state::a, buoy_sec1::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), BUOY_SEC1, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::ival, bufr_atom_data::mask, buoy_chunks::mask, pascal_to_ppp(), pascal_to_PPPP(), buoy_sec1::PoPoPoPo, buoy_sec1::ppp, buoy_sec1::PPPP, buoy_chunks::s1, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x11 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 11.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 387 of file bufr2tac_x11.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), BUOY_SEC1, buoy_sec1::dd, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, buoy_sec1::ff, buoy_sec1::fff, bufr2tac_subset_state::ival, buoy_sec0::iw, bufr_atom_data::mask, buoy_chunks::mask, buoy_chunks::s0, buoy_chunks::s1, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x12 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 12.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 466 of file bufr2tac_x12.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), BUOY_SEC1, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, kelvin_to_snTTT(), bufr_atom_data::mask, buoy_chunks::mask, buoy_chunks::s1, buoy_sec1::sn1, buoy_sec1::sn2, buoy_sec1::TdTdTd, buoy_sec1::TTT, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x13 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 13.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 877 of file bufr2tac_x13.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr_atom_data::mask, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x14 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 14.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 467 of file bufr2tac_x14.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr_atom_data::mask, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x20 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 20.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 1324 of file bufr2tac_x20.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr_atom_data::mask, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x22 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 22.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 148 of file bufr2tac_x22.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), BUOY_SEC2, BUOY_SEC3, b_sec3_layer2::dd, bufr2tac_subset_state::deep, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, buoy_sec2::HwaHwa, buoy_sec2::HwaHwaHwa, kelvin_to_snTTT(), kelvin_to_TTTT(), buoy_sec3::l1, buoy_sec3::l2, bufr2tac_subset_state::layer, bufr_atom_data::mask, buoy_chunks::mask, buoy_sec2::PwaPwa, buoy_sec2::PwaPwaPwa, buoy_chunks::s2, buoy_chunks::s3, buoy_sec2::sn, b_sec3_layer1::SSSS, b_sec3_layer1::TTTT, buoy_sec2::TwTwTw, bufr2tac_subset_state::val, bufr_descriptor::y, b_sec3_layer1::zzzz, and b_sec3_layer2::zzzz.
Referenced by parse_subset_as_buoy().
int buoy_parse_x31 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 31.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 81 of file bufr2tac_x31.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::i, bufr2tac_subset_state::ival, bufr2tac_subset_state::k_rep, bufr_atom_data::mask, bufr2tac_subset_state::rep, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_parse_x33 | ( | struct buoy_chunks * | b, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 33.
b | pointer to a struct buoy_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 34 of file bufr2tac_x33.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), BUOY_SEC1, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::ival, bufr_atom_data::mask, buoy_chunks::mask, buoy_sec0::QA, buoy_sec4::QA, buoy_sec1::Qd, buoy_sec2::Qd, buoy_sec0::Ql, buoy_sec4::QL, buoy_sec4::Qp, buoy_sec0::Qt, buoy_chunks::s0, buoy_chunks::s1, buoy_chunks::s2, buoy_chunks::s4, and bufr_descriptor::y.
Referenced by parse_subset_as_buoy().
int buoy_YYYYMMDDHHmm_to_JMMYYGGgg | ( | struct buoy_chunks * | b | ) |
Sets YYGG from YYYYMMDDHHmm extended group.
b | pointer to the target struct buoy_chunks |
Definition at line 31 of file bufr2tac_buoy.c.
References report_date_ext::DD, buoy_chunks::e, buoy_sec0::GG, buoy_sec0::gg, report_date_ext::HH, buoy_sec0::J, buoy_sec0::MM, report_date_ext::MM, report_date_ext::mm, buoy_chunks::s0, buoy_sec0::YY, and report_date_ext::YYYY.
Referenced by parse_subset_as_buoy().
int buprs0_ | ( | int * | ) |
int buprs1_ | ( | int * | ) |
int buprs3_ | ( | int * | , |
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
char ** | |||
) |
int buprt_ | ( | int * | , |
int * | , | ||
int * | , | ||
int * | , | ||
char ** | , | ||
char ** | , | ||
char ** | , | ||
int * | , | ||
double * | , | ||
int * | , | ||
int * | , | ||
int * | |||
) |
int bus012_ | ( | int * | , |
unsigned int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | , | ||
int * | |||
) |
int busel2_ | ( | int * | , |
int * | , | ||
int * | , | ||
char ** | , | ||
int * | , | ||
char ** | , | ||
char ** | , | ||
char ** | , | ||
int * | |||
) |
int busel_ | ( | int * | , |
int * | , | ||
int * | , | ||
int * | , | ||
int * | |||
) |
int buukey_ | ( | int * | , |
int * | , | ||
int * | , | ||
int * | , | ||
int * | |||
) |
char * charray_to_string | ( | char * | s, |
unsigned char * | buf, | ||
size_t | size | ||
) |
get a null termitated c-string from an array of unsigned chars
s | resulting string |
buf | pointer to first element in array |
size | number of chars in array |
Definition at line 85 of file bufr2tac_utils.c.
int check_date_from_future | ( | struct metreport * | m | ) |
Check a estructure metreport not from future.
m | pointer to a struct metreport to check about date and time |
It resturns 1 if date/time is from future, and likely wrong Returns 0 otherwise
Definition at line 292 of file bufr2tac_utils.c.
References metreport::t, and met_datetime::t.
Referenced by parse_subset_as_climat(), and parse_subset_as_synop().
int check_j_cm2 | ( | double | val | ) |
Check if a radiation value can be wrote in J/cm2 using up to 4 chars.
val | radiation value in J/m2 |
Returns 1 if success, 0 otherwise
Definition at line 45 of file bufr2tac_x14.c.
Referenced by syn_parse_x14().
int check_kj_m2 | ( | double | val | ) |
Check if a radiation value can be wrote in Kj/m2 using up to 4 chars.
val | radiation value in J/m2 |
Returns 1 if success, 0 otherwise
Definition at line 33 of file bufr2tac_x14.c.
Referenced by syn_parse_x14().
int climat_parse_x01 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 01.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 324 of file bufr2tac_x01.c.
References bufr2tac_subset_state::a, adjust_string(), BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), check_wigos_local_id(), bufr_atom_data::cval, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, climat_sec0::II, climat_sec0::iii, wigos_id::issue, wigos_id::issuer, bufr2tac_subset_state::ival, wigos_id::local_id, bufr_atom_data::mask, bufr2tac_subset_state::mask, bufr2tac_subset_state::name, climat_sec0::Reg, climat_chunks::s0, wigos_id::series, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_WIGOS_ID, climat_chunks::wid, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x02 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 02.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 146 of file bufr2tac_x02.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::ival, climat_sec4::iw, climat_sec4::iy, bufr_atom_data::mask, bufr2tac_subset_state::mask, climat_chunks::s4, SUBSET_MASK_HAVE_TYPE_STATION, bufr2tac_subset_state::type, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x04 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 04.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 405 of file bufr2tac_x04.c.
References bufr2tac_subset_state::a, bufr2tac_subset_state::a1, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC0, CLIMAT_SEC1, CLIMAT_SEC2, CLIMAT_SEC4, bufr2tac_subset_state::day, report_date_ext::DD, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::dift, climat_chunks::e, climat_sec4::GnGn, climat_sec4::GxGx, report_date_ext::HH, bufr2tac_subset_state::i, bufr2tac_subset_state::is_normal, bufr2tac_subset_state::isq_val, bufr2tac_subset_state::ival, climat_sec0::JJJ, bufr_atom_data::mask, bufr2tac_subset_state::mask, climat_chunks::mask, climat_sec0::MM, report_date_ext::MM, report_date_ext::mm, bufr2tac_subset_state::month, bufr2tac_subset_state::more_days, bufr2tac_subset_state::nday, climat_sec1::nrnr, climat_sec2::nrnr, climat_chunks::s0, climat_chunks::s1, climat_chunks::s2, climat_chunks::s4, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_MINUTE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_YEAR, bufr_atom_data::val, bufr_descriptor::x, bufr_descriptor::y, climat_sec2::YbYb, climat_sec2::YcYc, and report_date_ext::YYYY.
Referenced by parse_subset_as_climat().
int climat_parse_x05 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 05.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 170 of file bufr2tac_x05.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::lat, bufr_atom_data::mask, bufr2tac_subset_state::mask, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_LATITUDE_SOUTH, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x06 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 06.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 165 of file bufr2tac_x06.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::lon, bufr_atom_data::mask, bufr2tac_subset_state::mask, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_LONGITUDE_WEST, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x07 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Definition at line 208 of file bufr2tac_x07.c.
References bufr2tac_subset_state::a, bufr2tac_subset_state::alt, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr_atom_data::mask, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x08 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 08.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 164 of file bufr2tac_x08.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC1, CLIMAT_SEC2, CLIMAT_SEC3, CLIMAT_SEC4, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, climat_sec4::Dgr, climat_sec4::Dts, climat_sec3::f10, climat_sec3::f20, climat_sec3::f30, bufr2tac_subset_state::is_normal, bufr2tac_subset_state::isq, bufr2tac_subset_state::isq_val, bufr2tac_subset_state::ival, bufr_atom_data::mask, climat_chunks::mask, climat_sec1::meme, climat_sec1::mpmp, climat_sec1::mrmr, climat_sec1::msms, climat_sec1::mtmt, climat_sec1::mtn, climat_sec1::mtx, climat_sec3::R01, climat_sec3::R05, climat_sec3::R10, climat_sec3::R100, climat_sec3::R150, climat_sec3::R50, climat_sec3::s00, climat_sec3::s01, climat_chunks::s1, climat_sec3::s10, climat_chunks::s2, climat_chunks::s3, climat_chunks::s4, climat_sec3::s50, climat_sec3::T25, climat_sec3::T30, climat_sec3::T35, climat_sec3::T40, climat_sec3::Tn0, climat_sec3::Tx0, climat_sec3::V1, climat_sec3::V2, climat_sec3::V3, bufr_descriptor::y, climat_sec2::yeye, climat_sec2::ypyp, climat_sec2::yryr, climat_sec2::ysys, climat_sec2::ytxytx, and climat_sec2::ytyt.
Referenced by parse_subset_as_climat().
int climat_parse_x10 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 10.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 214 of file bufr2tac_x10.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC1, CLIMAT_SEC2, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::is_normal, bufr2tac_subset_state::isq_val, bufr2tac_subset_state::ival, bufr_atom_data::mask, climat_chunks::mask, pascal_to_PPPP(), climat_sec1::PoPoPoPo, climat_sec2::PoPoPoPo, climat_sec1::PPPP, climat_sec2::PPPP, climat_chunks::s1, climat_chunks::s2, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x11 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 11.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 454 of file bufr2tac_x11.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC4, bufr2tac_subset_state::day, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, climat_sec4::fxfxfx, bufr2tac_subset_state::isq_val, climat_sec4::iw, bufr_atom_data::mask, climat_chunks::mask, climat_chunks::s4, bufr2tac_subset_state::val, bufr_descriptor::y, and climat_sec4::yfx.
Referenced by parse_subset_as_climat().
int climat_parse_x12 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 12.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 526 of file bufr2tac_x12.c.
References bufr2tac_subset_state::a, bufr2tac_subset_state::a1, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC1, CLIMAT_SEC2, CLIMAT_SEC4, bufr2tac_subset_state::day, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::is_normal, bufr2tac_subset_state::isq_val, kelvin_to_snTTT(), bufr_atom_data::mask, climat_chunks::mask, bufr2tac_subset_state::more_days, climat_sec1::s, climat_sec2::s, climat_chunks::s1, climat_chunks::s2, climat_chunks::s4, climat_sec4::san, climat_sec4::sax, climat_sec1::sn, climat_sec2::sn, climat_sec4::sn, climat_sec1::ststst, climat_sec2::ststst, climat_sec1::sx, climat_sec2::sx, climat_sec4::sx, climat_sec4::Tan, climat_sec4::Tax, climat_sec4::Tnd, climat_sec1::TnTnTn, climat_sec2::TnTnTn, climat_sec1::TTT, climat_sec2::TTT, climat_sec4::Txd, climat_sec1::TxTxTx, climat_sec2::TxTxTx, bufr2tac_subset_state::val, bufr_descriptor::x, bufr_descriptor::y, climat_sec4::yan, climat_sec4::yax, climat_sec4::yn, and climat_sec4::yx.
Referenced by parse_subset_as_climat().
int climat_parse_x13 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 13.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 909 of file bufr2tac_x13.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC1, CLIMAT_SEC2, CLIMAT_SEC4, bufr2tac_subset_state::day, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, climat_sec1::eee, climat_sec2::eee, bufr2tac_subset_state::is_normal, bufr2tac_subset_state::ival, bufr_atom_data::mask, climat_chunks::mask, bufr2tac_subset_state::more_days, prec_to_RRRR(), prec_to_RxRxRxRx(), climat_sec1::R1R1R1R1, climat_sec2::R1R1R1R1, climat_sec1::Rd, climat_sec4::RxRxRxRx, climat_chunks::s1, climat_chunks::s2, climat_chunks::s4, bufr2tac_subset_state::val, bufr_descriptor::y, and climat_sec4::yr.
Referenced by parse_subset_as_climat().
int climat_parse_x14 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 14.
c | pointer to a struct climat_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 497 of file bufr2tac_x14.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), CLIMAT_SEC1, CLIMAT_SEC2, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::is_normal, bufr2tac_subset_state::ival, bufr_atom_data::mask, climat_chunks::mask, climat_sec1::pspsps, climat_chunks::s1, climat_sec1::S1S1S1, climat_sec2::S1S1S1, climat_chunks::s2, and bufr_descriptor::y.
Referenced by parse_subset_as_climat().
int climat_parse_x20 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
int climat_parse_x22 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
int climat_parse_x31 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
int climat_parse_x33 | ( | struct climat_chunks * | c, |
struct bufr2tac_subset_state * | s | ||
) |
int descriptor_to_integer | ( | int * | id, |
struct bufr_descriptor * | d | ||
) |
parse a descriptor and sets an integer in the decimal formas fxxyyy
id | pointer to target integer |
d | pointer to a struct bufr_descriptor with the source |
Definition at line 58 of file bufr2tac_utils.c.
References bufr_descriptor::f, bufr_descriptor::x, and bufr_descriptor::y.
Referenced by bufrtotac_parse_subset_sequence().
char * dewpoint_depression_to_DnDn | ( | char * | target, |
double | T, | ||
double | Td | ||
) |
Set DnDn (dewpoint depression)
target | string to set as result |
T | temperature (Kelvin) |
Td | dewpoint (Kelvin) |
Definition at line 179 of file bufr2tac_x12.c.
References MISSING_REAL.
Referenced by parse_temp_raw_data().
int find_descriptor | ( | int * | haystack, |
size_t | nlst, | ||
int | needle | ||
) |
Try to find a descriptor in an array.
haystack | array of integers as descriptors |
nlst | number of descriptors in array |
needle | descriptor to find |
it returns 1 if found, 0 otherwise.
Definition at line 35 of file bufr2tac_sqparse.c.
Referenced by parse_subset_sequence().
int find_descriptor_interval | ( | int * | haystack, |
size_t | nlst, | ||
int | needlemin, | ||
int | needlemax | ||
) |
Definition at line 59 of file bufr2tac_sqparse.c.
Referenced by parse_subset_sequence().
char * get_ecmwf_tablename | ( | char * | target, |
char | type, | ||
char * | bufrtables_dir, | ||
int | ksec1[40] | ||
) |
Get the complete pathname of a table file needed by a bufr message.
target | the resulting name |
type | a char with type, i.e, 'B', 'C', or 'D' |
bufrtables_dir | string with path to bufr file tables dir |
ksec1 | array of integer processed prevoiously by ecmwf bufr library In ECMWF library the name of a table file is Kssswwwwwxxxxxyyyzzz.TXT , where
|
If standard WMO tables are used, the Originating centre xxxxx will be set to
Definition at line 43 of file bufr2tac_tablec.c.
Referenced by read_table_c().
char * get_explained_flag_val | ( | char * | expl, |
size_t | dim, | ||
char | tablec[MAXLINES_TABLEC][92], | ||
size_t | nlines_tablec, | ||
struct bufr_descriptor * | d, | ||
unsigned long | ival | ||
) |
Definition at line 181 of file bufr2tac_tablec.c.
References bufr_descriptor::c.
char * get_explained_table_val | ( | char * | expl, |
size_t | dim, | ||
char | tablec[MAXLINES_TABLEC][92], | ||
size_t | nlines_tablec, | ||
struct bufr_descriptor * | d, | ||
int | ival | ||
) |
Definition at line 103 of file bufr2tac_tablec.c.
References bufr_descriptor::c.
char * grad_to_D | ( | char * | D, |
double | grad | ||
) |
Converts true direction in grads to D (code table 0700)
grad | the true direction (degrees) |
D | the resulting code |
Definition at line 32 of file bufr2tac_x05.c.
Referenced by syn_parse_x05(), and syn_parse_x20().
char * grad_to_ec | ( | char * | target, |
double | grad | ||
) |
Converts elevation in grads to ec (code table 1004)
grad | the elevation angle (degrees) |
target | the resulting code |
Definition at line 32 of file bufr2tac_x07.c.
Referenced by syn_parse_x07().
int guess_gts_header | ( | struct gts_header * | h, |
const char * | f | ||
) |
Guess the WMO GTS header from filename.
h | pointer to a struct gts_header where to set the results |
f | pathname of bufrfile |
It returns 1 if guessed, 0 otherwise
This routine assume the filename format of a bufr file is YYYYMMDDHHmmss_BULLNN_ICAO_YYGGgg_ORD.bufr where YYYYMMDDHHmmss is the timestamp (UTC) of the file in GTS (as example, in NOAA gateway) BULLNN is the bulletin identifier in GTS. It is a six chars lenght in the form T1 T2 A1 A2 N1 N2 For observations, T1 is 'I' Possible values of T2 for T1 = 'I' are O Oceanographic/limnographic (water properties) P Pictorial S Surface/sea level T Text (plain language information) U Upper air X Other data types Z Mixed data types For T1T2 = 'IS' Then A1: IS A 01–29 Routinely scheduled observations for n/a 000/006 distribution from automatic (fixed or mobile) land stations (e.g. 0000, 0100, … or 0220, 0240, 0300, …, or 0715, 0745, ... UTC) IS A 30–59 N-minute observations from automatic (fixed n/a 000/007 or mobile) land stations IS B Radar reports (parts A and B) RADOB 006/003 IS C 01–45 Climatic observations from land stations CLIMAT 000/020 IS C 46–59 Climatic observations from marine stations CLIMAT SHIP 001/0202009 edition ATTACHmENT II-5 I IS D Radiological observation RADREP 010/001 IS E Ozone measurement at surface n/a 008/000 IS F Source of atmospherics SFAZI, SFLOC, SFAZU 000/030 IS I 01–45 Intermediate synoptic observations from fixed SYNOP (SIxx) 000/001 land stations 000/051 IS I 46–59 Intermediate synoptic observations from mobile SYNOP mOBIL 000/004 land stations IS M 01–45 Main synoptic observations from fixed land SYNOP (SMxx) 000/002 stations 000/052 IS M 46–59 Main synoptic observations from mobile land SYNOP mOBIL 000/005 stations IS N 01–45 Synoptic observations from fixed land stations SYNOP (SNxx) 000/000 at non-standard time (i.e. 0100, 0200, 0400, 000/050 0500, ... UTC) IS N 46–59 Synoptic observations from mobile land stations SYNOP mOBIL 000/003 at non-standard time (i.e. 0100, 0200, 0400, 0500, ... UTC) IS R Hydrologic reports HYDRA 000/040 IS S 01–19 Synoptic observations from marine stations SHIP 001/000 IS S 20–39 One-hour observations from automatic marine n/a 001/006 stations IS S 40–59 N-minute observations from automatic marine n/a 001/007 stations IS T 01–19 Tide gauge observations n/a 001/030 IS T 20–39 Observed water level time series n/a 001/031 IS V Special aeronautical observations (SPECI) SPECI 000/011 IS W Aviation routine weather observations (mETAR) mETAR 000/010 IS X Other surface data IAC, IAC FLEET For T1T2 = 'IU' then A1: IU A Single level aircraft reports (automatic) AmDAR 004/000 IU A Single level aircraft reports (manual) AIREP/PIREP 004/001 IU B Single level balloon reports n/a IU C (used for single level satellite-derived SAREP/SATOB 005/000 reports – see Note 3) IU D Dropsonde/Dropwindsondes TEmP DROP 002/007 IU E Ozone vertical sounding n/a 008/001 IU I Dispersal and transport analysis n/a 009/000 IU J 01–19 Upper wind from fixed land stations (entire PILOT (parts A, 002/001 sounding) B, C, D) IU J 20–39 Upper wind from mobile land stations (entire PILOT mOBIL 002/003 sounding) (parts A, B, C, D) IU J 40–59 Upper wind from marine stations (entire PILOT SHIP 002/002 sounding) (parts A, B, C, D) IU K 01–19 Radio soundings from fixed land stations TEmP (parts A, B) 002/004 (up to 100 hPa) IU K 20–39 Radio soundings from mobile land stations TEmP mOBIL 002/006 (up to 100 hPa) (parts A, B) IU K 40–59 Radio soundings from marine stations TEmP SHIP (parts A, B) 002/005 (up to 100 hPa) IU M Model derived sondes IU N Rocketsondes IU O Profiles of aircraft observations in ascending/ AmDAR 002/020 descending IU P Profilers PILOT 002/010 IU Q RASS temperature profilers TEmP 002/011 IU R (used for radiance data – see Note 3) IU S 01–19 Radiosondes/pibal reports from fixed land TEmP (parts A, B, C, D) 002/004 stations (entire sounding) IU S 20–39 Radio soundings from mobile land stations TEmP mOBIL (parts A, 002/006 (entire sounding) B, C, D) IU S 40–59 Radio soundings from marine stations TEmP SHIP (parts A, 002/005 (entire sounding) B, C, D) IU T (used for satellite-derived sondes – see Note 3) SATEm, SARAD, SATOB IU U 01–45 Monthly statistics of data from upper-air stations CLImAT TEmP 002/025 IU U 46–59 Monthly statistics of data from marine stations CLImAT TEmP, SHIP 002/026 IU W 01–19 Upper wind from fixed land stations (up to PILOT (parts A, B) 002/001 100 hPa) IU W 20–39 Upper wind from mobile land stations (up to PILOT mOBIL 002/003 100 hPa) (parts A, B) IU W 40–59 Upper wind from marine stations (up to PILOT SHIP 002/002 100 hPa) (parts A, B) IU X Other upper-air reports for T1T2 = 'IO' then A1: IO B Buoy observations BUOY 001/025 IO I Sea ice IO P Sub-surface profiling floats TESAC 031/004 IO R Sea surface observations TRACKOB 031/001 IO S Sea surface and below soundings BATHY, TESAC 031/005 IO T Sea surface temperature IO W Sea surface waves WAVEOB 031/002 IO X Other sea environmental About A2 A 0 - 90W northern hemisphere B 90W - 180 northern hemisphere C 180 - 90E northern hemisphere D 90E - 0 northern hemisphere E 0 - 90W tropical belt F 90W - 180 tropical belt G 180 - 90E tropical belt H 90E - 0 tropical belt I 0 - 90W southern hemisphere J 90W - 180 southern hemisphere K 180 - 90E southern hemisphere L 90E - 0 southern hemisphere M Lower left 10S 100E/upper right 70N 110W N Northern hemisphere P Area between 64.69N - 136.76W, 55.61N - 13.43W 64.69N - 156.76W, 55.61N - 33.43W S Southern hemisphere T 45W - 180 northern hemisphere U Area between 21.0N - 128.1W, 36.0N - 130.9W 21.1N - 113.0W, 36.2N - 110.5W V Area between 30.3N - 83.7W, 51.0N - 68.9W 19.8N - 64.5W, 33.3N - 47.1W X Global Area (area not definable) ICAO is the ICAO index for release center. YYGGgg is the nominal release time (day, hour, minute) UTC ORD is the order sequence as RRA, RRB, CCA .... is optional
Definition at line 466 of file bufr2tac_utils.c.
References gts_header::bname, gts_header::center, gts_header::dtrel, gts_header::filename, gts_header::order, gts_header::timestamp, and tokenize_string().
Referenced by main().
char * guess_WMO_region | ( | char * | A1, |
char * | Reg, | ||
const char * | II, | ||
const char * | iii | ||
) |
get WMO region A1 and Reg items from II and iii (WMO index)
A1 | string woth resulting A1 |
Reg | string with resulting Reg |
II | WMO block number |
iii | WMO number |
Definition at line 211 of file bufr2tac_utils.c.
Referenced by guess_WMO_region_synop(), guess_WMO_region_temp(), and syn_parse_x01().
char * guess_WMO_region_synop | ( | struct synop_chunks * | syn | ) |
Try to find WMO region if it is not already set and WMO Block and number index are known.
syn | pointer to the struct synop_chunks with all known data for a synop |
It returns a pointer to the string with WMO region
Definition at line 93 of file bufr2tac_synop.c.
References synop_sec0::A1, guess_WMO_region(), synop_sec0::II, synop_sec0::iii, synop_sec0::Reg, and synop_chunks::s0.
char * guess_WMO_region_temp | ( | struct temp_chunks * | temp | ) |
Definition at line 34 of file bufr2tac_temp.c.
References temp_chunks::a, temp_acd_sec1::A1, temp_b_sec1::A1, temp_chunks::b, temp_chunks::c, temp_chunks::d, guess_WMO_region(), temp_acd_sec1::II, temp_acd_sec1::iii, temp_acd_sec1::Reg, temp_b_sec1::Reg, temp_a::s1, temp_b::s1, temp_c::s1, and temp_d::s1.
int hour_rounded | ( | struct synop_chunks * | syn | ) |
Get the rounded hour of a given date.
syn | pointer to the synop_chunks struct |
It returns the rounded hour if >= 0. If < 0 problems
Definition at line 78 of file bufr2tac_x04.c.
References report_date_ext::DD, synop_chunks::e, report_date_ext::HH, report_date_ext::MM, report_date_ext::mm, and report_date_ext::YYYY.
Referenced by syn_parse_x13().
int integer_to_descriptor | ( | struct bufr_descriptor * | d, |
int | id | ||
) |
parse an integer with a descriptor fom bufr ECWMF libary
d | pointer to a struct bufr_descriptor where to set the result on output |
id | integer with the descriptor from ewcwf |
Definition at line 41 of file bufr2tac_utils.c.
References bufr_descriptor::c, bufr_descriptor::f, bufr_descriptor::x, and bufr_descriptor::y.
char * kelvin_to_snTT | ( | char * | target, |
double | T | ||
) |
converts a kelvin temperature value into a snTT string
T | the temperature ( Kelvin ) |
target | string with the result |
Definition at line 69 of file bufr2tac_x12.c.
Referenced by syn_parse_x12().
char * kelvin_to_snTTT | ( | char * | target, |
double | T | ||
) |
converts a kelvin temperature value into a snTTT string
T | the temperature ( Kelvin ) |
target | string with the result |
Definition at line 32 of file bufr2tac_x12.c.
Referenced by buoy_parse_x12(), buoy_parse_x22(), climat_parse_x12(), syn_parse_x12(), syn_parse_x22(), and temp_parse_x22().
char * kelvin_to_TT | ( | char * | target, |
double | T | ||
) |
converts a kelvin temperature value into a TT string
T | the temperature ( Kelvin ) |
target | string with the result |
Definition at line 96 of file bufr2tac_x12.c.
Referenced by syn_parse_x12().
char * kelvin_to_TTTa | ( | char * | target, |
double | T | ||
) |
Set temperature TTTa.
target | result as string |
T | temperature (kelvin) |
Definition at line 147 of file bufr2tac_x12.c.
References MISSING_REAL.
Referenced by parse_temp_raw_data().
char * kelvin_to_TTTT | ( | char * | target, |
double | T | ||
) |
converts a kelvin temperature value into a TTTT string
T | the temperature ( Kelvin ) |
target | string with the result |
Definition at line 123 of file bufr2tac_x12.c.
Referenced by buoy_parse_x22().
char * latlon_to_MMM | ( | char * | target, |
double | lat, | ||
double | lon | ||
) |
convert latitude and longitude to a MMM string
lat | latitude (degree, N positive) |
lon | longitude (degree, E positive) |
target | resulting MMM string |
Definition at line 34 of file bufr2tac_x06.c.
Referenced by syn_parse_x05(), syn_parse_x06(), temp_parse_x05(), and temp_parse_x06().
char * m_to_9h | ( | char * | target, |
double | h | ||
) |
converts the altitude of cloud layer into 9h string code
h | the altitude in meters |
target | the resulting 9x coded string |
Definition at line 135 of file bufr2tac_x20.c.
Referenced by syn_parse_x20().
char * m_to_h | ( | char * | target, |
double | h | ||
) |
converts the altitude of cloud layer into h string code
h | the altitude in meters |
target | the resulting h coded string |
Definition at line 83 of file bufr2tac_x20.c.
Referenced by syn_parse_x20(), and temp_parse_x20().
char * m_to_hh | ( | char * | target, |
double | h | ||
) |
converts the altitude of cloud layer into hh string code
h | the altitude in meters |
target | the resulting h coded string |
Definition at line 188 of file bufr2tac_x20.c.
Referenced by syn_parse_x20().
char * m_to_RR | ( | char * | target, |
double | m | ||
) |
Convert distance (m) in RR code (3570)
m | the distance/diameter (m) |
target | the resulting RR string |
Definition at line 261 of file bufr2tac_x20.c.
Referenced by syn_parse_x20().
char * met_datetime_to_YYGG | ( | char * | target, |
struct met_datetime * | t | ||
) |
Get YYGG from a struct met_datetime.
target | string with result as output |
t | pointer to source struct met_datetime |
Definition at line 180 of file bufr2tac_utils.c.
References met_datetime::t.
Referenced by parse_subset_as_temp().
int parse_subset_as_buoy | ( | struct metreport * | m, |
struct bufr2tac_subset_state * | s, | ||
struct bufr_subset_sequence_data * | sq, | ||
char * | err | ||
) |
Definition at line 74 of file bufr2tac_buoy.c.
References bufr2tac_subset_state::a, bufr2tac_subset_state::a1, buoy_sec0::A1, bufr2tac_subset_state::alt, met_geo::alt, bufr2tac_clean_buoy_chunks(), metreport::buoy, BUOY_EXT, buoy_parse_x01(), buoy_parse_x02(), buoy_parse_x04(), buoy_parse_x05(), buoy_parse_x06(), buoy_parse_x07(), buoy_parse_x08(), buoy_parse_x10(), buoy_parse_x11(), buoy_parse_x12(), buoy_parse_x13(), buoy_parse_x14(), buoy_parse_x20(), buoy_parse_x22(), buoy_parse_x31(), buoy_parse_x33(), BUOY_SEC0, buoy_YYYYMMDDHHmm_to_JMMYYGGgg(), buoy_sec0::bw, report_date_ext::DD, DESCRIPTOR_VALUE_MISSING, buoy_chunks::e, buoy_sec1::ff, metreport::g, report_date_ext::HH, bufr2tac_subset_state::i, met_geo::index, bufr2tac_subset_state::isq, bufr2tac_subset_state::ival, buoy_sec0::iw, buoy_sec3::k2, buoy_sec3::k3, buoy_sec3::k6, buoy_sec0::LaLaLaLaLa, bufr2tac_subset_state::lat, met_geo::lat, buoy_sec0::LoLoLoLoLoLo, bufr2tac_subset_state::lon, met_geo::lon, bufr2tac_subset_state::mask, buoy_chunks::mask, buoy_sec0::MiMi, buoy_sec0::MjMj, report_date_ext::MM, report_date_ext::mm, bufr2tac_subset_state::name, met_geo::name, buoy_sec0::nbnbnb, buoy_sec0::Qc, buoy_sec1::Qd, buoy_sec2::Qd, buoy_sec3::Qd1, buoy_sec3::Qd2, buoy_sec1::Qx, buoy_sec2::Qx, buoy_chunks::s0, buoy_chunks::s1, buoy_chunks::s2, buoy_chunks::s3, SUBSET_MASK_HAVE_ALTITUDE, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_YEAR, SUBSET_MASK_LATITUDE_SOUTH, SUBSET_MASK_LONGITUDE_WEST, metreport::t, bufr2tac_subset_state::type_report, bufr2tac_subset_state::val, met_geo::wid, buoy_chunks::wid, report_date_ext::YYYY, and YYYYMMDDHHmm_to_met_datetime().
Referenced by parse_subset_sequence().
int parse_subset_as_climat | ( | struct metreport * | m, |
struct bufr2tac_subset_state * | s, | ||
struct bufr_subset_sequence_data * | sq, | ||
char * | err | ||
) |
Definition at line 38 of file bufr2tac_climat.c.
References bufr2tac_subset_state::a, bufr2tac_subset_state::a1, bufr2tac_subset_state::alt, met_geo::alt, bufr2tac_clean_climat_chunks(), check_date_from_future(), metreport::climat, climat_parse_x01(), climat_parse_x02(), climat_parse_x04(), climat_parse_x05(), climat_parse_x06(), climat_parse_x07(), climat_parse_x08(), climat_parse_x10(), climat_parse_x11(), climat_parse_x12(), climat_parse_x13(), climat_parse_x14(), bufr2tac_subset_state::country, met_geo::country, report_date_ext::DD, climat_chunks::e, metreport::g, report_date_ext::HH, bufr2tac_subset_state::i, climat_sec0::II, climat_sec0::iii, met_geo::index, bufr2tac_subset_state::ival, bufr2tac_subset_state::lat, met_geo::lat, bufr2tac_subset_state::lon, met_geo::lon, bufr2tac_subset_state::mask, report_date_ext::MM, report_date_ext::mm, bufr2tac_subset_state::name, met_geo::name, climat_chunks::s0, SUBSET_MASK_HAVE_ALTITUDE, SUBSET_MASK_HAVE_COUNTRY, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_HAVE_NAME, metreport::t, metreport::type, bufr2tac_subset_state::type_report, bufr2tac_subset_state::val, met_geo::wid, climat_chunks::wid, report_date_ext::YYYY, and YYYYMMDDHHmm_to_met_datetime().
Referenced by parse_subset_sequence().
int parse_subset_as_synop | ( | struct metreport * | m, |
struct bufr2tac_subset_state * | s, | ||
struct bufr_subset_sequence_data * | sq, | ||
char * | err | ||
) |
parses a subset sequence as an Land fixed SYNOP FM-12, SHIP FM-13 or SYNOP-mobil FM-14 report
m | pointer to a struct metreport where set some results |
s | pointer to a struct bufr2tac_subset_state |
sq | pointer to a struct bufr_subset_sequence_data with the parsed sequence on input |
err | string with detected errors, if any |
It return 0 if all is OK. Otherwise returns 1 and it also fills the err string
Definition at line 119 of file bufr2tac_synop.c.
References bufr2tac_subset_state::a, bufr2tac_subset_state::a1, bufr2tac_subset_state::alt, met_geo::alt, bufr2tac_clean_synop_chunks(), check_date_from_future(), bufr2tac_subset_state::country, met_geo::country, synop_sec0::D_D, report_date_ext::DD, synop_chunks::e, synop_sec1::ff, metreport::g, synop_sec1::GG, synop_sec1::gg, report_date_ext::HH, bufr2tac_subset_state::i, synop_sec0::II, synop_sec0::iii, synop_sec0::IIIII, met_geo::index, synop_sec1::ir, bufr2tac_subset_state::isq, wigos_id::issue, wigos_id::issuer, bufr2tac_subset_state::ival, synop_sec0::iw, synop_sec1::ix, synop_sec3::j5, synop_sec3::j524, bufr2tac_subset_state::lat, met_geo::lat, wigos_id::local_id, bufr2tac_subset_state::lon, met_geo::lon, bufr2tac_subset_state::mask, synop_chunks::mask, synop_sec0::MiMi, synop_sec0::MjMj, report_date_ext::MM, report_date_ext::mm, bufr2tac_subset_state::name, met_geo::name, synop_sec1::RRR, synop_sec3::RRR, synop_sec3::RRRR24, synop_chunks::s0, synop_chunks::s1, synop_chunks::s3, synop_sec3::SS, synop_sec3::SSS, SUBSET_MASK_HAVE_ALTITUDE, SUBSET_MASK_HAVE_COUNTRY, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_HAVE_MINUTE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_NO_SIGNIFICANT_W1, SUBSET_MASK_HAVE_NO_SIGNIFICANT_W2, SUBSET_MASK_HAVE_NO_SIGNIFICANT_WW, SUBSET_MASK_HAVE_TYPE_STATION, SUBSET_MASK_HAVE_WIGOS_ID, SUBSET_MASK_HAVE_YEAR, syn_parse_x01(), syn_parse_x02(), syn_parse_x04(), syn_parse_x05(), syn_parse_x06(), syn_parse_x07(), syn_parse_x08(), syn_parse_x10(), syn_parse_x11(), syn_parse_x12(), syn_parse_x13(), syn_parse_x14(), syn_parse_x20(), syn_parse_x22(), syn_parse_x31(), metreport::synop, SYNOP_BUFR, SYNOP_EXT, SYNOP_SEC3, synop_YYYYMMDDHHmm_to_YYGG(), metreport::t, bufr2tac_subset_state::type, metreport::type, bufr2tac_subset_state::type_report, bufr2tac_subset_state::val, synop_sec1::W1, synop_sec1::W2, met_geo::wid, synop_chunks::wid, synop_sec1::ww, report_date_ext::YYYY, and YYYYMMDDHHmm_to_met_datetime().
Referenced by parse_subset_sequence().
int parse_subset_as_temp | ( | struct metreport * | m, |
struct bufr2tac_subset_state * | s, | ||
struct bufr_subset_sequence_data * | sq, | ||
char * | err | ||
) |
Definition at line 75 of file bufr2tac_temp.c.
References bufr2tac_subset_state::a, temp_chunks::a, bufr2tac_subset_state::a1, bufr2tac_subset_state::alt, met_geo::alt, temp_chunks::b, bufr2tac_clean_temp_chunks(), temp_chunks::c, bufr2tac_subset_state::country, met_geo::country, temp_chunks::d, temp_acd_sec1::D_D, report_date_ext::DD, temp_a::e, metreport::g, temp_acd_sec1::h0h0h0h0, report_date_ext::HH, bufr2tac_subset_state::i, temp_acd_sec1::II, temp_acd_sec1::iii, temp_acd_sec1::IIIII, met_geo::index, bufr2tac_subset_state::ival, bufr2tac_subset_state::lat, met_geo::lat, bufr2tac_subset_state::lon, met_geo::lon, bufr2tac_subset_state::mask, met_datetime_to_YYGG(), temp_acd_sec1::MiMi, temp_b_sec1::MiMi, temp_acd_sec1::MjMj, temp_b_sec1::MjMj, report_date_ext::MM, report_date_ext::mm, bufr2tac_subset_state::name, met_geo::name, parse_temp_raw_data(), parse_temp_raw_wind_shear_data(), bufr2tac_subset_state::r, round_met_datetime_to_hour(), temp_a::s1, temp_b::s1, temp_c::s1, temp_d::s1, report_date_ext::ss, SUBSET_MASK_HAVE_ALTITUDE, SUBSET_MASK_HAVE_COUNTRY, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_HAVE_MINUTE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_YEAR, metreport::t, temp_chunks::t, metreport::temp, temp_parse_x01(), temp_parse_x02(), temp_parse_x04(), temp_parse_x05(), temp_parse_x06(), temp_parse_x07(), temp_parse_x08(), temp_parse_x10(), temp_parse_x11(), temp_parse_x12(), temp_parse_x20(), temp_parse_x22(), temp_parse_x31(), temp_parse_x33(), metreport::type, metreport::type2, metreport::type3, metreport::type4, bufr2tac_subset_state::type_report, temp_acd_sec1::Ula, bufr2tac_subset_state::val, bufr2tac_subset_state::w, met_geo::wid, temp_chunks::wid, temp_acd_sec1::YYGG, temp_b_sec1::YYGG, report_date_ext::YYYY, and YYYYMMDDHHmm_to_met_datetime().
Referenced by parse_subset_sequence().
int parse_subset_sequence | ( | struct metreport * | m, |
struct bufr_subset_sequence_data * | sq, | ||
struct bufr2tac_subset_state * | st, | ||
int * | kdtlst, | ||
size_t | nlst, | ||
int * | ksec1, | ||
char * | err | ||
) |
Parse a sequence of expanded descriptors for a subset.
m | pointer to a struct metreport where to set the data |
sq | pointer to a struct bufr_subset_sequence_data where the values for sequence of descriptors for a subset has been decoded |
st | pointer to a struct bufr2tac_subset_state |
kdtlst | array of integers with descriptors |
nlst | number of descriptors in kdtlst |
ksec1 | array of auxiliar integers decoded by bufrdc ECMWF library |
err | string where to write errors if any |
Definition at line 81 of file bufr2tac_sqparse.c.
References BUFR2TAC_DEBUG_LEVEL, bufr2tac_print_error(), bufr2tac_subset_state::e, find_descriptor(), find_descriptor_interval(), parse_subset_as_buoy(), parse_subset_as_climat(), parse_subset_as_synop(), parse_subset_as_temp(), print_buoy_report(), print_climat_report(), print_synop_report(), print_temp_report(), and bufr2tac_subset_state::type_report.
Referenced by bufrtotac_parse_subset_sequence().
int parse_temp_raw_data | ( | struct temp_chunks * | t, |
struct temp_raw_data * | r | ||
) |
parse a struct temp_raw_data to fill chunks in a struct temp_chunks
Definition at line 403 of file bufr2tac_temp.c.
References temp_chunks::a, temp_chunks::b, temp_chunks::c, temp_chunks::d, temp_raw_point_data::dd, dewpoint_depression_to_DnDn(), temp_max_wind_data::dmdmfmfmfm, temp_main_level_data::DnDn, temp_std_level_data::DnDn, temp_th_point::DnDn, temp_main_level_data::dndnfnfnfn, temp_std_level_data::dndnfnfnfn, temp_wind_point::dndnfnfnfn, temp_raw_point_data::ff, temp_raw_point_data::flags, temp_raw_point_data::h, temp_std_level_data::hnhnhn, temp_acd_sec1::id, kelvin_to_TTTa(), temp_a_sec2::lev0, temp_a::mask, temp_b::mask, temp_c::mask, temp_d::mask, MISSING_REAL, temp_raw_data::n, temp_a_sec2::n, temp_c_sec2::n, temp_ac_sec3::n, temp_ac_sec4::n, temp_bd_sec5::n, temp_bd_sec6::n, temp_th_point::nini, temp_wind_point::nini, temp_max_wind_data::no_last_wind, temp_raw_point_data::p, pascal_to_pnpnpn(), temp_max_wind_data::PmPmPm, temp_std_level_data::PnPn, temp_main_level_data::PnPnPn, temp_th_point::PnPnPn, temp_wind_point::PnPnPn, temp_raw_data::raw, temp_a::s1, temp_c::s1, temp_a::s2, temp_c::s2, temp_a::s3, temp_c::s3, temp_a::s4, temp_c::s4, temp_b::s5, temp_d::s5, temp_b::s6, temp_d::s6, temp_a_sec2::std, temp_c_sec2::std, temp_raw_point_data::T, temp_raw_point_data::Td, TEMP_NMAX_POINTS, TEMP_NMAXWIND_MAX, TEMP_NSTAND_MAX, TEMP_NTROP_MAX, TEMP_POINT_MASK_MAXIMUM_WIND_LEVEL, TEMP_POINT_MASK_SIGNIFICANT_HUMIDITY_LEVEL, TEMP_POINT_MASK_SIGNIFICANT_TEMPERATURE_LEVEL, TEMP_POINT_MASK_SIGNIFICANT_WIND_LEVEL, TEMP_POINT_MASK_STANDARD_LEVEL, TEMP_POINT_MASK_SURFACE, TEMP_POINT_MASK_TROPOPAUSE_LEVEL, TEMP_SEC_2, TEMP_SEC_3, TEMP_SEC_4, TEMP_SEC_5, TEMP_SEC_6, temp_bd_sec5::th, temp_main_level_data::TnTnTan, temp_std_level_data::TnTnTan, temp_th_point::TnTnTan, temp_ac_sec3::trop, temp_bd_sec6::wd, wind_to_dndnfnfnfn(), and temp_ac_sec4::windx.
Referenced by parse_subset_as_temp().
int parse_temp_raw_wind_shear_data | ( | struct temp_chunks * | t, |
struct temp_raw_wind_shear_data * | w | ||
) |
Definition at line 757 of file bufr2tac_temp.c.
References temp_chunks::a, temp_chunks::c, MISSING_REAL, temp_raw_wind_shear_data::n, temp_ac_sec4::n, temp_raw_wind_shear_point::p, temp_max_wind_data::PmPmPm, temp_raw_wind_shear_data::raw, temp_a::s4, temp_c::s4, temp_max_wind_data::vava, temp_max_wind_data::vbvb, temp_ac_sec4::windx, temp_raw_wind_shear_point::ws_abv, and temp_raw_wind_shear_point::ws_blw.
Referenced by parse_subset_as_temp().
char * pascal_to_pnpnpn | ( | char * | target, |
double | P | ||
) |
Definition at line 47 of file bufr2tac_x10.c.
Referenced by parse_temp_raw_data().
char * pascal_to_ppp | ( | char * | target, |
double | P | ||
) |
Converts pascal values (variation) into a ppp string.
P | the pressure variation in Pascal units |
target | string with the result |
Definition at line 32 of file bufr2tac_x10.c.
Referenced by buoy_parse_x10(), and syn_parse_x10().
char * pascal_to_PPPP | ( | char * | target, |
double | P | ||
) |
Converts pascal values into a PPPP string.
P | the pressure variation in Pascal units |
target | string with the result |
Definition at line 69 of file bufr2tac_x10.c.
Referenced by buoy_parse_x10(), climat_parse_x10(), and syn_parse_x10().
char * percent_to_okta | ( | char * | target, |
double | perc | ||
) |
Converts percent cloud cover into okta.
perc | the precent cloud cover |
target | the resulting okta string |
Definition at line 32 of file bufr2tac_x20.c.
Referenced by syn_parse_x20().
char * prec_to_RRR | ( | char * | target, |
double | r | ||
) |
converts a precipitation in Kg/m2 into a RRR string
r | the precipitation |
target | the resulting string |
Definition at line 32 of file bufr2tac_x13.c.
Referenced by syn_parse_x13().
char * prec_to_RRRR24 | ( | char * | target, |
double | r | ||
) |
converts a precipitation in Kg/m2 into a RRRR24 string
r | the precipitation |
target | the resulting string |
Definition at line 87 of file bufr2tac_x13.c.
Referenced by syn_parse_x13().
int print_buoy_report | ( | struct metreport * | m | ) |
prints a buoy into a string
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 392 of file bufr2tac_print_buoy.c.
References metreport::alphanum, metreport::buoy, BUOY_SEC1, BUOY_SEC2, BUOY_SEC3, buoy_chunks::e, buoy_chunks::mask, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_buoy_sec0(), print_buoy_sec1(), print_buoy_sec2(), print_buoy_sec3(), print_geo(), metreport::print_mask, print_wigos_id(), and report_date_ext::YYYY.
Referenced by parse_subset_sequence().
size_t print_buoy_sec0 | ( | char ** | sec0, |
size_t | lmax, | ||
struct buoy_chunks * | b | ||
) |
Prints the buoy section 1.
sec0 | the pointer where to print section |
lmax | max length permited |
b | pointer to s atruct buoy_chunks where the parse results are set |
Definition at line 33 of file bufr2tac_print_buoy.c.
References buoy_sec0::A1, buoy_sec0::bw, buoy_sec0::D_D, report_date_ext::DD, buoy_chunks::e, buoy_sec0::GG, buoy_sec0::gg, report_date_ext::HH, buoy_sec0::iw, buoy_sec0::J, buoy_sec0::LaLaLaLaLa, buoy_sec0::LoLoLoLoLoLo, buoy_sec0::MiMi, buoy_sec0::MjMj, buoy_sec0::MM, report_date_ext::MM, report_date_ext::mm, buoy_sec0::nbnbnb, buoy_sec0::QA, buoy_sec0::Qc, buoy_sec0::Ql, buoy_sec0::Qt, buoy_chunks::s0, buoy_sec0::YY, and report_date_ext::YYYY.
Referenced by print_buoy_report().
size_t print_buoy_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct buoy_chunks * | b | ||
) |
Prints the buoy section 1.
sec1 | the pointer where to print section |
lmax | max length permited |
b | pointer to s atruct buoy_chunks where the parse results are set |
Definition at line 111 of file bufr2tac_print_buoy.c.
References buoy_sec1::a, BUOY_SEC1, buoy_sec1::dd, buoy_sec1::ff, buoy_chunks::mask, buoy_sec1::PoPoPoPo, buoy_sec1::ppp, buoy_sec1::PPPP, buoy_sec1::Qd, buoy_sec1::Qx, buoy_chunks::s1, buoy_sec1::sn1, buoy_sec1::sn2, buoy_sec1::TdTdTd, and buoy_sec1::TTT.
Referenced by print_buoy_report().
size_t print_buoy_sec2 | ( | char ** | sec2, |
size_t | lmax, | ||
struct buoy_chunks * | b | ||
) |
Prints the buoy section 1.
sec2 | the pointer where to print section |
lmax | max length permited |
b | pointer to s atruct buoy_chunks where the parse results are set |
Definition at line 212 of file bufr2tac_print_buoy.c.
References BUOY_SEC2, buoy_sec2::HwaHwa, buoy_sec2::HwaHwaHwa, buoy_chunks::mask, buoy_sec2::PwaPwa, buoy_sec2::PwaPwaPwa, buoy_sec2::Qd, buoy_sec2::Qx, buoy_chunks::s2, buoy_sec2::sn, and buoy_sec2::TwTwTw.
Referenced by print_buoy_report().
size_t print_buoy_sec3 | ( | char ** | sec3, |
size_t | lmax, | ||
struct buoy_chunks * | b | ||
) |
Prints the buoy section 3.
sec3 | the pointer where to print section |
lmax | max length permited |
b | pointer to s atruct buoy_chunks where the parse results are set |
Definition at line 295 of file bufr2tac_print_buoy.c.
References BUOY_SEC3, b_sec3_layer2::ccc, b_sec3_layer2::dd, buoy_sec3::k2, buoy_sec3::k3, buoy_sec3::k6, buoy_sec3::l1, buoy_sec3::l2, buoy_chunks::mask, buoy_sec3::Qd1, buoy_sec3::Qd2, buoy_chunks::s3, b_sec3_layer1::SSSS, b_sec3_layer1::TTTT, b_sec3_layer1::zzzz, and b_sec3_layer2::zzzz.
Referenced by print_buoy_report().
size_t print_buoy_wigos_id | ( | char ** | wid, |
size_t | lmax, | ||
struct buoy_chunks * | b | ||
) |
Definition at line 367 of file bufr2tac_print_buoy.c.
References wigos_id::issue, wigos_id::issuer, wigos_id::local_id, wigos_id::series, and buoy_chunks::wid.
int print_climat_report | ( | struct metreport * | m | ) |
prints a climat into a string
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 718 of file bufr2tac_print_climat.c.
References metreport::alphanum, metreport::climat, CLIMAT_SEC1, CLIMAT_SEC2, CLIMAT_SEC3, CLIMAT_SEC4, climat_chunks::e, climat_chunks::mask, report_date_ext::MM, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_climat_sec0(), print_climat_sec1(), print_climat_sec2(), print_climat_sec3(), print_climat_sec4(), print_geo(), metreport::print_mask, print_wigos_id(), and report_date_ext::YYYY.
Referenced by parse_subset_sequence().
size_t print_climat_sec0 | ( | char ** | sec0, |
size_t | lmax, | ||
struct climat_chunks * | cl | ||
) |
Prints the climat section 0 (header)
sec0 | the pointer where to print section |
lmax | max length permited |
cl | pointer to s atruct climat_chunks where the parse results are set |
Definition at line 33 of file bufr2tac_print_climat.c.
References report_date_ext::DD, climat_chunks::e, report_date_ext::HH, climat_sec0::II, climat_sec0::iii, climat_sec0::JJJ, climat_sec0::MM, report_date_ext::MM, report_date_ext::mm, climat_chunks::s0, and report_date_ext::YYYY.
Referenced by print_climat_report().
size_t print_climat_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct climat_chunks * | cl | ||
) |
Prints the climat section 1.
sec1 | the pointer where to print section |
lmax | max length permited |
cl | pointer to s atruct climat_chunks where the parse results are set |
Definition at line 64 of file bufr2tac_print_climat.c.
References climat_sec1::eee, climat_chunks::mask, climat_sec1::meme, climat_sec1::mpmp, climat_sec1::mrmr, climat_sec1::msms, climat_sec1::mtmt, climat_sec1::mtn, climat_sec1::mtx, climat_sec1::nrnr, climat_sec1::PoPoPoPo, climat_sec1::PPPP, climat_sec1::pspsps, climat_sec1::R1R1R1R1, climat_sec1::Rd, climat_sec1::s, climat_chunks::s1, climat_sec1::S1S1S1, climat_sec1::sn, climat_sec1::ststst, climat_sec1::sx, SYNOP_SEC1, climat_sec1::TnTnTn, climat_sec1::TTT, and climat_sec1::TxTxTx.
Referenced by print_climat_report().
size_t print_climat_sec2 | ( | char ** | sec2, |
size_t | lmax, | ||
struct climat_chunks * | cl | ||
) |
Prints the climat section 2.
sec2 | the pointer where to print section |
lmax | max length permited |
cl | pointer to s atruct climat_chunks where the parse results are set |
Definition at line 198 of file bufr2tac_print_climat.c.
References climat_sec2::eee, climat_chunks::mask, climat_sec2::nrnr, climat_sec2::PoPoPoPo, climat_sec2::PPPP, climat_sec2::R1R1R1R1, climat_sec2::s, climat_sec2::S1S1S1, climat_chunks::s2, climat_sec2::sn, climat_sec2::ststst, climat_sec2::sx, SYNOP_SEC2, climat_sec2::TnTnTn, climat_sec2::TTT, climat_sec2::TxTxTx, climat_sec2::YbYb, climat_sec2::YcYc, climat_sec2::yeye, climat_sec2::ypyp, climat_sec2::yryr, climat_sec2::ysys, climat_sec2::ytxytx, and climat_sec2::ytyt.
Referenced by print_climat_report().
size_t print_climat_sec3 | ( | char ** | sec3, |
size_t | lmax, | ||
struct climat_chunks * | cl | ||
) |
Prints the climat section 3.
sec3 | the pointer where to print section |
lmax | max length permited |
cl | pointer to s atruct climat_chunks where the parse results are set |
Definition at line 354 of file bufr2tac_print_climat.c.
References climat_sec3::f10, climat_sec3::f20, climat_sec3::f30, climat_chunks::mask, climat_sec3::R01, climat_sec3::R05, climat_sec3::R10, climat_sec3::R100, climat_sec3::R150, climat_sec3::R50, climat_sec3::s00, climat_sec3::s01, climat_sec3::s10, climat_chunks::s3, climat_sec3::s50, SYNOP_SEC3, climat_sec3::T25, climat_sec3::T30, climat_sec3::T35, climat_sec3::T40, climat_sec3::Tn0, climat_sec3::Tx0, climat_sec3::V1, climat_sec3::V2, and climat_sec3::V3.
Referenced by print_climat_report().
size_t print_climat_sec4 | ( | char ** | sec4, |
size_t | lmax, | ||
struct climat_chunks * | cl | ||
) |
Prints the climat section 4.
sec4 | the pointer where to print section |
lmax | max length permited |
cl | pointer to s atruct climat_chunks where the parse results are set |
Definition at line 555 of file bufr2tac_print_climat.c.
References CLIMAT_SEC4, climat_sec4::Dgr, climat_sec4::Dts, climat_sec4::fxfxfx, climat_sec4::GnGn, climat_sec4::GxGx, climat_sec4::iw, climat_sec4::iy, climat_chunks::mask, climat_sec4::RxRxRxRx, climat_chunks::s4, climat_sec4::san, climat_sec4::sax, climat_sec4::sn, climat_sec4::sx, climat_sec4::Tan, climat_sec4::Tax, climat_sec4::Tnd, climat_sec4::Txd, climat_sec4::yan, climat_sec4::yax, climat_sec4::yfx, climat_sec4::yn, climat_sec4::yr, and climat_sec4::yx.
Referenced by print_climat_report().
size_t print_climat_wigos_id | ( | char ** | wid, |
size_t | lmax, | ||
struct climat_chunks * | cl | ||
) |
int print_csv | ( | FILE * | f, |
struct metreport * | m | ||
) |
prints a struct metreport in labeled csv format
f | pointer to a file already open by caller routine |
m | pointer to a struct metreport containing the data to print |
Definition at line 85 of file bufr2tac_csv.c.
References metreport::alphanum, metreport::alphanum2, metreport::alphanum3, metreport::alphanum4, print_csv_alphanum(), metreport::type, metreport::type2, metreport::type3, and metreport::type4.
Referenced by main().
size_t print_geo | ( | char ** | geo, |
size_t | lmax, | ||
struct metreport * | m | ||
) |
Definition at line 71 of file bufr2tac_print.c.
References met_geo::alt, metreport::g, met_geo::lat, and met_geo::lon.
Referenced by print_buoy_report(), print_climat_report(), print_synop_report(), print_temp_a(), print_temp_b(), print_temp_c(), and print_temp_d().
int print_html | ( | FILE * | f, |
struct metreport * | m | ||
) |
Print in a file the report decoded to Traditional Alphanumeric Code in plain html format. A line per report.
f | pointer to file where to write to |
m | pointer to struct metreport where the decoded report is stored |
Definition at line 51 of file bufr2tac_print.c.
References metreport::alphanum, metreport::alphanum2, metreport::alphanum3, and metreport::alphanum4.
Referenced by main().
int print_json | ( | FILE * | f, |
struct metreport * | m | ||
) |
prints a struct metreport in json format
f | pointer to a file already open by caller routine |
m | pointer to a struct metreport containing the data to print |
Definition at line 62 of file bufr2tac_json.c.
References metreport::alphanum, metreport::alphanum2, metreport::alphanum3, metreport::alphanum4, print_json_alphanum(), metreport::type, metreport::type2, metreport::type3, and metreport::type4.
Referenced by main().
int print_plain | ( | FILE * | f, |
struct metreport * | m | ||
) |
Print in a file the report decoded to Traditional Alphanumeric Code in plain text format. A line per report.
f | pointer to file where to write to |
m | pointer to struct metreport where the decoded report is stored |
Definition at line 32 of file bufr2tac_print.c.
References metreport::alphanum, metreport::alphanum2, metreport::alphanum3, and metreport::alphanum4.
Referenced by main().
int print_synop_report | ( | struct metreport * | m | ) |
prints a synop into a string
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 825 of file bufr2tac_print_synop.c.
References metreport::alphanum, synop_chunks::e, synop_sec0::II, synop_sec0::iii, synop_chunks::mask, synop_sec0::MiMi, synop_sec0::MjMj, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_geo(), metreport::print_mask, print_synop_sec0(), print_synop_sec1(), print_synop_sec2(), print_synop_sec3(), print_synop_sec4(), print_synop_sec5(), print_wigos_id(), synop_chunks::s0, metreport::synop, SYNOP_SEC1, SYNOP_SEC2, SYNOP_SEC3, SYNOP_SEC4, SYNOP_SEC5, and report_date_ext::YYYY.
Referenced by parse_subset_sequence().
size_t print_synop_sec0 | ( | char ** | sec0, |
size_t | lmax, | ||
struct synop_chunks * | syn | ||
) |
Prints the synop section 0 (header)
sec0 | the pointer where to print section |
lmax | max length permited |
syn | pointer to s atruct synop_chunks where the parse results are set |
Definition at line 34 of file bufr2tac_print_synop.c.
References synop_sec0::A1, synop_sec0::bw, synop_sec0::D_D, report_date_ext::DD, synop_chunks::e, synop_sec0::GG, synop_sec0::h0h0h0h0, report_date_ext::HH, synop_sec0::II, synop_sec0::iii, synop_sec0::im, synop_sec0::iw, synop_sec0::LaLaLa, synop_sec0::LoLoLoLo, synop_sec0::MiMi, synop_sec0::MjMj, report_date_ext::MM, report_date_ext::mm, synop_sec0::MMM, synop_sec0::nbnbnb, synop_sec0::Qc, synop_chunks::s0, synop_sec0::Ula, synop_sec0::Ulo, synop_sec0::YY, and report_date_ext::YYYY.
Referenced by print_synop_report().
size_t print_synop_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct synop_chunks * | syn | ||
) |
Prints the synop section 1.
sec1 | the pointer where to print section |
lmax | max length permited |
syn | pointer to s atruct synop_chunks where the parse results are set |
Definition at line 108 of file bufr2tac_print_synop.c.
References synop_sec1::a, synop_sec1::a3, synop_sec1::Ch, synop_sec1::Cl, synop_sec1::Cm, synop_sec1::dd, synop_sec1::ff, synop_sec1::fff, synop_sec1::GG, synop_sec1::gg, synop_sec1::h, synop_sec1::hhh, synop_sec1::ir, synop_sec1::ix, synop_chunks::mask, synop_sec1::N, synop_sec1::Nh, synop_sec1::PoPoPoPo, synop_sec1::ppp, synop_sec1::PPPP, synop_sec1::RRR, synop_chunks::s1, synop_sec1::sn1, synop_sec1::sn2, SYNOP_SEC1, synop_sec1::TdTdTd, synop_sec1::tr, synop_sec1::TTT, synop_sec1::UUU, synop_sec1::VV, synop_sec1::W1, synop_sec1::W2, and synop_sec1::ww.
Referenced by print_synop_report().
size_t print_synop_sec2 | ( | char ** | sec2, |
size_t | lmax, | ||
struct synop_chunks * | syn | ||
) |
Prints the synop section 2.
sec2 | the pointer where to print section |
lmax | max length permited |
syn | pointer to s atruct synop_chunks where the parse results are set |
Definition at line 250 of file bufr2tac_print_synop.c.
References synop_sec2::Ds, synop_sec2::dw1dw1, synop_sec2::dw2dw2, synop_sec2::Hw1Hw1, synop_sec2::Hw2Hw2, synop_sec2::HwaHwa, synop_sec2::HwaHwaHwa, synop_sec2::HwHw, synop_chunks::mask, synop_sec2::Pw1Pw1, synop_sec2::Pw2Pw2, synop_sec2::PwaPwa, synop_sec2::PwPw, synop_chunks::s2, synop_sec2::ss, synop_sec2::sw, SYNOP_SEC2, synop_sec2::TbTbTb, synop_sec2::TwTwTw, and synop_sec2::vs.
Referenced by print_synop_report().
size_t print_synop_sec3 | ( | char ** | sec3, |
size_t | lmax, | ||
struct synop_chunks * | syn | ||
) |
Prints the synop section 3.
sec3 | the pointer where to print section |
lmax | max length permited |
syn | pointer to s atruct synop_chunks where the parse results are set |
Definition at line 413 of file bufr2tac_print_synop.c.
References nub3::C, synop_sec3::C, synop_sec3::d9, synop_sec3::Da, synop_sec3::Dh, synop_sec3::Dl, synop_sec3::Dm, synop_sec3::E, synop_sec3::E1, synop_sec3::ec, synop_sec3::FFFF, synop_sec3::FFFF24, synop_sec3::FFFF407, synop_sec3::FFFF408, synop_sec3::FFFF507, synop_sec3::FFFF508, nub3::hshs, synop_sec3::j5, synop_sec3::j524, synop_sec3::jjj, synop_chunks::mask, data9::misc, data9::n, nub3::Ns, synop_sec3::nub, synop_sec3::ppp24, synop_sec3::R8, synop_sec3::RRR, synop_sec3::RRRR24, synop_chunks::s3, synop_sec3::snn, synop_sec3::snp24, synop_sec3::snx, misc3::SpSp, misc3::spsp, synop_sec3::SS, synop_sec3::sss, synop_sec3::SSS, SYNOP_NMISC, SYNOP_SEC3, SYNOP_SEC3_8, synop_sec3::TnTnTn, synop_sec3::tr, synop_sec3::TxTxTx, and synop_sec3::XoXoXoXo.
Referenced by print_synop_report().
size_t print_synop_wigos_id | ( | char ** | wid, |
size_t | lmax, | ||
struct synop_chunks * | syn | ||
) |
size_t print_temp_a | ( | struct metreport * | m | ) |
Prints the part A of a TEMP report into a string.
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 346 of file bufr2tac_print_temp.c.
References metreport::alphanum, temp_chunks::c, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_geo(), metreport::print_mask, print_temp_a_sec1(), print_temp_a_sec2(), print_temp_a_sec3(), print_temp_a_sec4(), print_temp_a_sec7(), print_wigos_id(), temp_chunks::t, and metreport::temp.
Referenced by print_temp_report().
size_t print_temp_a_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 1 of part A of a TEMP report.
sec1 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec1
Definition at line 145 of file bufr2tac_print_temp.c.
References temp_chunks::a, temp_acd_sec1::D_D, met_datetime::datime, temp_acd_sec1::h0h0h0h0, temp_acd_sec1::id, temp_acd_sec1::II, temp_acd_sec1::iii, temp_acd_sec1::im, temp_acd_sec1::LaLaLa, temp_acd_sec1::LoLoLoLo, temp_acd_sec1::MiMi, temp_acd_sec1::MjMj, temp_acd_sec1::MMM, temp_acd_sec1::Qc, temp_a::s1, temp_chunks::t, temp_acd_sec1::Ula, temp_acd_sec1::Ulo, and temp_acd_sec1::YYGG.
Referenced by print_temp_a().
size_t print_temp_a_sec2 | ( | char ** | sec2, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 2 of part A of a TEMP report.
sec2 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec2
Definition at line 211 of file bufr2tac_print_temp.c.
References temp_chunks::a, temp_main_level_data::DnDn, temp_std_level_data::DnDn, temp_main_level_data::dndnfnfnfn, temp_std_level_data::dndnfnfnfn, temp_std_level_data::hnhnhn, temp_a_sec2::lev0, temp_a_sec2::n, temp_std_level_data::PnPn, temp_main_level_data::PnPnPn, temp_a::s2, temp_a_sec2::std, temp_main_level_data::TnTnTan, and temp_std_level_data::TnTnTan.
Referenced by print_temp_a().
size_t print_temp_a_sec3 | ( | char ** | sec3, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 3 of part A of a TEMP report.
sec3 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec3
Definition at line 242 of file bufr2tac_print_temp.c.
References temp_chunks::a, temp_main_level_data::DnDn, temp_main_level_data::dndnfnfnfn, temp_ac_sec3::n, temp_main_level_data::PnPnPn, temp_a::s3, temp_main_level_data::TnTnTan, and temp_ac_sec3::trop.
Referenced by print_temp_a().
size_t print_temp_a_sec4 | ( | char ** | sec4, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 4 of part A of a TEMP report.
sec4 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec1
Definition at line 276 of file bufr2tac_print_temp.c.
References temp_chunks::a, temp_max_wind_data::dmdmfmfmfm, temp_ac_sec4::n, temp_max_wind_data::no_last_wind, temp_max_wind_data::PmPmPm, temp_a::s4, temp_max_wind_data::vava, temp_max_wind_data::vbvb, and temp_ac_sec4::windx.
Referenced by print_temp_a().
size_t print_temp_a_sec7 | ( | char ** | sec7, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 7 of part A of a TEMP report.
sec7 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec7
Definition at line 321 of file bufr2tac_print_temp.c.
References temp_chunks::a, temp_sec7::GG, temp_sec7::gg, temp_sec7::rara, temp_a::s7, temp_sec7::sasa, temp_sec7::sn, temp_sec7::sr, and temp_sec7::TwTwTw.
Referenced by print_temp_a().
int print_temp_b | ( | struct metreport * | m | ) |
Prints the part B of a TEMP report into a string.
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 600 of file bufr2tac_print_temp.c.
References metreport::alphanum, metreport::alphanum2, temp_chunks::c, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_geo(), metreport::print_mask, print_temp_b_sec1(), print_temp_b_sec5(), print_temp_b_sec6(), print_temp_b_sec7(), print_temp_b_sec8(), print_wigos_id(), temp_chunks::t, and metreport::temp.
Referenced by print_temp_report().
size_t print_temp_b_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 1 of part B of a TEMP report.
sec1 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec1
Definition at line 388 of file bufr2tac_print_temp.c.
References temp_chunks::c, met_datetime::t, and temp_chunks::t.
Referenced by print_temp_b().
size_t print_temp_b_sec5 | ( | char ** | sec5, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 5 of part B of a TEMP report.
sec5 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec5
Definition at line 453 of file bufr2tac_print_temp.c.
References temp_chunks::c, temp_chunks::t, and TEMP_NMAX_POINTS.
Referenced by print_temp_b().
size_t print_temp_b_sec6 | ( | char ** | sec6, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 6 of part B of a TEMP report.
sec6 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec6
Definition at line 478 of file bufr2tac_print_temp.c.
References temp_chunks::c, temp_chunks::t, and TEMP_NMAX_POINTS.
Referenced by print_temp_b().
size_t print_temp_b_sec7 | ( | char ** | sec7, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 7 of part B of a TEMP report.
sec7 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec7
Definition at line 505 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_b().
size_t print_temp_b_sec8 | ( | char ** | sec8, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 8 of part B of a TEMP report.
sec8 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec8
Definition at line 532 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_b().
int print_temp_c | ( | struct metreport * | m | ) |
Prints the part C of a TEMP report into a string.
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 838 of file bufr2tac_print_temp.c.
References metreport::alphanum, metreport::alphanum3, temp_chunks::c, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_geo(), metreport::print_mask, print_temp_c_sec1(), print_temp_c_sec2(), print_temp_c_sec3(), print_temp_c_sec4(), print_temp_c_sec7(), print_wigos_id(), temp_chunks::t, and metreport::temp.
Referenced by print_temp_report().
size_t print_temp_c_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 1 of part C of a TEMP report.
sec1 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec1
Definition at line 643 of file bufr2tac_print_temp.c.
References temp_chunks::c, met_datetime::t, and temp_chunks::t.
Referenced by print_temp_c().
size_t print_temp_c_sec2 | ( | char ** | sec2, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 2 of part C of a TEMP report.
sec2 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec2
Definition at line 708 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_c().
size_t print_temp_c_sec3 | ( | char ** | sec3, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 3 of part C of a TEMP report.
sec3 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec3
Definition at line 735 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_c().
size_t print_temp_c_sec4 | ( | char ** | sec4, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 4 of part C of a TEMP report.
sec4 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec4
Definition at line 769 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_c().
size_t print_temp_c_sec7 | ( | char ** | sec7, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 7 of part C of a TEMP report.
sec7 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec7
Definition at line 813 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_c().
int print_temp_d | ( | struct metreport * | m | ) |
Prints the part D of a TEMP report into a string.
m | pointer to struct metreport where are both target and source |
If OK returns 0, otherwise 1
Definition at line 1022 of file bufr2tac_print_temp.c.
References metreport::alphanum, metreport::alphanum4, temp_chunks::c, PRINT_BITMASK_GEO, PRINT_BITMASK_WIGOS, print_geo(), metreport::print_mask, print_temp_d_sec1(), print_temp_d_sec5(), print_temp_d_sec6(), print_temp_d_sec7(), print_wigos_id(), temp_chunks::t, and metreport::temp.
Referenced by print_temp_report().
size_t print_temp_d_sec1 | ( | char ** | sec1, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 1 of part D of a TEMP report.
sec1 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec1
Definition at line 880 of file bufr2tac_print_temp.c.
References temp_chunks::c, met_datetime::t, and temp_chunks::t.
Referenced by print_temp_d().
size_t print_temp_d_sec5 | ( | char ** | sec5, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 5 of part D of a TEMP report.
sec5 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec5
Definition at line 945 of file bufr2tac_print_temp.c.
References temp_chunks::c, temp_chunks::t, and TEMP_NMAX_POINTS.
Referenced by print_temp_d().
size_t print_temp_d_sec6 | ( | char ** | sec6, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 6 of part D of a TEMP report.
sec6 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec6
Definition at line 970 of file bufr2tac_print_temp.c.
References temp_chunks::c, temp_chunks::t, and TEMP_NMAX_POINTS.
Referenced by print_temp_d().
size_t print_temp_d_sec7 | ( | char ** | sec7, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
Prints the section 7 of part D of a TEMP report.
sec7 | the pointer where to print section |
lmax | max length permited |
t | pointer to s atruct temp_chunks where the parse results are set |
returns the string sec7
Definition at line 997 of file bufr2tac_print_temp.c.
References temp_chunks::c, and temp_chunks::t.
Referenced by print_temp_d().
size_t print_temp_d_sec8 | ( | char ** | sec8, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
int print_temp_raw_data | ( | struct temp_raw_data * | r | ) |
Prints for debug a struct temp_raw_data.
r | the pointer of struct to print |
This is used mainly for debug
Definition at line 33 of file bufr2tac_print_temp.c.
References temp_raw_point_data::dd, temp_raw_point_data::dlat, temp_raw_point_data::dlon, temp_raw_point_data::dt, temp_raw_point_data::ff, temp_raw_point_data::flags, temp_raw_point_data::h, MISSING_REAL, temp_raw_data::n, temp_raw_point_data::p, temp_raw_data::raw, temp_raw_point_data::T, and temp_raw_point_data::Td.
int print_temp_raw_wind_shear_data | ( | struct temp_raw_wind_shear_data * | w | ) |
Prints for debug a struct temp_raw_data.
w | the pointer of struct to print |
Used in debug stage
Definition at line 98 of file bufr2tac_print_temp.c.
References temp_raw_wind_shear_point::dlat, temp_raw_wind_shear_point::dlon, temp_raw_wind_shear_point::dt, temp_raw_wind_shear_point::flags, MISSING_REAL, temp_raw_wind_shear_data::n, temp_raw_wind_shear_point::p, temp_raw_wind_shear_data::raw, temp_raw_wind_shear_point::ws_abv, and temp_raw_wind_shear_point::ws_blw.
int print_temp_report | ( | struct metreport * | m | ) |
print the four parts of a decoded TEMP report from a BUFR file into strings
m | pointer to a struct metreport in which alphanumeric string members stores the reults |
Definition at line 1058 of file bufr2tac_print_temp.c.
References temp_chunks::a, temp_chunks::b, temp_chunks::c, temp_chunks::d, temp_a::mask, temp_b::mask, temp_c::mask, temp_d::mask, print_temp_a(), print_temp_b(), print_temp_c(), print_temp_d(), metreport::temp, TEMP_SEC_2, TEMP_SEC_5, and TEMP_SEC_6.
Referenced by parse_subset_sequence().
size_t print_temp_wigos_id | ( | char ** | wid, |
size_t | lmax, | ||
struct temp_chunks * | t | ||
) |
size_t print_wigos_id | ( | char ** | wid, |
size_t | lmax, | ||
struct metreport * | m | ||
) |
Definition at line 86 of file bufr2tac_print.c.
References metreport::g, wigos_id::issue, wigos_id::issuer, wigos_id::local_id, wigos_id::series, and met_geo::wid.
Referenced by print_buoy_report(), print_climat_report(), print_synop_report(), print_temp_a(), print_temp_b(), print_temp_c(), and print_temp_d().
int print_xml | ( | FILE * | f, |
struct metreport * | m | ||
) |
prints a struct metreport in xml format
f | pointer to a file already open by caller routine |
m | pointer to a struct metreport containing the data to print |
Definition at line 71 of file bufr2tac_xml.c.
References metreport::alphanum, metreport::alphanum2, metreport::alphanum3, metreport::alphanum4, print_xml_alphanum(), metreport::type, metreport::type2, metreport::type3, and metreport::type4.
Referenced by main().
int read_bufr | ( | unsigned char * | bufr, |
char * | filename, | ||
int * | length | ||
) |
read a bufr file as an array of unsigned chars
bufr | pointer to an array of unsigned chars. On output it will contain the bufr |
filename | string with complete pathname of bufr file to read |
length | On input max length allocated by caller. On output real length of bufr |
Definition at line 34 of file bufr2tac_io.c.
References three_bytes_to_uint().
int read_table_c | ( | char | tablec[MAXLINES_TABLEC][92], |
size_t * | nlines_tablec, | ||
char * | bufrtables_dir, | ||
int | ksec1[40] | ||
) |
Definition at line 64 of file bufr2tac_tablec.c.
References get_ecmwf_tablename(), and MAXLINES_TABLEC.
char * recent_snow_to_ss | ( | char * | target, |
double | r | ||
) |
converts recent snow in m to ss (code table 3870)
r | recent snow depth in meters |
target | the resulting string |
Definition at line 157 of file bufr2tac_x13.c.
Referenced by syn_parse_x13().
int round_met_datetime_to_hour | ( | struct met_datetime * | target, |
struct met_datetime * | source | ||
) |
Definition at line 194 of file bufr2tac_utils.c.
References met_datetime::datime, met_datetime::t, and met_datetime::tim.
Referenced by parse_subset_as_temp().
char * secs_to_tt | ( | char * | tt, |
int | secs | ||
) |
get tt code from seconds
tt | string with the resulting table code |
secs | second |
returns the pointer to tt
Definition at line 34 of file bufr2tac_x11.c.
Referenced by syn_parse_x11(), and syn_parse_x20().
int set_environment | ( | char * | default_bufrtables, |
char * | bufrtables_dir | ||
) |
int syn_parse_x01 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 01.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 54 of file bufr2tac_x01.c.
References bufr2tac_subset_state::a, synop_sec0::A1, adjust_string(), BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), synop_sec0::bw, check_wigos_local_id(), bufr2tac_subset_state::country, bufr_atom_data::ctable, bufr_atom_data::cval, synop_sec0::D_D, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, guess_WMO_region(), synop_sec0::II, synop_sec0::iii, wigos_id::issue, wigos_id::issuer, bufr2tac_subset_state::ival, wigos_id::local_id, bufr_atom_data::mask, bufr2tac_subset_state::mask, bufr2tac_subset_state::name, synop_sec0::Reg, synop_chunks::s0, wigos_id::series, SUBSET_MASK_HAVE_COUNTRY, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_WIGOS_ID, synop_chunks::wid, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x02 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 02.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 34 of file bufr2tac_x02.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::ival, synop_sec0::iw, synop_sec1::ix, bufr_atom_data::mask, bufr2tac_subset_state::mask, synop_chunks::s0, synop_chunks::s1, SUBSET_MASK_HAVE_TYPE_STATION, bufr2tac_subset_state::type, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x04 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 04.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 110 of file bufr2tac_x04.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), report_date_ext::DD, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_chunks::e, report_date_ext::HH, bufr2tac_subset_state::i, bufr2tac_subset_state::itmask, bufr2tac_subset_state::itval, bufr2tac_subset_state::ival, bufr2tac_subset_state::jtmask, bufr2tac_subset_state::jtval, bufr2tac_subset_state::k_itval, bufr2tac_subset_state::k_jtval, bufr_atom_data::mask, bufr2tac_subset_state::mask, report_date_ext::MM, report_date_ext::mm, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_MINUTE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_YEAR, bufr_descriptor::y, and report_date_ext::YYYY.
Referenced by parse_subset_as_synop().
int syn_parse_x05 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 05.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 66 of file bufr2tac_x05.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), synop_sec3::Da, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, grad_to_D(), synop_sec0::LaLaLa, bufr2tac_subset_state::lat, latlon_to_MMM(), synop_sec0::LoLoLoLo, bufr2tac_subset_state::lon, bufr_atom_data::mask, bufr2tac_subset_state::mask, synop_chunks::mask, synop_sec0::MMM, synop_sec0::Qc, synop_chunks::s0, synop_chunks::s3, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_LATITUDE_SOUTH, SUBSET_MASK_LONGITUDE_WEST, SYNOP_SEC3, synop_sec0::Ula, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x06 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 06.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 67 of file bufr2tac_x06.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec0::LaLaLa, bufr2tac_subset_state::lat, latlon_to_MMM(), synop_sec0::LoLoLoLo, bufr2tac_subset_state::lon, bufr_atom_data::mask, bufr2tac_subset_state::mask, synop_sec0::MMM, synop_sec0::Qc, synop_chunks::s0, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_LATITUDE_SOUTH, SUBSET_MASK_LONGITUDE_WEST, synop_sec0::Ulo, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x07 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 07.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 65 of file bufr2tac_x07.c.
References bufr2tac_subset_state::a, synop_sec1::a3, bufr2tac_subset_state::alt, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec3::ec, grad_to_ec(), synop_sec0::h0h0h0h0, bufr2tac_subset_state::hsensor, bufr2tac_subset_state::hwsensor, synop_sec0::im, bufr2tac_subset_state::ival, bufr_atom_data::mask, bufr2tac_subset_state::mask, synop_chunks::mask, synop_chunks::s0, synop_chunks::s1, synop_chunks::s3, SUBSET_MASK_HAVE_ALTITUDE, SYNOP_SEC3, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x08 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 08.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 37 of file bufr2tac_x08.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr2tac_subset_state::clayer, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::isq, bufr2tac_subset_state::ival, bufr_atom_data::mask, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x10 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 10.
syn | pointer to a s if ( BUFR2TAC_DEBUG_LEVEL > 0 ) bufr2tac_set_error ( s, 0, "syn_parse_x08()", "Descriptor not parsed" ); truct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 87 of file bufr2tac_x10.c.
References bufr2tac_subset_state::a, synop_sec1::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec1::hhh, bufr2tac_subset_state::ival, bufr_atom_data::mask, synop_chunks::mask, pascal_to_ppp(), pascal_to_PPPP(), synop_sec1::PoPoPoPo, synop_sec1::ppp, synop_sec3::ppp24, synop_sec1::PPPP, synop_chunks::s1, synop_chunks::s3, synop_sec3::snp24, SYNOP_SEC1, SYNOP_SEC3, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x11 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 11.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 116 of file bufr2tac_x11.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), synop_sec3::d9, synop_sec5::d9, synop_sec1::dd, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec1::ff, synop_sec1::fff, bufr2tac_subset_state::itval, bufr2tac_subset_state::ival, synop_sec0::iw, bufr_atom_data::mask, bufr2tac_subset_state::mask, synop_chunks::mask, data9::misc, data9::n, synop_chunks::s0, synop_chunks::s1, synop_chunks::s3, synop_chunks::s5, secs_to_tt(), bufr2tac_subset_state::SnSn, misc3::SpSp, misc3::spsp, SUBSET_MASK_HAVE_GUST, SUBSET_MASK_HAVE_GUST10, SYNOP_NMISC, SYNOP_SEC1, SYNOP_SEC3, SYNOP_SEC5, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x12 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 12.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 220 of file bufr2tac_x12.c.
References bufr2tac_subset_state::a, synop_sec0::A1, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec3::E, synop_sec3::E1, bufr2tac_subset_state::hsensor, bufr2tac_subset_state::itval, synop_sec3::jjj, kelvin_to_snTT(), kelvin_to_snTTT(), kelvin_to_TT(), bufr_atom_data::mask, synop_chunks::mask, synop_chunks::s0, synop_chunks::s1, synop_chunks::s2, synop_chunks::s3, synop_sec1::sn1, synop_sec1::sn2, synop_sec3::snn, synop_sec3::snx, synop_sec2::sw, SYNOP_SEC1, SYNOP_SEC2, SYNOP_SEC3, synop_sec2::TbTbTb, synop_sec1::TdTdTd, time_period_duration(), synop_sec3::TnTnTn, synop_sec1::TTT, synop_sec3::TxTxTx, bufr2tac_subset_state::val, synop_sec3::XoXoXoXo, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x13 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 13.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 201 of file bufr2tac_x13.c.
References bufr2tac_subset_state::a, synop_sec0::A1, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), synop_sec3::d9, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_chunks::e, report_date_ext::HH, hour_rounded(), synop_sec0::II, synop_sec0::iii, bufr2tac_subset_state::ival, bufr_atom_data::mask, synop_chunks::mask, data9::misc, data9::n, prec_to_RRR(), prec_to_RRRR24(), recent_snow_to_ss(), synop_sec1::RRR, synop_sec3::RRR, synop_sec5::RRR, synop_sec3::RRRR24, synop_chunks::s0, synop_chunks::s1, synop_chunks::s3, synop_chunks::s5, misc3::SpSp, synop_sec3::sss, SYNOP_NMISC, SYNOP_SEC1, SYNOP_SEC3, SYNOP_SEC5, time_period_duration(), total_snow_depth_to_sss(), synop_sec1::tr, synop_sec3::tr, synop_sec5::tr, synop_sec1::UUU, bufr2tac_subset_state::val, synop_sec3::XoXoXoXo, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x14 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 14.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 59 of file bufr2tac_x14.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), check_j_cm2(), check_kj_m2(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_chunks::e, synop_sec3::FFFF, synop_sec3::FFFF24, synop_sec3::FFFF407, synop_sec3::FFFF408, synop_sec3::FFFF507, synop_sec3::FFFF508, report_date_ext::HH, synop_sec0::II, bufr2tac_subset_state::ival, synop_sec3::j5, synop_sec3::j524, bufr_atom_data::mask, synop_chunks::mask, synop_chunks::s0, synop_chunks::s3, synop_sec3::SS, synop_sec3::SSS, SYNOP_SEC3, time_period_duration(), bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x20 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 20.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 298 of file bufr2tac_x20.c.
References bufr2tac_subset_state::a, synop_sec0::A1, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), nub3::C, synop_sec3::C, synop_sec4::C1, synop_sec1::Ch, synop_sec1::Cl, bufr2tac_subset_state::clayer, synop_sec1::Cm, synop_sec4::Ct, synop_sec3::d9, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec3::Dh, synop_sec3::Dl, synop_sec3::Dm, synop_sec3::E, synop_sec3::E1, grad_to_D(), synop_sec1::h, synop_sec4::H1H1, nub3::hshs, bufr2tac_subset_state::i, bufr2tac_subset_state::itval, bufr2tac_subset_state::ival, synop_sec1::ix, bufr2tac_subset_state::jtval, bufr2tac_subset_state::k_itval, bufr2tac_subset_state::k_jtval, m_to_9h(), m_to_h(), m_to_hh(), m_to_RR(), bufr_atom_data::mask, bufr2tac_subset_state::mask, synop_chunks::mask, data9::misc, synop_sec1::N, data9::n, synop_sec4::N1, synop_sec1::Nh, nub3::Ns, synop_sec3::nub, percent_to_okta(), synop_sec3::R8, synop_chunks::s0, synop_chunks::s1, synop_chunks::s3, synop_chunks::s4, secs_to_tt(), bufr2tac_subset_state::SnSn, misc3::SpSp, misc3::spsp, SUBSET_MASK_HAVE_NO_SIGNIFICANT_W1, SUBSET_MASK_HAVE_NO_SIGNIFICANT_W2, SUBSET_MASK_HAVE_NO_SIGNIFICANT_WW, SUBSET_MASK_HAVE_TYPE_STATION, SYNOP_NMISC, SYNOP_SEC1, SYNOP_SEC3, SYNOP_SEC3_8, SYNOP_SEC4, bufr2tac_subset_state::tw1w2, bufr2tac_subset_state::type, bufr2tac_subset_state::val, vism_to_VV(), synop_sec1::VV, synop_sec1::W1, synop_sec1::W2, synop_sec1::ww, synop_sec3::XoXoXoXo, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x22 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 01.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 35 of file bufr2tac_x22.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, synop_sec2::dw1dw1, synop_sec2::dw2dw2, synop_sec2::Hw1Hw1, synop_sec2::Hw2Hw2, synop_sec2::HwaHwa, synop_sec2::HwaHwaHwa, synop_sec2::HwHw, bufr2tac_subset_state::ival, kelvin_to_snTTT(), bufr_atom_data::mask, synop_chunks::mask, synop_sec2::Pw1Pw1, synop_sec2::Pw2Pw2, synop_sec2::PwaPwa, synop_sec2::PwPw, synop_chunks::s2, synop_sec2::ss, SYNOP_SEC2, synop_sec2::TwTwTw, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int syn_parse_x31 | ( | struct synop_chunks * | syn, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 31.
syn | pointer to a struct synop_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 35 of file bufr2tac_x31.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::i, bufr2tac_subset_state::ival, bufr2tac_subset_state::k_rep, bufr_atom_data::mask, bufr2tac_subset_state::rep, and bufr_descriptor::y.
Referenced by parse_subset_as_synop().
int synop_YYYYMMDDHHmm_to_YYGG | ( | struct synop_chunks * | syn | ) |
Sets YYGG from YYYYMMDDHHmm extended group.
syn | pointer to the target struct synop_chunks |
Definition at line 31 of file bufr2tac_synop.c.
References report_date_ext::DD, synop_chunks::e, synop_sec0::GG, report_date_ext::HH, report_date_ext::MM, report_date_ext::mm, synop_chunks::s0, synop_sec0::YY, and report_date_ext::YYYY.
Referenced by parse_subset_as_synop().
int temp_parse_x01 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 01.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 415 of file bufr2tac_x01.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_acd_sec1::A1, temp_b_sec1::A1, adjust_string(), temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_acd_sec1::bw, temp_b_sec1::bw, temp_chunks::c, check_wigos_local_id(), bufr2tac_subset_state::country, bufr_atom_data::ctable, bufr_atom_data::cval, temp_chunks::d, temp_acd_sec1::D_D, temp_b_sec1::D_D, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_acd_sec1::II, temp_b_sec1::II, temp_acd_sec1::iii, temp_b_sec1::iii, wigos_id::issue, wigos_id::issuer, bufr2tac_subset_state::ival, wigos_id::local_id, bufr_atom_data::mask, bufr2tac_subset_state::mask, bufr2tac_subset_state::name, temp_acd_sec1::Reg, temp_b_sec1::Reg, temp_a::s1, temp_b::s1, temp_c::s1, temp_d::s1, wigos_id::series, SUBSET_MASK_HAVE_COUNTRY, SUBSET_MASK_HAVE_NAME, SUBSET_MASK_HAVE_WIGOS_ID, temp_chunks::wid, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x02 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 02.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 187 of file bufr2tac_x02.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_b_sec1::a4, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::ival, bufr_atom_data::mask, temp_sec7::rara, temp_b::s1, temp_a::s7, temp_b::s7, temp_c::s7, temp_d::s7, temp_sec7::sasa, temp_sec7::sr, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x04 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 04.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 575 of file bufr2tac_x04.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, report_date_ext::DD, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_raw_point_data::dt, temp_raw_wind_shear_point::dt, temp_a::e, temp_b::e, temp_c::e, temp_d::e, temp_raw_point_data::flags, temp_sec7::GG, temp_sec7::gg, report_date_ext::HH, bufr2tac_subset_state::itval, bufr2tac_subset_state::ival, bufr_atom_data::mask, bufr2tac_subset_state::mask, report_date_ext::MM, report_date_ext::mm, temp_raw_data::n, temp_raw_wind_shear_data::n, bufr2tac_subset_state::r, temp_raw_data::raw, temp_raw_wind_shear_data::raw, RAW_TEMP_NMAX_POINTS, bufr2tac_subset_state::rep, temp_a::s7, temp_b::s7, temp_c::s7, temp_d::s7, report_date_ext::ss, SUBSET_MASK_HAVE_DAY, SUBSET_MASK_HAVE_HOUR, SUBSET_MASK_HAVE_MINUTE, SUBSET_MASK_HAVE_MONTH, SUBSET_MASK_HAVE_SECOND, SUBSET_MASK_HAVE_YEAR, bufr2tac_subset_state::w, bufr_descriptor::y, and report_date_ext::YYYY.
Referenced by parse_subset_as_temp().
int temp_parse_x05 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Definition at line 204 of file bufr2tac_x05.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_raw_point_data::dlat, temp_raw_wind_shear_point::dlat, temp_acd_sec1::LaLaLa, temp_b_sec1::LaLaLa, bufr2tac_subset_state::lat, latlon_to_MMM(), temp_acd_sec1::LoLoLoLo, bufr2tac_subset_state::lon, bufr_atom_data::mask, bufr2tac_subset_state::mask, temp_acd_sec1::MMM, temp_b_sec1::MMM, temp_raw_data::n, temp_raw_wind_shear_data::n, temp_acd_sec1::Qc, temp_b_sec1::Qc, bufr2tac_subset_state::r, temp_raw_data::raw, temp_raw_wind_shear_data::raw, bufr2tac_subset_state::rep, temp_a::s1, temp_b::s1, temp_c::s1, temp_d::s1, SUBSET_MASK_HAVE_LATITUDE, SUBSET_MASK_LATITUDE_SOUTH, SUBSET_MASK_LONGITUDE_WEST, temp_acd_sec1::Ula, temp_b_sec1::Ula, bufr2tac_subset_state::val, bufr2tac_subset_state::w, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x06 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Definition at line 200 of file bufr2tac_x06.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_raw_point_data::dlon, temp_raw_wind_shear_point::dlon, temp_acd_sec1::LaLaLa, bufr2tac_subset_state::lat, latlon_to_MMM(), temp_acd_sec1::LoLoLoLo, temp_b_sec1::LoLoLoLo, bufr2tac_subset_state::lon, bufr_atom_data::mask, bufr2tac_subset_state::mask, temp_acd_sec1::MMM, temp_b_sec1::MMM, temp_raw_data::n, temp_raw_wind_shear_data::n, temp_acd_sec1::Qc, temp_b_sec1::Qc, bufr2tac_subset_state::r, temp_raw_data::raw, temp_raw_wind_shear_data::raw, bufr2tac_subset_state::rep, temp_a::s1, temp_b::s1, temp_c::s1, temp_d::s1, SUBSET_MASK_HAVE_LONGITUDE, SUBSET_MASK_LATITUDE_SOUTH, SUBSET_MASK_LONGITUDE_WEST, temp_acd_sec1::Ulo, temp_b_sec1::Ulo, bufr2tac_subset_state::val, bufr2tac_subset_state::w, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x07 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Definition at line 258 of file bufr2tac_x07.c.
References bufr2tac_subset_state::a, temp_chunks::a, bufr2tac_subset_state::alt, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_acd_sec1::h0h0h0h0, temp_b_sec1::h0h0h0h0, bufr_atom_data::mask, temp_raw_data::n, temp_raw_wind_shear_data::n, temp_raw_point_data::p, temp_raw_wind_shear_point::p, bufr2tac_subset_state::r, temp_raw_data::raw, temp_raw_wind_shear_data::raw, bufr2tac_subset_state::rep, temp_a::s1, temp_b::s1, temp_c::s1, temp_d::s1, bufr2tac_subset_state::val, bufr2tac_subset_state::w, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x08 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 08.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 421 of file bufr2tac_x08.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_raw_point_data::flags, temp_raw_wind_shear_point::flags, bufr2tac_subset_state::isq, bufr2tac_subset_state::ival, bufr_atom_data::mask, temp_raw_data::n, temp_raw_wind_shear_data::n, bufr2tac_subset_state::r, temp_raw_data::raw, temp_raw_wind_shear_data::raw, bufr2tac_subset_state::rep, bufr2tac_subset_state::w, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x10 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 10.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 297 of file bufr2tac_x10.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_raw_point_data::h, bufr_atom_data::mask, temp_raw_data::n, bufr2tac_subset_state::r, temp_raw_data::raw, bufr2tac_subset_state::rep, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x11 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 11.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 500 of file bufr2tac_x11.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_raw_point_data::dd, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_raw_point_data::ff, bufr_atom_data::mask, MISSING_REAL, temp_raw_data::n, temp_raw_wind_shear_data::n, bufr2tac_subset_state::r, temp_raw_data::raw, temp_raw_wind_shear_data::raw, bufr2tac_subset_state::rep, bufr2tac_subset_state::val, bufr2tac_subset_state::w, temp_raw_wind_shear_point::ws_abv, temp_raw_wind_shear_point::ws_blw, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x12 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 12.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 751 of file bufr2tac_x12.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr_atom_data::mask, MISSING_REAL, temp_raw_data::n, bufr2tac_subset_state::r, temp_raw_data::raw, bufr2tac_subset_state::rep, temp_raw_point_data::T, temp_raw_point_data::Td, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x20 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 20.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 1354 of file bufr2tac_x20.c.
References bufr2tac_subset_state::a, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_b_sec8::Ch, temp_b_sec8::Cl, temp_b_sec8::Cm, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_b_sec8::h, bufr2tac_subset_state::ival, m_to_h(), bufr_atom_data::mask, temp_b::mask, temp_b_sec8::Nh, temp_b::s8, TEMP_SEC_8, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x22 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 22.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 289 of file bufr2tac_x22.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, kelvin_to_snTTT(), bufr_atom_data::mask, temp_a::mask, temp_a::s7, temp_b::s7, temp_c::s7, temp_d::s7, temp_sec7::sn, TEMP_SEC_7, temp_sec7::TwTwTw, bufr2tac_subset_state::val, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x31 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 31.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 120 of file bufr2tac_x31.c.
References bufr2tac_subset_state::a, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::i, bufr2tac_subset_state::itval, bufr2tac_subset_state::ival, bufr2tac_subset_state::k_itval, bufr2tac_subset_state::k_rep, bufr_atom_data::mask, temp_raw_data::n, temp_raw_wind_shear_data::n, bufr2tac_subset_state::r, bufr2tac_subset_state::rep, TEMP_NMAX_POINTS, bufr2tac_subset_state::w, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
int temp_parse_x33 | ( | struct temp_chunks * | t, |
struct bufr2tac_subset_state * | s | ||
) |
Parse a expanded descriptor with X = 33.
t | pointer to a struct temp_chunks where to set the results |
s | pointer to a struct bufr2tac_subset_state where is stored needed information in sequential analysis |
It returns 0 if success, 1 if problems when processing. If a descriptor is not processed returns 0 anyway
Definition at line 100 of file bufr2tac_x33.c.
References bufr2tac_subset_state::a, temp_chunks::a, temp_chunks::b, BUFR2TAC_DEBUG_LEVEL, bufr2tac_set_error(), temp_chunks::c, temp_chunks::d, bufr_atom_data::desc, DESCRIPTOR_VALUE_MISSING, temp_acd_sec1::im, temp_b_sec1::im, bufr2tac_subset_state::ival, bufr_atom_data::mask, temp_a::s1, temp_b::s1, temp_c::s1, temp_d::s1, and bufr_descriptor::y.
Referenced by parse_subset_as_temp().
three_bytes_to_uint | ( | const unsigned char * | source | ) |
returns the integer value from an array of three bytes, most significant first
Definition at line 30 of file bufr2tac_utils.c.
Referenced by read_bufr().
int time_period_duration | ( | struct bufr2tac_subset_state * | s | ) |
Get time period duration in seconds.
s | pinter to struct bufr2tac_subset_state |
Returns -1 if no duration is computed. Otherwise returns time duration in seconds
Definition at line 33 of file bufr2tac_x04.c.
References DESCRIPTOR_VALUE_MISSING, bufr2tac_subset_state::itmask, bufr2tac_subset_state::itval, bufr2tac_subset_state::jtmask, bufr2tac_subset_state::jtval, bufr2tac_subset_state::k_itval, and bufr2tac_subset_state::k_jtval.
Referenced by syn_parse_x12(), syn_parse_x13(), and syn_parse_x14().
char * total_snow_depth_to_sss | ( | char * | target, |
double | r | ||
) |
converts tatal snow depth in m to sss (code table 3889)
r | recent snow depth in meters |
target | the resulting string |
Definition at line 124 of file bufr2tac_x13.c.
Referenced by syn_parse_x13().
char * vism_to_VV | ( | char * | target, |
double | V | ||
) |
Convert horizontal visibilty in meters to a VV string.
V | the visibility (m) |
target | the resulting VV string |
Definition at line 226 of file bufr2tac_x20.c.
Referenced by syn_parse_x20().
char * wind_to_dndnfnfnfn | ( | char * | target, |
double | dd, | ||
double | ff | ||
) |
Definition at line 93 of file bufr2tac_x11.c.
References MISSING_REAL.
Referenced by parse_temp_raw_data().
int YYYYMMDDHHmm_to_met_datetime | ( | struct met_datetime * | t, |
const char * | source | ||
) |
Parse the string YYYYMMDDHHmm[ss] and set a struct met_datetime.
source | string with date in YYYYMMDDHHmm[ss] format |
t | pointer to a struct met_datetime where to set the results |
Definition at line 156 of file bufr2tac_utils.c.
References met_datetime::datime, met_datetime::t, and met_datetime::tim.
Referenced by parse_subset_as_buoy(), parse_subset_as_climat(), parse_subset_as_synop(), and parse_subset_as_temp().
|
extern |
Set debug level. 0 -> no debug. 1 -> debug. 2 -> verbose debug
Definition at line 31 of file bufr2tac.c.
Referenced by bufr2tac_set_debug_level(), buoy_parse_x01(), buoy_parse_x02(), buoy_parse_x04(), buoy_parse_x05(), buoy_parse_x06(), buoy_parse_x07(), buoy_parse_x08(), buoy_parse_x10(), buoy_parse_x11(), buoy_parse_x12(), buoy_parse_x13(), buoy_parse_x14(), buoy_parse_x20(), buoy_parse_x22(), buoy_parse_x31(), buoy_parse_x33(), climat_parse_x01(), climat_parse_x02(), climat_parse_x04(), climat_parse_x05(), climat_parse_x06(), climat_parse_x07(), climat_parse_x08(), climat_parse_x10(), climat_parse_x11(), climat_parse_x12(), climat_parse_x13(), climat_parse_x14(), parse_subset_sequence(), syn_parse_x01(), syn_parse_x02(), syn_parse_x04(), syn_parse_x05(), syn_parse_x06(), syn_parse_x07(), syn_parse_x08(), syn_parse_x10(), syn_parse_x11(), syn_parse_x12(), syn_parse_x13(), syn_parse_x14(), syn_parse_x20(), syn_parse_x22(), syn_parse_x31(), temp_parse_x01(), temp_parse_x02(), temp_parse_x04(), temp_parse_x05(), temp_parse_x06(), temp_parse_x07(), temp_parse_x08(), temp_parse_x10(), temp_parse_x11(), temp_parse_x12(), temp_parse_x20(), temp_parse_x22(), temp_parse_x31(), and temp_parse_x33().