wmpager: add missing Makefile.am
[dockapps.git] / wmweather+ / forecast.h
blob7c1e6c4eace2fa9545f18a8735d5e7ed10d7991b
1 #ifndef FORECAST_H
2 #define FORECAST_H
4 /* functions to manage the 'current forecast' */
5 struct forecast *current_forecast_get(void);
6 void current_forecast_next(int dir);
8 struct forecast {
9 char ID[4]; /* Forecast type ("AVN", "MRF", etc) */
10 char *station; /* station name */
11 time_t last_update; /* last updated time */
12 signed char month; /* 0, 1 - 12 */
13 signed char day; /* -1, 1 - 31 */
14 short year; /* -1, number */
15 signed char wday; /* -1, 0-6 */
16 signed char hour; /* -1, 0 - 23 (local) */
17 short low; /* 999, -210 - 390 (degrees F) */
18 short high; /* 999, -210 - 390 (degrees F) */
19 short temp; /* 999, -210 - 390 (degrees F) */
20 short dewpt; /* 999, -210 - 390 (degrees F) */
21 signed char rh; /* -1, 0 - 100 (%) */
22 short winddir; /* -1, 0 - 16 (direction) */
23 short windspeed; /* -1, 0 - MAX */
24 short heatindex; /* 999, -99 - 199 (degrees F) */
25 short windchill; /* 999, -99 - 199 (degrees F) */
26 short precipamt; /* -1, 0 - 7 (amount code) */
27 short snowamt; /* -1, 0 - 8 (amount code) */
28 signed char sky; /* -1, 0-4 (condition) */
29 signed char vis; /* 7, 1-7 (status code) */
30 signed char obs; /* 0, 0-3 (type) */
31 signed char pcp_total; /* 0, 0-100 (percent chance) */
32 signed char frz; /* 0, 0-100 (percent chance) */
33 signed char snow; /* 0, 0-100 (percent chance) */
34 signed char rain; /* 0, 0-100 (percent chance) */
35 signed char tstorm; /* 0, 0-100 (percent chance) */
36 signed char svtstorm; /* 0, 0-100 (percent chance) */
37 double moon; /* NAN, -1 - 1 (percent and wax/wane) */
38 time_t time; /* -1, time_t value */
41 void add_forecast(struct forecast *f, char *ID, char *station);
42 time_t forecast_time(struct forecast *f);
43 time_t parse_time_string(char *s);
44 time_t find_next_time(char *file, char *pat, int minutes);
45 void reset_forecast(struct forecast *f);
47 #endif