summaryrefslogtreecommitdiffstats
path: root/src/plugin.h
blob: 6aaf7b5e4bb2d7f8cc6a90c86edec72400d38160 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef PLUGIN_H
#define PLUGIN_H

#include <dbus/dbus.h>

#define PLUGIN_ROOT_INTF "org.mageia.monitoring"
#define PLUGIN_ROOT_PATH "/org/mageia/monitoring"

typedef struct plugin_s plugin_t;
struct plugin_s {
    const char *name;
    const char *path;
    int fd;
    void *priv;
    int (*init)(plugin_t *plugin, DBusConnection *connection);
    void (*handle_incoming)(plugin_t *plugin, DBusConnection *connection);
    DBusHandlerResult (*handle_message)(DBusConnection *connection, DBusMessage *message, plugin_t *plugin);
    void (*deinit)(plugin_t *plugin, DBusConnection *connection);
};

#endif /* PLUGIN_H */