# endif
#endif
+#include <Ecore_Data.h>
+
/**
* @file Ecore_Ipc.h
* @brief Ecore inter-process communication functions.
EAPI void *ecore_ipc_server_del(Ecore_Ipc_Server *svr);
EAPI void *ecore_ipc_server_data_get(Ecore_Ipc_Server *svr);
EAPI int ecore_ipc_server_connected_get(Ecore_Ipc_Server *svr);
+ EAPI Ecore_List *ecore_ipc_server_clients_get(Ecore_Ipc_Server *svr);
/* FIXME: this needs to become an ipc message */
EAPI int ecore_ipc_server_send(Ecore_Ipc_Server *svr, int major, int minor, int ref, int ref_to, int response, void *data, int size);
EAPI void ecore_ipc_server_client_limit_set(Ecore_Ipc_Server *svr, int client_limit, char reject_excess_clients);
return ecore_con_server_connected_get(svr->server);
}
+/**
+ * Retrieves the list of clients for this server.
+ * @param svr The given IPC server.
+ * @return An Ecore_List with the clients.
+ * @ingroup Ecore_IPC_Server_Group
+ */
+EAPI Ecore_List *
+ecore_ipc_server_clients_get(Ecore_Ipc_Server *svr)
+{
+ if (!ECORE_MAGIC_CHECK(svr, ECORE_MAGIC_IPC_SERVER))
+ {
+ ECORE_MAGIC_FAIL(svr, ECORE_MAGIC_IPC_SERVER,
+ "ecore_ipc_server_clients_get");
+ return NULL;
+ }
+ return ecore_con_server_clients_get(svr->server);
+}
+
#define SVENC(_member) \
d = _ecore_ipc_dlt_int(msg._member, svr->prev.o._member, &md); \
if (md >= DLT_SET) \