1 /** ---------------------------------------------------------------------------
2 * This software is in the public domain, furnished "as is", without technical
3 * support, and with no warranty, express or implied, as to its usefulness for
7 * Interface for C programs to log remotely to a gauger server
9 * Author: Bartlomiej Polot
10 * -------------------------------------------------------------------------*/
20 #define GAUGER(category, counter, value, unit)\
22 char* __gauger_v[10];\
25 if(!(__gauger_p=fork())){\
29 sprintf(__gauger_s,"%Lf", (long double) (value));\
30 __gauger_v[0] = "gauger";\
31 __gauger_v[1] = "-n";\
32 __gauger_v[2] = (char*) (counter); \
33 __gauger_v[3] = "-d";\
34 __gauger_v[4] = __gauger_s;\
35 __gauger_v[5] = "-u";\
36 __gauger_v[6] = (char*) (unit); \
37 __gauger_v[7] = "-c";\
38 __gauger_v[8] = (char*) (category); \
39 __gauger_v[9] = (char*) NULL;\
40 execvp("gauger",__gauger_v);\
46 waitpid(__gauger_p,NULL,0);\
50 #define GAUGER_ID(category, counter, value, unit, id)\
52 char* __gauger_v[12];\
55 if(!(__gauger_p=fork())){\
59 sprintf(__gauger_s,"%Lf", (long double) (value));\
60 __gauger_v[0] = "gauger";\
61 __gauger_v[1] = "-n";\
62 __gauger_v[2] = (char*) (counter); \
63 __gauger_v[3] = "-d";\
64 __gauger_v[4] = __gauger_s;\
65 __gauger_v[5] = "-u";\
66 __gauger_v[6] = (char*) (unit); \
67 __gauger_v[7] = "-i";\
69 __gauger_v[9] = "-c";\
70 __gauger_v[10] = (char *) (category); \
71 __gauger_v[11] = (char *) NULL;\
72 execvp("gauger",__gauger_v);\
78 waitpid(__gauger_p, NULL, 0);\
88 #define GAUGER(category, counter, value, unit)\
90 char __gauger_commandline[MAX_PATH];\
92 snprintf (__gauger_commandline, MAX_PATH, "gauger.py -n \"%s\" -d \"%Lf\" -u \"%s\" -c \"%s\"",\
93 (counter), (long double) (value), (unit), (category)); \
94 __gauger_commandline[MAX_PATH - 1] = '\0';\
95 system (__gauger_commandline);\
98 #define GAUGER_ID(category, counter, value, unit, id)\
100 char __gauger_commandline[MAX_PATH];\
102 snprintf (__gauger_commandline, MAX_PATH, "gauger.py -n \"%s\" -d \"%Lf\" -u \"%s\" -i \"%s\" -c \"%s\"",\
103 (counter), (long double) (value), (unit), (id), (category)); \
104 __gauger_commandline[MAX_PATH - 1] = '\0';\
105 system (__gauger_commandline);\