#include "Eldbus.h"
#include <Ecore.h>
#define BUS "org.Enlightenment"
#define PATH "/org/enlightenment"
#define PATH_TEST_SON "/org/enlightenment/son"
#define INTERFACE "org.enlightenment.Test"
{
printf("Hello\n");
return reply;
}
{
printf("Quit\n");
}
enum
{
TEST_SIGNAL_ALIVE = 0,
TEST_SIGNAL_HELLO
};
send_signal_alive(void *data)
{
Eldbus_Service_Interface *iface = data;
}
send_signal_hello(void *data)
{
Eldbus_Service_Interface *iface = data;
}
{
printf("eldbus_message_arguments_get() error\n");
return reply;
}
{
unsigned char byte;
printf("eldbus_message_arguments_get() error\n");
return reply;
}
{
unsigned int uint32;
printf("eldbus_message_arguments_get() error\n");
return reply;
}
{
int int32;
printf("eldbus_message_arguments_get() error\n");
return reply;
}
{
short int int16;
printf("eldbus_message_arguments_get() error\n");
return reply;
}
{
double d;
printf("eldbus_message_arguments_get() error\n");
return reply;
}
{
const char *txt;
printf("eldbus_message_arguments_get() error\n");
return reply;
}
_resp_async(void *data)
{
}
{
printf("Received a call to AsyncTest.\n");
printf("Response will be send in 5 seconds.\n");
return NULL;
}
[TEST_SIGNAL_ALIVE] = {"Alive", NULL, 0},
[TEST_SIGNAL_HELLO] = {
"Hello",
ELDBUS_ARGS({
"s",
"message" }), 0},
{ }
};
{
_hello
},
{
"Quit", NULL, NULL,
_quit, ELDBUS_METHOD_FLAG_DEPRECATED
},
_send_bool
},
_send_byte
},
_send_uint32
},
_send_int32
},
_send_int16
},
_send_double
},
_send_string
},
_async_test
},
{ }
};
INTERFACE, methods, signals
};
static void
{
Eldbus_Service_Interface *iface;
unsigned int reply;
iface = data;
{
printf("error on on_name_request\n");
return;
}
{
printf("error geting arguments on on_name_request\n");
return;
}
{
printf("error name already in use\n");
return;
}
}
int
main(void)
{
Eldbus_Service_Interface *iface;
on_name_request, iface);
return 0;
}
EAPI int ecore_shutdown(void)
Shuts down connections, signal handlers sockets etc.
Definition: ecore.c:371
EAPI int ecore_init(void)
Sets up connections, signal handlers, sockets etc.
Definition: ecore.c:230
#define ECORE_CALLBACK_RENEW
Return value to keep a callback.
Definition: Ecore_Common.h:153
void ecore_main_loop_quit(void)
Quits the main loop once all the events currently on the queue have been processed.
Definition: ecore_main.c:1321
#define ECORE_CALLBACK_CANCEL
Return value to remove a callback.
Definition: Ecore_Common.h:152
void ecore_main_loop_begin(void)
Runs the application main loop.
Definition: ecore_main.c:1311
Ecore_Timer * ecore_timer_add(double in, Ecore_Task_Cb func, const void *data)
Creates a timer to call the given function in the given period of time.
Definition: ecore_timer.c:189
unsigned char Eina_Bool
Type to mimic a boolean.
Definition: eina_types.h:527
#define EINA_UNUSED
Used to indicate that a function parameter is purposely unused.
Definition: eina_types.h:339
#define ELDBUS_NAME_REQUEST_FLAG_DO_NOT_QUEUE
If we can not become the primary owner do not place us in the queue.
Definition: eldbus_freedesktop.h:12
Eldbus_Pending * eldbus_name_request(Eldbus_Connection *conn, const char *name, unsigned int flags, Eldbus_Message_Cb cb, const void *cb_data)
Send a "RequestName" method call in proxy.
Definition: eldbus_freedesktop.c:6
#define ELDBUS_NAME_REQUEST_REPLY_PRIMARY_OWNER
Service has become the primary owner of the requested name.
Definition: eldbus_freedesktop.h:15
void eldbus_connection_unref(Eldbus_Connection *conn)
Decrement connection reference count.
Definition: eldbus_core.c:1306
Eldbus_Pending * eldbus_connection_send(Eldbus_Connection *conn, Eldbus_Message *msg, Eldbus_Message_Cb cb, const void *cb_data, double timeout)
Send a message.
Definition: eldbus_pending.c:94
Eldbus_Connection * eldbus_connection_get(Eldbus_Connection_Type type)
Establish a connection to bus and integrate it with the ecore main loop.
Definition: eldbus_core.c:1102
struct _Eldbus_Message Eldbus_Message
Represents the way data is sent and received in DBus.
Definition: Eldbus.h:173
EAPI int eldbus_shutdown(void)
Shutdown eldbus.
Definition: eldbus_core.c:246
struct _Eldbus_Pending Eldbus_Pending
Represents a message that has been sent but has not yet reached its destination.
Definition: Eldbus.h:188
EAPI int eldbus_init(void)
Initialize eldbus.
Definition: eldbus_core.c:128
Eina_Bool eldbus_message_error_get(const Eldbus_Message *msg, const char **name, const char **text)
Get the error text and name from a Eldbus_Message.
Definition: eldbus_message.c:233
Eldbus_Message * eldbus_message_method_return_new(const Eldbus_Message *msg)
Create a message that is a reply to a method call.
Definition: eldbus_message.c:895
Eina_Bool eldbus_message_arguments_get(const Eldbus_Message *msg, const char *signature,...)
Get the arguments from an Eldbus_Message.
Definition: eldbus_message.c:274
Eina_Bool eldbus_message_arguments_append(Eldbus_Message *msg, const char *signature,...)
Append arguments into an Eldbus_Message.
Definition: eldbus_message.c:495
Eldbus_Service_Interface * eldbus_service_interface_register(Eldbus_Connection *conn, const char *path, const Eldbus_Service_Interface_Desc *desc)
Register an interface in the given path and connection.
Definition: eldbus_service.c:998
Eina_Bool eldbus_service_signal_emit(const Eldbus_Service_Interface *iface, unsigned int signal_id,...)
Emit a signal handler of the interface with non-complex types.
Definition: eldbus_service.c:1414
#define ELDBUS_ARGS(args...)
Used to insert complete types to signature of methods or signals.
Definition: eldbus_service.h:33
struct _Eldbus_Connection Eldbus_Connection
Represents a connection of one the type of connection with the DBus daemon.
Definition: Eldbus.h:227
Definition: eldbus_service.h:71
Definition: eldbus_service.h:103
Definition: eldbus_service.h:87