wmpager: drop tooltip suport
[dockapps.git] / wmweather+ / convert.h
blob0582c629dbc016544005553b9982122dccfb98dc
1 #ifndef PI
2 # define PI 3.1415926535897932384626433832795029L
3 #endif
5 /*
6 * Note that all floating point calculations are rounded with .5 going up.
7 * Since C automatically truncates, adding .5 to every calculation does
8 * rounding for us nicely.
10 * To indicate unavailable data
11 * 999 is used for temperature
12 * x<0 is used for rh, pressure, and windspeed
15 /* Calculations */
16 int rh_C(int temp_C, int dewpt_C);
17 int rh_F(int temp_F, int dewpt_F);
18 int heatindex_C(int temp_C, int rh);
19 int heatindex_F(int temp_F, int rh);
20 int windchill_C(int temp_C, int windspeed); /* knots */
21 int windchill_F(int temp_F, int windspeed); /* knots */
23 /* Length Conversions */
24 int in2cm(int in);
25 float m2mi(int meters);
27 /* Windspeed Conversions */
28 int knots2mph(int knots);
29 int knots2kph(int knots);
30 int knots2mps(int knots);
31 int knots2beaufort(int knots);
32 int kph2knots(int kph);
33 int mps2knots(int mps);
35 /* Temperature Conversions */
36 int temp_C2F(int temp_C);
37 int temp_F2C(int temp_F);
39 /* Pressure Conversions */
40 float inHg2mmHg(float inHg);
41 float inHg2hPa(float inHg);
42 float inHg2atm(float inHg);
43 float hPa2inHg(float hPa);
45 /* Time Conversions */
46 time_t mkgmtime(struct tm *tm);
47 int utc2local(int hm, int *mon, int *day, int *year, int *wday);
48 int local2utc(int hm, int *mon, int *day, int *year, int *wday);
49 void fix_date(int *month, int *day, int *year, int *wday);
50 int hm2min(int hm);
52 /* Letter Case (destructive!) */
53 char *str_upper(char *str);
54 char *str_lower(char *str);
56 /* Angle conversions */
57 double rad2deg(double angle);
58 double deg2rad(double angle);
60 /* Date conversions */
61 int mdy2doy(int mn, int dy, int y);
62 double mdy2jd(int year, int month, int day);
63 double jd2jcent(double jd);
64 double jcent2jd(double t);
66 /* Lat/Long conversions */
67 int str2dd(char *s, double *lat, double *lon);