00001 #ifndef _SM_SERVER_H
00002 #define _SM_SERVER_H
00003
00004 #include "statemachine.h"
00005 #include <dbus/dbus-glib.h>
00006
00007 typedef struct SMServer SMServer;
00008 typedef struct SMServerClass SMServerClass;
00009
00010 struct SMServer
00011 {
00012 GObject parent;
00013
00014
00015 DBusGConnection *bus;
00016 GHashTable *machines;
00017 };
00018
00019 struct SMServerClass
00020 {
00021 GObjectClass parent;
00022 };
00023
00024 #define SM_TYPE_SERVER (sm_server_get_type ())
00025 #define SM_SERVER(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), SM_TYPE_SERVER, SMServer))
00026 #define SM_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SM_TYPE_SERVER, SMServerClass))
00027 #define SM_IS_SERVER(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), SM_TYPE_SERVER))
00028 #define SM_IS_SERVER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SM_TYPE_SERVER))
00029 #define SM_SERVER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SM_TYPE_SERVER, SMServerClass))
00030
00031 GType sm_server_get_type (void);
00032
00033 gboolean sm_server_create_machine (SMServer *server, const char *name, GError **error);
00034
00035 gboolean sm_server_get_machines (SMServer *server, GPtrArray **machines, GError **error);
00036
00037 #endif