diff options
author | Søren Sandmann Pedersen <ssp@localhost.(none)> | 2008-10-10 20:53:48 -0400 |
---|---|---|
committer | Søren Sandmann Pedersen <ssp@localhost.(none)> | 2008-10-10 20:53:48 -0400 |
commit | a96167ed8bc4aa40932154729a15c70a999b81b1 (patch) | |
tree | d3b3d45d42f7f61cd20c0d903ad58cb69f000437 | |
parent | 7b8b09f2a3108653b31476c60032301854014513 (diff) |
Move dbw into nul namespace
-rw-r--r-- | dbw-example.c | 36 | ||||
-rw-r--r-- | dbw.c | 174 | ||||
-rw-r--r-- | libnul.h | 76 |
3 files changed, 143 insertions, 143 deletions
diff --git a/dbw-example.c b/dbw-example.c index 0dc245d..68946fa 100644 --- a/dbw-example.c +++ b/dbw-example.c @@ -9,7 +9,7 @@ */ static gboolean -on_do_stuff (DbwContext *context, int32_t birnan, uint32_t fish, gpointer data) +on_do_stuff (nul_dbus_Context *context, int32_t birnan, uint32_t fish, gpointer data) { g_print ("do stuff called: ..."); @@ -52,7 +52,7 @@ load_image (gpointer data, const char *image, int *result) *result = 87; } -static DbwService * +static nul_dbus_service_t * make_service1 (void) { return nul_dbus_session_service ( @@ -67,7 +67,7 @@ make_service1 (void) nul_dbus_method ( "do_stuff", - (DbwFunction)on_do_stuff, + (nul_dbus_Function)on_do_stuff, nul_dbus_parameter_in ("birnan", nul_dbus_type_int32()), nul_dbus_parameter_in ("fish", nul_dbus_type_uint32()), nul_dbus_parameter_out ("emfle", nul_dbus_type_string()), @@ -76,7 +76,7 @@ make_service1 (void) nul_dbus_method ( "another_method", - (DbwFunction)on_another_method, + (nul_dbus_Function)on_another_method, nul_dbus_parameter_in ("n_times", nul_dbus_type_uint32()), NULL), @@ -87,7 +87,7 @@ make_service1 (void) NULL); } -static DbwService * +static nul_dbus_service_t * make_service2 (void) { return nul_dbus_session_service ( @@ -102,7 +102,7 @@ make_service2 (void) nul_dbus_method ( "load_image", - (DbwFunction)load_image, + (nul_dbus_Function)load_image, nul_dbus_parameter_in ("image", nul_dbus_type_string()), nul_dbus_parameter_out ("result", nul_dbus_type_int32()), NULL), @@ -121,7 +121,7 @@ on_do_stuff_reply (const char *emfle, const char *str, const GError *err, gpoint } static void -on_reply (int result, const GError *err, DbwService *service) +on_reply (int result, const GError *err, nul_dbus_service_t *service) { if (!err) g_print ("The result was %d\n", result); @@ -130,12 +130,12 @@ on_reply (int result, const GError *err, DbwService *service) nul_dbus_invoke (service, "/com/ssp/whatever/birnan/emfle/com.ssp.interface.do_stuff", - (DbwFunction)on_do_stuff_reply, NULL, + (nul_dbus_Function)on_do_stuff_reply, NULL, 100, 200); } -DbwService *service; -DbwService *service2; +nul_dbus_service_t *service; +nul_dbus_service_t *service2; static gboolean invokes (gpointer data) @@ -147,15 +147,15 @@ invokes (gpointer data) for (i = 0; i < 30000; ++i) { #if 0 - nul_dbus_service_stop (service); - nul_dbus_service_start (service); - nul_dbus_service_stop (service); - nul_dbus_service_start (service); + nul_dbus_service_t_stop (service); + nul_dbus_service_t_start (service); + nul_dbus_service_t_stop (service); + nul_dbus_service_t_start (service); #endif nul_dbus_invoke (service2, "/org/gnome/siv/org.gnome.siv.load_image", - (DbwFunction)on_reply, service, + (nul_dbus_Function)on_reply, service, "LOLCAT.PNG"); } @@ -170,12 +170,12 @@ main () service = make_service1 (); service2 = make_service2 (); - if (!nul_dbus_service_start (service2)) + if (!nul_dbus_service_t_start (service2)) { g_print ("siv already exists, asking it to load the images instead\n"); } - if (!nul_dbus_service_start (service)) + if (!nul_dbus_service_t_start (service)) { g_print ("Couldn't start the service\n"); } @@ -192,7 +192,7 @@ main () void bah() { - DbwService *service = nul_dbus_session_service ( + nul_dbus_service_t *service = nul_dbus_session_service ( "org.gnome.ScreenSaver", nul_dbus_object ( "/", @@ -25,7 +25,7 @@ #define INTROSPECT_INTERFACE "org.freedesktop.DBus.Introspectable" #define INTROSPECT_METHOD "Introspect" -struct DbwService +struct nul_dbus_service_t { char *name; GPtrArray *objects; @@ -34,29 +34,29 @@ struct DbwService DBusBusType type; }; -struct DbwObject +struct nul_dbus_object_t { char *name; gpointer data; GPtrArray *interfaces; }; -struct DbwInterface +struct nul_dbus_interface_t { char *name; GPtrArray *members; }; -struct DbwMember +struct nul_dbus_member_t { char * name; /* For now only methods are supported, although * later we may also have properties and signals */ - DbwInterface * interface; /* containing interface */ + nul_dbus_interface_t * interface; /* containing interface */ - DbwFunction function; + nul_dbus_Function function; GPtrArray * parameters; int n_inputs; @@ -66,10 +66,10 @@ struct DbwMember nul_fun_def_t * reply_fun; }; -struct DbwParameter +struct nul_dbus_parameter_t { char * name; - DbwType * type; + nul_dbus_type_t * type; gboolean out; }; @@ -80,7 +80,7 @@ typedef enum STRING } Primitive; -struct DbwType +struct nul_dbus_type_t { Primitive type; }; @@ -343,7 +343,7 @@ idle_free (gpointer p) } static const char * -make_signature (DbwType *type) +make_signature (nul_dbus_type_t *type) { switch (type->type) { @@ -358,7 +358,7 @@ make_signature (DbwType *type) } static const char * -introspect (DbwObject *object) +introspect (nul_dbus_object_t *object) { GString *xml = g_string_new (NULL); int i; @@ -367,7 +367,7 @@ introspect (DbwObject *object) for (i = 0; i < object->interfaces->len; ++i) { - DbwInterface *interface = object->interfaces->pdata[i]; + nul_dbus_interface_t *interface = object->interfaces->pdata[i]; int j; g_string_append_printf ( @@ -375,7 +375,7 @@ introspect (DbwObject *object) for (j = 0; j < interface->members->len; ++j) { - DbwMember *member = interface->members->pdata[j]; + nul_dbus_member_t *member = interface->members->pdata[j]; int k; g_string_append_printf ( @@ -383,7 +383,7 @@ introspect (DbwObject *object) for (k = 0; k < member->parameters->len; ++k) { - DbwParameter *parameter = member->parameters->pdata[k]; + nul_dbus_parameter_t *parameter = member->parameters->pdata[k]; g_string_append_printf ( xml, @@ -408,7 +408,7 @@ introspect (DbwObject *object) static gboolean decode_message (DBusMessage *message, int n_parameters, - DbwParameter **parameters, + nul_dbus_parameter_t **parameters, nul_arg_t *args) { gboolean has_args; @@ -480,7 +480,7 @@ fail: static void encode_message (DBusMessage *message, int n_parameters, - DbwParameter **parameters, + nul_dbus_parameter_t **parameters, nul_arg_t *args) { DBusMessageIter iter; @@ -490,7 +490,7 @@ encode_message (DBusMessage *message, for (i = 0; i < n_parameters; ++i) { - DbwParameter *parameter = parameters[i]; + nul_dbus_parameter_t *parameter = parameters[i]; switch (parameter->type->type) { @@ -523,8 +523,8 @@ encode_message (DBusMessage *message, static DBusHandlerResult invoke (DBusConnection *connection, - DbwObject *object, - DbwMember *member, + nul_dbus_object_t *object, + nul_dbus_member_t *member, DBusMessage *message) { nul_arg_t *args = idle_free (g_new0 (nul_arg_t, member->parameters->len + 1)); @@ -535,7 +535,7 @@ invoke (DBusConnection *connection, /* Add the data pointer */ args[0].v_pointer = object->data; - if (!decode_message (message, member->n_inputs, (DbwParameter **)member->parameters->pdata, &(args[1]))) + if (!decode_message (message, member->n_inputs, (nul_dbus_parameter_t **)member->parameters->pdata, &(args[1]))) { error_reply = dbus_message_new_error (message, DBUS_ERROR_FAILED, "FIXME: generate a real error"); @@ -546,7 +546,7 @@ invoke (DBusConnection *connection, for (i = member->n_inputs; i < member->parameters->len; ++i) { - DbwParameter *parameter = member->parameters->pdata[i]; + nul_dbus_parameter_t *parameter = member->parameters->pdata[i]; g_assert (parameter->out); @@ -561,7 +561,7 @@ invoke (DBusConnection *connection, encode_message (reply, member->n_outputs, - (DbwParameter **)&(member->parameters->pdata[member->n_inputs]), + (nul_dbus_parameter_t **)&(member->parameters->pdata[member->n_inputs]), &(args[member->n_inputs + 1])); dbus_connection_send (connection, reply, NULL); @@ -583,7 +583,7 @@ message_function (DBusConnection *connection, const char *msg_path = dbus_message_get_path (message); const char *msg_interface = dbus_message_get_interface (message); const char *msg_member = dbus_message_get_member (message); - DbwObject *object = data; + nul_dbus_object_t *object = data; int i; g_assert (strcmp (object->name, msg_path) == 0); @@ -607,7 +607,7 @@ message_function (DBusConnection *connection, /* Normal method */ for (i = 0; i < object->interfaces->len; ++i) { - DbwInterface *interface = object->interfaces->pdata[i]; + nul_dbus_interface_t *interface = object->interfaces->pdata[i]; if (strcmp (msg_interface, interface->name) == 0) { @@ -615,7 +615,7 @@ message_function (DBusConnection *connection, for (j = 0; j < interface->members->len; ++j) { - DbwMember *member = interface->members->pdata[j]; + nul_dbus_member_t *member = interface->members->pdata[j]; if (strcmp (member->name, msg_member) == 0) return invoke (connection, object, member, message); @@ -697,13 +697,13 @@ get_connection (DBusBusType type, DBusError *err) return NULL; } -static DbwService * +static nul_dbus_service_t * make_service (const char *name, DBusBusType type, - DbwObject *object1, + nul_dbus_object_t *object1, va_list args) { - DbwService *service = g_new0 (DbwService, 1); + nul_dbus_service_t *service = g_new0 (nul_dbus_service_t, 1); service->name = g_strdup (name); @@ -722,13 +722,13 @@ make_service (const char *name, return service; } -DbwService * +nul_dbus_service_t * nul_dbus_session_service (const char *name, - DbwObject *object1, + nul_dbus_object_t *object1, ...) { va_list args; - DbwService *service; + nul_dbus_service_t *service; va_start (args, object1); @@ -740,7 +740,7 @@ nul_dbus_session_service (const char *name, } gboolean -nul_dbus_service_start (DbwService *service) +nul_dbus_service_t_start (nul_dbus_service_t *service) { DBusError err = DBUS_ERROR_INIT; int i; @@ -789,7 +789,7 @@ nul_dbus_service_start (DbwService *service) /* Register objects */ for (i = 0; i < service->objects->len; ++i) { - DbwObject *object = service->objects->pdata[i]; + nul_dbus_object_t *object = service->objects->pdata[i]; dbus_connection_register_object_path ( service->connection, object->name, &vtable, object); @@ -801,7 +801,7 @@ nul_dbus_service_start (DbwService *service) } void -nul_dbus_service_stop (DbwService *service) +nul_dbus_service_t_stop (nul_dbus_service_t *service) { int i; @@ -810,7 +810,7 @@ nul_dbus_service_stop (DbwService *service) for (i = 0; i < service->objects->len; ++i) { - DbwObject *object = service->objects->pdata[i]; + nul_dbus_object_t *object = service->objects->pdata[i]; dbus_connection_unregister_object_path ( service->connection, object->name); @@ -821,13 +821,13 @@ nul_dbus_service_stop (DbwService *service) service->running = FALSE; } -DbwObject * +nul_dbus_object_t * nul_dbus_object (const char *name, gpointer data, - DbwInterface *interface1, + nul_dbus_interface_t *interface1, ...) { - DbwObject *object = g_new0 (DbwObject, 1); + nul_dbus_object_t *object = g_new0 (nul_dbus_object_t, 1); va_list args; object->name = g_strdup (name); @@ -847,7 +847,7 @@ nul_dbus_object (const char *name, "org.freedesktop.DBus.Introspectable", nul_dbus_method ( "Introspect", - (DbwFunction)NULL, + (nul_dbus_Function)NULL, nul_dbus_parameter_out ( "data", nul_dbus_type_string()), @@ -857,12 +857,12 @@ nul_dbus_object (const char *name, return object; } -DbwInterface * +nul_dbus_interface_t * nul_dbus_interface (const char *name, - DbwMember *member1, + nul_dbus_member_t *member1, ...) { - DbwInterface *interface = g_new0 (DbwInterface, 1); + nul_dbus_interface_t *interface = g_new0 (nul_dbus_interface_t, 1); va_list parameters; int i; @@ -874,7 +874,7 @@ nul_dbus_interface (const char *name, for (i = 0; i < interface->members->len; ++i) { - DbwMember *member = interface->members->pdata[i]; + nul_dbus_member_t *member = interface->members->pdata[i]; member->interface = interface; } @@ -882,10 +882,10 @@ nul_dbus_interface (const char *name, return interface; } -static DbwType * -type_copy (const DbwType *type) +static nul_dbus_type_t * +type_copy (const nul_dbus_type_t *type) { - DbwType *copy = g_new0 (DbwType, 1); + nul_dbus_type_t *copy = g_new0 (nul_dbus_type_t, 1); copy->type = type->type; @@ -893,7 +893,7 @@ type_copy (const DbwType *type) } static nul_type_t -invoke_type_from_nul_dbus_type (DbwType *t) +invoke_type_from_nul_dbus_type (nul_dbus_type_t *t) { switch (t->type) { @@ -910,7 +910,7 @@ invoke_type_from_nul_dbus_type (DbwType *t) } static nul_fun_def_t * -make_fun_def (DbwMember *member) +make_fun_def (nul_dbus_member_t *member) { nul_type_t *types; int i; @@ -920,7 +920,7 @@ make_fun_def (DbwMember *member) for (i = 1; i < member->parameters->len; ++i) { - DbwParameter *par = member->parameters->pdata[i - 1]; + nul_dbus_parameter_t *par = member->parameters->pdata[i - 1]; if (par->out) types[i] = NUL_TYPE_POINTER; @@ -934,7 +934,7 @@ make_fun_def (DbwMember *member) } static nul_fun_def_t * -make_reply_fun (DbwMember *member) +make_reply_fun (nul_dbus_member_t *member) { nul_type_t *types; int i, n; @@ -944,7 +944,7 @@ make_reply_fun (DbwMember *member) n = 0; for (i = 0; i < member->parameters->len; ++i) { - DbwParameter *par = member->parameters->pdata[i]; + nul_dbus_parameter_t *par = member->parameters->pdata[i]; if (par->out) types[n++] = invoke_type_from_nul_dbus_type (par->type); @@ -956,13 +956,13 @@ make_reply_fun (DbwMember *member) return nul_fun_def_new (NUL_TYPE_VOID, n, types); } -DbwMember * +nul_dbus_member_t * nul_dbus_method (const char *name, - DbwFunction function, - DbwParameter *parameter1, + nul_dbus_Function function, + nul_dbus_parameter_t *parameter1, ...) { - DbwMember *member = g_new0 (DbwMember, 1); + nul_dbus_member_t *member = g_new0 (nul_dbus_member_t, 1); va_list parameters; int i; @@ -970,14 +970,14 @@ nul_dbus_method (const char *name, member->function = function; va_start (parameters, parameter1); - member->parameters = make_ptr_array ((DbwType *)parameter1, parameters); + member->parameters = make_ptr_array ((nul_dbus_type_t *)parameter1, parameters); va_end (parameters); member->n_inputs = 0; member->n_outputs = 0; for (i = 0; i < member->parameters->len; ++i) { - DbwParameter *par = member->parameters->pdata[i]; + nul_dbus_parameter_t *par = member->parameters->pdata[i]; if (par->out) { @@ -1001,12 +1001,12 @@ nul_dbus_method (const char *name, return member; } -static DbwParameter * +static nul_dbus_parameter_t * make_parameter (const char *name, - const DbwType *type, + const nul_dbus_type_t *type, gboolean out) { - DbwParameter *parameter = g_new0 (DbwParameter, 1); + nul_dbus_parameter_t *parameter = g_new0 (nul_dbus_parameter_t, 1); parameter->name = g_strdup (name); parameter->type = type_copy (type); @@ -1015,43 +1015,43 @@ make_parameter (const char *name, return parameter; } -DbwParameter * +nul_dbus_parameter_t * nul_dbus_parameter_in (const char *name, - const DbwType *type) + const nul_dbus_type_t *type) { return make_parameter (name, type, FALSE); } -DbwParameter * +nul_dbus_parameter_t * nul_dbus_parameter_out (const char *name, - const DbwType *type) + const nul_dbus_type_t *type) { return make_parameter (name, type, TRUE); } -static DbwType * +static nul_dbus_type_t * make_type (nul_type_t t) { - DbwType *type = idle_free (g_new0 (DbwType, 1)); + nul_dbus_type_t *type = idle_free (g_new0 (nul_dbus_type_t, 1)); type->type = t; return type; } -const DbwType * +const nul_dbus_type_t * nul_dbus_type_int32 (void) { return make_type (INT32); } -const DbwType * +const nul_dbus_type_t * nul_dbus_type_uint32 (void) { return make_type (UINT32); } -const DbwType * +const nul_dbus_type_t * nul_dbus_type_string (void) { return make_type (STRING); @@ -1059,9 +1059,9 @@ nul_dbus_type_string (void) typedef struct { - DbwFunction callback; + nul_dbus_Function callback; gpointer data; - DbwMember *method; + nul_dbus_member_t *method; } InvokeInfo; static void @@ -1089,7 +1089,7 @@ on_reply (DBusPendingCall *pending, args[n_outputs].v_pointer = NULL; /* GError */ if (!decode_message (reply, n_outputs, - (DbwParameter **)&(info->method->parameters->pdata[info->method->n_inputs]), + (nul_dbus_parameter_t **)&(info->method->parameters->pdata[info->method->n_inputs]), args)) { /* FIXME: generate an error into args[n_outputs + 1] */ @@ -1130,14 +1130,14 @@ decode_method_desc (const char *method_desc, return TRUE; } -static DbwObject * -find_object (DbwService *service, const char *name) +static nul_dbus_object_t * +find_object (nul_dbus_service_t *service, const char *name) { int i; for (i = 0; i < service->objects->len; ++i) { - DbwObject *object = service->objects->pdata[i]; + nul_dbus_object_t *object = service->objects->pdata[i]; if (strcmp (object->name, name) == 0) return object; @@ -1146,14 +1146,14 @@ find_object (DbwService *service, const char *name) return NULL; } -static DbwInterface * -find_interface (DbwObject *object, const char *name) +static nul_dbus_interface_t * +find_interface (nul_dbus_object_t *object, const char *name) { int i; for (i = 0; i < object->interfaces->len; ++i) { - DbwInterface *interface = object->interfaces->pdata[i]; + nul_dbus_interface_t *interface = object->interfaces->pdata[i]; if (strcmp (interface->name, name) == 0) return interface; @@ -1162,14 +1162,14 @@ find_interface (DbwObject *object, const char *name) return NULL; } -static DbwMember * -find_member (DbwInterface *interface, const char *name) +static nul_dbus_member_t * +find_member (nul_dbus_interface_t *interface, const char *name) { int i; for (i = 0; i < interface->members->len; ++i) { - DbwMember *member = interface->members->pdata[i]; + nul_dbus_member_t *member = interface->members->pdata[i]; if (strcmp (member->name, name) == 0) return member; @@ -1179,16 +1179,16 @@ find_member (DbwInterface *interface, const char *name) } void -nul_dbus_invoke (DbwService *service, +nul_dbus_invoke (nul_dbus_service_t *service, const char *method_desc, - DbwFunction callback, + nul_dbus_Function callback, gpointer data, ...) { char *object_str, *interface_str, *method_str; - DbwObject *object; - DbwInterface *interface; - DbwMember *method; + nul_dbus_object_t *object; + nul_dbus_interface_t *interface; + nul_dbus_member_t *method; DBusMessage *message; DBusMessageIter iter; DBusConnection *connection; @@ -1219,7 +1219,7 @@ nul_dbus_invoke (DbwService *service, for (i = 0; i < method->parameters->len; ++i) { - DbwParameter *parameter = method->parameters->pdata[i]; + nul_dbus_parameter_t *parameter = method->parameters->pdata[i]; int32_t i32; uint32_t u32; const char *s; @@ -112,55 +112,55 @@ gboolean nul_fd_is_watched (int fd); /* Implementing a service */ -typedef struct DbwService DbwService; -typedef struct DbwObject DbwObject; -typedef struct DbwMember DbwMember; -typedef struct DbwInterface DbwInterface; -typedef struct DbwType DbwType; -typedef struct DbwParameter DbwParameter; -typedef struct DbwArg DbwArg; +typedef struct nul_dbus_service_t nul_dbus_service_t; +typedef struct nul_dbus_object_t nul_dbus_object_t; +typedef struct nul_dbus_member_t nul_dbus_member_t; +typedef struct nul_dbus_interface_t nul_dbus_interface_t; +typedef struct nul_dbus_type_t nul_dbus_type_t; +typedef struct nul_dbus_parameter_t nul_dbus_parameter_t; +typedef struct nul_dbus_arg_t nul_dbus_arg_t; /* Return TRUE for handled, FALSE for not handled */ -typedef gboolean (* DbwFunction) (); - -DbwService * nul_dbus_session_service (const char *name, - DbwObject *object1, - ...); -DbwObject * nul_dbus_object (const char *name, - gpointer data, - DbwInterface *interface1, - ...); -DbwInterface *nul_dbus_interface (const char *name, - DbwMember *member1, - ...); -DbwMember * nul_dbus_method (const char *name, - DbwFunction function, - DbwParameter *parameter1, - ...); -DbwParameter *nul_dbus_parameter_in (const char *name, - const DbwType *type); -DbwParameter *nul_dbus_parameter_out (const char *name, - const DbwType *type); -gboolean nul_dbus_service_start (DbwService *service); -void nul_dbus_service_stop (DbwService *service); +typedef gboolean (* nul_dbus_Function) (); + +nul_dbus_service_t * nul_dbus_session_service (const char *name, + nul_dbus_object_t *object1, + ...); +nul_dbus_object_t * nul_dbus_object (const char *name, + gpointer data, + nul_dbus_interface_t *interface1, + ...); +nul_dbus_interface_t *nul_dbus_interface (const char *name, + nul_dbus_member_t *member1, + ...); +nul_dbus_member_t * nul_dbus_method (const char *name, + nul_dbus_Function function, + nul_dbus_parameter_t *parameter1, + ...); +nul_dbus_parameter_t *nul_dbus_parameter_in (const char *name, + const nul_dbus_type_t *type); +nul_dbus_parameter_t *nul_dbus_parameter_out (const char *name, + const nul_dbus_type_t *type); +gboolean nul_dbus_service_t_start (nul_dbus_service_t *service); +void nul_dbus_service_t_stop (nul_dbus_service_t *service); /* The returned values here are automatically freed at idle. You * must copy them if you want to keep them around */ -const DbwType * nul_dbus_type_int32 (void); -const DbwType * nul_dbus_type_uint32 (void); -const DbwType * nul_dbus_type_string (void); +const nul_dbus_type_t * nul_dbus_type_int32 (void); +const nul_dbus_type_t * nul_dbus_type_uint32 (void); +const nul_dbus_type_t * nul_dbus_type_string (void); /* Using a service */ -typedef struct DbwProxy DbwProxy; +typedef struct nul_dbus_Proxy nul_dbus_Proxy; -DbwProxy *nul_dbus_proxy_new_session_service (const char *bus_name, - const char *object, - const char *interface); +nul_dbus_Proxy *nul_dbus_proxy_new_session_service (const char *bus_name, + const char *object, + const char *interface); -void nul_dbus_invoke (DbwService *service, +void nul_dbus_invoke (nul_dbus_service_t *service, const char *method_desc, - DbwFunction callback, + nul_dbus_Function callback, gpointer data, ...); |