Updates from Bernhard Fischer rep dot nop gmail com
[rrdtool.git] / src / rrd_tool.h
index f8ab9c4..4f43dbf 100644 (file)
@@ -4,7 +4,7 @@
  * rrd_tool.h   Common Header File
  *****************************************************************************/
 #ifdef  __cplusplus
-extern "C" {
+extern    "C" {
 #endif
 
 #ifndef _RRD_TOOL_H
@@ -22,19 +22,29 @@ extern "C" {
 
 /* Win32 only includes */
 
-#include <float.h>        /* for _isnan  */
-#include <io.h>           /* for chdir   */
-
-struct tm* localtime_r(const time_t *timep, struct tm* result);
-char* ctime_r(const time_t *timep, char* result);
-struct tm* gmtime_r(const time_t *timep, struct tm* result);
-char *strtok_r(char *str, const char *sep, char **last);
+#include <float.h>      /* for _isnan  */
+#include <io.h>         /* for chdir   */
+
+    struct tm *localtime_r(
+    const time_t *timep,
+    struct tm *result);
+    char     *ctime_r(
+    const time_t *timep,
+    char *result);
+    struct tm *gmtime_r(
+    const time_t *timep,
+    struct tm *result);
+    char     *strtok_r(
+    char *str,
+    const char *sep,
+    char **last);
 
 #else
 
 /* unix-only includes */
 #if !defined isnan && !defined HAVE_ISNAN
-int isnan(double value);
+    int       isnan(
+    double value);
 #endif
 
 #endif
@@ -54,70 +64,124 @@ int isnan(double value);
 #define DIM(x) (sizeof(x)/sizeof(x[0]))
 
 /* rrd info interface */
-enum info_type   { RD_I_VAL=0,
-              RD_I_CNT,
-              RD_I_STR, 
-                  RD_I_INT };
-
-typedef union infoval { 
-    unsigned long u_cnt; 
-    rrd_value_t   u_val;
-    char         *u_str;
-    int                  u_int;
-} infoval;
-
-typedef struct info_t {
-    char            *key;
-    enum info_type  type;
-    union infoval   value;
-    struct info_t   *next;
-} info_t;
-
-info_t *rrd_info(int, char **);
-int rrd_lastupdate(int argc, char **argv, time_t *last_update,
-                unsigned long *ds_cnt, char ***ds_namv, char ***last_ds);
-info_t *rrd_update_v(int, char **);
-char * sprintf_alloc(char *, ...);
-info_t *info_push(info_t *, char *, enum info_type, infoval);
+    enum info_type { RD_I_VAL = 0,
+        RD_I_CNT,
+        RD_I_STR,
+        RD_I_INT
+    };
+
+    typedef union infoval {
+        unsigned long u_cnt;
+        rrd_value_t u_val;
+        char     *u_str;
+        int       u_int;
+    } infoval;
+
+    typedef struct info_t {
+        char     *key;
+        enum info_type type;
+        union infoval value;
+        struct info_t *next;
+    } info_t;
+
+    info_t   *rrd_info(
+    int,
+    char **);
+    int       rrd_lastupdate(
+    int argc,
+    char **argv,
+    time_t *last_update,
+    unsigned long *ds_cnt,
+    char ***ds_namv,
+    char ***last_ds);
+    info_t   *rrd_update_v(
+    int,
+    char **);
+    char     *sprintf_alloc(
+    char *,
+    ...);
+    info_t   *info_push(
+    info_t *,
+    char *,
+    enum info_type,
+    infoval);
 
 /* HELPER FUNCTIONS */
 
-int PngSize(FILE *, long *, long *);
-
-int rrd_create_fn(const char *file_name, rrd_t *rrd);
-int rrd_fetch_fn(const char *filename, enum cf_en cf_idx,
-                time_t *start,time_t *end,
-                unsigned long *step,
-                unsigned long *ds_cnt,
-                char        ***ds_namv,
-                rrd_value_t **data);
-
-void rrd_free(rrd_t *rrd);
-void rrd_freemem(void *mem);
-void rrd_init(rrd_t *rrd);
-
-rrd_file_t* rrd_open(const char * const file_name, rrd_t *rrd, unsigned rdwr);
-int rrd_close(rrd_file_t* rrd_file);
-ssize_t rrd_read(rrd_file_t* rrd_file, void*buf, size_t count);
-ssize_t rrd_write(rrd_file_t* rrd_file, const void*buf, size_t count);
-void rrd_flush(rrd_file_t* rrd_file);
-off_t rrd_seek(rrd_file_t* rrd_file, off_t off, int whence);
-off_t rrd_tell(rrd_file_t* rrd_file);
-int readfile(const char *file, char **buffer, int skipfirst);
-
-#define RRD_READONLY    0
-#define RRD_READWRITE   1
-#define RRD_CREAT       2
-
-enum cf_en cf_conv(const char *string);
-enum dst_en dst_conv(char *string);
-long ds_match(rrd_t *rrd,char *ds_nam);
-double rrd_diff(char *a, char *b);
+    int       PngSize(
+    FILE *,
+    long *,
+    long *);
+
+    int       rrd_create_fn(
+    const char *file_name,
+    rrd_t *rrd);
+    int       rrd_fetch_fn(
+    const char *filename,
+    enum cf_en cf_idx,
+    time_t *start,
+    time_t *end,
+    unsigned long *step,
+    unsigned long *ds_cnt,
+    char ***ds_namv,
+    rrd_value_t **data);
+
+    void      rrd_free(
+    rrd_t *rrd);
+    void      rrd_freemem(
+    void *mem);
+    void      rrd_init(
+    rrd_t *rrd);
+
+    rrd_file_t *rrd_open(
+    const char *const file_name,
+    rrd_t *rrd,
+    unsigned rdwr);
+    int       rrd_close(
+    rrd_file_t *rrd_file);
+    ssize_t   rrd_read(
+    rrd_file_t *rrd_file,
+    void *buf,
+    size_t count);
+    ssize_t   rrd_write(
+    rrd_file_t *rrd_file,
+    const void *buf,
+    size_t count);
+    void      rrd_flush(
+    rrd_file_t *rrd_file);
+    off_t     rrd_seek(
+    rrd_file_t *rrd_file,
+    off_t off,
+    int whence);
+    off_t     rrd_tell(
+    rrd_file_t *rrd_file);
+    int       readfile(
+    const char *file,
+    char **buffer,
+    int skipfirst);
+
+#define RRD_READONLY    (1<<0)
+#define RRD_READWRITE   (1<<1)
+#define RRD_CREAT       (1<<2)
+#define RRD_READAHEAD   (1<<3)
+#define RRD_COPY        (1<<4)
+
+    enum cf_en cf_conv(
+    const char *string);
+    enum dst_en dst_conv(
+    char *string);
+    long      ds_match(
+    rrd_t *rrd,
+    char *ds_nam);
+    double    rrd_diff(
+    char *a,
+    char *b);
 
     /* rrd_strerror is thread safe, but still it uses a global buffer
        (but one per thread), thus subsequent calls within a single
        thread overwrite the same buffer */
-const char *rrd_strerror(int err);
+    const char *rrd_strerror(
+    int err);
 
 #endif