1#ifndef HA_CLOSURE_ANALYSIS_TIMESERIES_H
2#define HA_CLOSURE_ANALYSIS_TIMESERIES_H
5#include <cjson/cJSON.h>
17#define IBM_URL_SIZE 250
20#define IBM_PRECIPITATION_ID 49097
21#define IBM_MIN_TEMPERATURE_ID 26019
22#define IBM_MAX_TEMPERATURE_ID 26018
25#define IBM_MAX_RESPONSE_LENGTH 2000
71 const char* start_time,
IBM token handler.
Definition: authenticate.h:25
Request response data containing IBM EMS timeseries data.
Definition: timeseries.h:43
time_t start
Data start time (unix timestamp in seconds).
Definition: timeseries.h:44
int32_t count
Number of returned values.
Definition: timeseries.h:48
time_t end
Data end time (unix timestamp in seconds).
Definition: timeseries.h:45
Request structure for IBM EMS timeseries data.
Definition: timeseries.h:34
time_t end
The end time as UNIX epoch time.
Definition: timeseries.h:39
uint16_t layer_id
The layer ID of interest (obtained from IBM query)
Definition: timeseries.h:35
float longitude
The longitude of interest.
Definition: timeseries.h:37
time_t start
The start time as UNIX epoch time.
Definition: timeseries.h:38
float latitude
The latitude of interest.
Definition: timeseries.h:36
Structure of a location (i.e. program location)
Definition: transform.h:33
Locations lookup table structure.
Definition: transform.h:49
void IBM_TimeseriesToDB(IBM_TimeseriesReq_TypeDef *req_info, IBM_TimeseriesDataset_TypeDef *dataset, T_LocationLookup_TypeDef *location, PGconn *psql_conn)
Write timeseries dataset to PostgreSQL table.
Definition: timeseries.c:421
CURLcode IBM_GetTimeseries(IBM_AuthHandle_TypeDef *auth_handle, IBM_TimeseriesReq_TypeDef *request, IBM_TimeseriesDataset_TypeDef *dataset, uint8_t alt_flag)
Get timeseries data from IBM EMS.
Definition: timeseries.c:50
#define IBM_MAX_RESPONSE_LENGTH
Max number of values in response.
Definition: timeseries.h:25
void IBM_BuildTSDatabase(T_LocationsLookup_TypeDef *locations, const char *start_time, const char *end_time, PGconn *psql_conn)
Definition: timeseries.c:526
int8_t IBM_TimeseriesToCSV(IBM_TimeseriesReq_TypeDef *request, IBM_TimeseriesDataset_TypeDef *dataset)
Write timeseries dataset to .csv file.
Definition: timeseries.c:333
IBM_TimeseriesDataset_TypeDef IBM_TimeseriesFromCSV(const char *filename)
Load IBM timeseries dataset from local .csv file.
Definition: timeseries.c:371
static const char * IBM_REQUEST_URL
IBM URL.
Definition: timeseries.h:28
static const char * IBM_ALT_REQUEST_URL
Alternative IBM URL.
Definition: timeseries.h:31