/*****************************************************************************
- * RRDtool 1.3.2 Copyright by Tobi Oetiker, 1997-2008
+ * RRDtool 1.4.3 Copyright by Tobi Oetiker, 1997-2010
*****************************************************************************
* rrdlib.h Public header file for librrd
*****************************************************************************
#ifndef WIN32
#include <unistd.h> /* for off_t */
#else
+#ifdef _MSC_VER
+ typedef int mode_t;
+ #define strtoll _strtoi64
+#endif
typedef size_t ssize_t;
typedef long off_t;
#endif
struct rrd_info_t *next;
} rrd_info_t;
+ typedef size_t (* rrd_output_callback_t)(
+ const void *,
+ size_t,
+ void *);
/* main function blocks */
int rrd_create(
unsigned long *,
char ***,
rrd_value_t **);
- int rrd_cmd_flush (int argc, char **argv);
+ int rrd_flushcached (int argc, char **argv);
void rrd_freemem(
void *mem);
const char **argv);
rrd_info_t *rrd_info_r(
char *);
-/* NOTE: rrd_update_r are only thread-safe if no at-style time
- specifications get used!!! */
+/* NOTE: rrd_update_r and rrd_update_v_r are only thread-safe if no at-style
+ time specifications get used!!! */
int rrd_update_r(
const char *filename,
const char *_template,
int argc,
const char **argv);
+ int rrd_update_v_r(
+ const char *filename,
+ const char *_template,
+ int argc,
+ const char **argv,
+ rrd_info_t * pcdp_summary);
int rrd_fetch_r (
const char *filename,
const char *cf,
const char *filename,
int rraindex);
+ int rrd_dump_cb_r(
+ const char *filename,
+ int opt_header,
+ rrd_output_callback_t cb,
+ void *user);
+
/* Transplanted from rrd_parsetime.h */
typedef enum {
ABSOLUTE_TIME,
long rrd_random(void);
+ int rrd_add_ptr_chunk(void ***dest, size_t *dest_size, void *src,
+ size_t *alloc, size_t chunk);
int rrd_add_ptr(void ***dest, size_t *dest_size, void *src);
int rrd_add_strdup(char ***dest, size_t *dest_size, char *src);
+ int rrd_add_strdup_chunk(char ***dest, size_t *dest_size, char *src,
+ size_t *alloc, size_t chunk);
void rrd_free_ptrs(void ***src, size_t *cnt);
+ int rrd_mkdir_p(const char *pathname, mode_t mode);
+
/*
* The following functions are _internal_ functions needed to read the raw RRD
* files. Since they are _internal_ they may change with the file format and
const void *buf,
size_t count)
RRD_DEPRECATED;
+ void rrd_flush(
+ rrd_file_t *rrd_file)
+ RRD_DEPRECATED;
off_t rrd_seek(
rrd_file_t *rrd_file,
off_t off,