projects
/
rrdtool.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
consider fgets return value
[rrdtool.git]
/
src
/
rrd.h
diff --git
a/src/rrd.h
b/src/rrd.h
index
a428370
..
412e20a
100644
(file)
--- a/
src/rrd.h
+++ b/
src/rrd.h
@@
-53,10
+53,17
@@
extern "C" {
#define _RRDLIB_H
#include <sys/types.h> /* for off_t */
#define _RRDLIB_H
#include <sys/types.h> /* for off_t */
+
+#ifndef WIN32
#include <unistd.h> /* for off_t */
#include <unistd.h> /* for off_t */
+#else
+ typedef size_t ssize_t;
+ typedef long off_t;
+#endif
+
#include <time.h>
#include <stdio.h> /* for FILE */
#include <time.h>
#include <stdio.h> /* for FILE */
-
+#include <string.h>
/* Formerly rrd_nan_inf.h */
#ifndef DNAN
/* Formerly rrd_nan_inf.h */
#ifndef DNAN
@@
-79,13
+86,22
@@
extern "C" {
/* information about an rrd file */
typedef struct rrd_file_t {
/* information about an rrd file */
typedef struct rrd_file_t {
- int fd; /* file descriptor if this rrd file */
- char *file_start; /* start address of an open rrd file */
- off_t header_len; /* length of the header of this rrd file */
- off_t file_len; /* total size of the rrd file */
- off_t pos; /* current pos in file */
+ size_t header_len; /* length of the header of this rrd file */
+ size_t file_len; /* total size of the rrd file */
+ size_t pos; /* current pos in file */
+ void *pvt;
} rrd_file_t;
} rrd_file_t;
+/* information used for the conventional file access methods */
+ typedef struct rrd_simple_file_t {
+ int fd; /* file descriptor of this rrd file */
+#ifdef HAVE_MMAP
+ char *file_start; /* start address of an open rrd file */
+ int mm_prot;
+ int mm_flags;
+#endif
+ } rrd_simple_file_t;
+
/* rrd info interface */
typedef struct rrd_blob_t {
unsigned long size; /* size of the blob */
/* rrd info interface */
typedef struct rrd_blob_t {
unsigned long size; /* size of the blob */
@@
-171,13
+187,7
@@
extern "C" {
time_t rrd_last(
int,
char **);
time_t rrd_last(
int,
char **);
- int rrd_lastupdate(
- int argc,
- char **argv,
- time_t *last_update,
- unsigned long *ds_cnt,
- char ***ds_namv,
- char ***last_ds);
+ int rrd_lastupdate(int argc, char **argv);
time_t rrd_first(
int,
char **);
time_t rrd_first(
int,
char **);
@@
-198,6
+208,7
@@
extern "C" {
unsigned long *,
char ***,
rrd_value_t **);
unsigned long *,
char ***,
rrd_value_t **);
+ int rrd_flushcached (int argc, char **argv);
void rrd_freemem(
void *mem);
void rrd_freemem(
void *mem);
@@
-209,6
+220,8
@@
extern "C" {
time_t last_up,
int argc,
const char **argv);
time_t last_up,
int argc,
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 are only thread-safe if no at-style time
specifications get used!!! */
@@
-217,20
+230,24
@@
extern "C" {
const char *_template,
int argc,
const char **argv);
const char *_template,
int argc,
const char **argv);
- int
rrd_fetch_r
(
- const char *filename,
- const char *cf,
- time_t *start,
- time_t *end,
- unsigned long *step,
- unsigned long *ds_cnt,
- char ***ds_namv,
- rrd_value_t **data);
+ int
rrd_fetch_r
(
+
const char *filename,
+
const char *cf,
+
time_t *start,
+
time_t *end,
+
unsigned long *step,
+
unsigned long *ds_cnt,
+
char ***ds_namv,
+
rrd_value_t **data);
int rrd_dump_r(
const char *filename,
char *outname);
int rrd_dump_r(
const char *filename,
char *outname);
- time_t rrd_last_r(
- const char *filename);
+ time_t rrd_last_r (const char *filename);
+ int rrd_lastupdate_r (const char *filename,
+ time_t *ret_last_update,
+ unsigned long *ret_ds_count,
+ char ***ret_ds_names,
+ char ***ret_last_ds);
time_t rrd_first_r(
const char *filename,
int rraindex);
time_t rrd_first_r(
const char *filename,
int rraindex);
@@
-261,11
+278,14
@@
extern "C" {
} rrd_context_t;
/* returns the current per-thread rrd_context */
} rrd_context_t;
/* returns the current per-thread rrd_context */
- rrd_context_t *rrd_get_context(
- void);
+ rrd_context_t *rrd_get_context(void);
+#ifdef WIN32
+/* this was added by the win32 porters Christof.Wegmann@exitgames.com */
+ rrd_context_t *rrd_force_new_context(void);
+#endif
-
int rrd_proc_start_end(
+int rrd_proc_start_end(
rrd_time_value_t *,
rrd_time_value_t *,
time_t *,
rrd_time_value_t *,
rrd_time_value_t *,
time_t *,
@@
-299,6
+319,14
@@
extern "C" {
/* int rrd_test_error_r (rrd_context_t *); */
/* char *rrd_get_error_r (rrd_context_t *); */
/* int rrd_test_error_r (rrd_context_t *); */
/* char *rrd_get_error_r (rrd_context_t *); */
+/** UTILITY FUNCTIONS */
+
+ long rrd_random(void);
+
+ int rrd_add_ptr(void ***dest, size_t *dest_size, void *src);
+ int rrd_add_strdup(char ***dest, size_t *dest_size, char *src);
+ void rrd_free_ptrs(void ***src, size_t *cnt);
+
/*
* 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
/*
* 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
@@
-368,6
+396,18
@@
extern "C" {
int rrd_lock(
rrd_file_t *file)
RRD_DEPRECATED;
int rrd_lock(
rrd_file_t *file)
RRD_DEPRECATED;
+ void rrd_notify_row(
+ rrd_file_t *rrd_file,
+ int rra_idx,
+ unsigned long rra_row,
+ time_t rra_time)
+ RRD_DEPRECATED;
+ unsigned long rrd_select_initial_row(
+ rrd_file_t *rrd_file,
+ int rra_idx,
+ rra_def_t *rra
+ )
+ RRD_DEPRECATED;
#endif /* defined(_RRD_TOOL_H) || defined(RRD_EXPORT_DEPRECATED) */
#endif /* _RRDLIB_H */
#endif /* defined(_RRD_TOOL_H) || defined(RRD_EXPORT_DEPRECATED) */
#endif /* _RRDLIB_H */