2006-06-13 21:34:36 +02:00
|
|
|
#ifndef _PLUGINS_H_
|
|
|
|
#define _PLUGINS_H_
|
|
|
|
|
|
|
|
#include "list.h"
|
|
|
|
#include "logging.h"
|
|
|
|
|
2006-09-30 20:27:56 +02:00
|
|
|
#define PLUGIN_RRD 0x01
|
|
|
|
#define PLUGIN_NET 0x02
|
|
|
|
|
2006-06-13 21:34:36 +02:00
|
|
|
struct sammler_plugin {
|
|
|
|
struct list_head list;
|
|
|
|
char *name;
|
2006-09-30 17:10:32 +02:00
|
|
|
unsigned int interval;
|
|
|
|
unsigned long lastprobe;
|
2006-10-07 20:37:30 +02:00
|
|
|
int (*init) (void);
|
|
|
|
int (*fini) (void);
|
|
|
|
int (*probe) (void);
|
2006-09-30 17:10:32 +02:00
|
|
|
char * (*get_ds) (int ds_id);
|
2006-06-13 21:34:36 +02:00
|
|
|
};
|
|
|
|
|
2006-09-30 20:27:56 +02:00
|
|
|
void plugin_init(int flags);
|
2006-06-13 21:34:36 +02:00
|
|
|
|
|
|
|
void plugins_probe(void);
|
|
|
|
|
2006-09-30 20:27:56 +02:00
|
|
|
struct sammler_plugin * plugin_lookup(char *name);
|
2006-06-13 21:34:36 +02:00
|
|
|
|
2006-10-07 20:48:20 +02:00
|
|
|
int probe_submit(struct sammler_plugin *plugin, char *filename, int ds_id, const char *fmt, ... );
|
2006-06-13 21:34:36 +02:00
|
|
|
|
|
|
|
int strsplit(char *string, char **fields, size_t size);
|
|
|
|
|
|
|
|
#endif /* _PLUGINS_H_ */
|