diff options
author | Frederic Berat <fberat@de.adit-jv.com> | 2015-07-14 16:36:14 +0200 |
---|---|---|
committer | Lutz Helwing <lutz_helwing@mentor.com> | 2015-11-11 15:24:22 +0100 |
commit | d29b6be9496db80e37a452bd42dc7813f369c33e (patch) | |
tree | 163ae1bf2e9488e2cff585cfa8cbb953630bfaf0 /src/daemon/dlt_daemon_client.h | |
parent | 9e101ff434230a95fb8f4fd33dc48f4970496d1c (diff) | |
download | DLT-daemon-d29b6be9496db80e37a452bd42dc7813f369c33e.tar.gz |
dlt-daemon: Implement epoll based event handling
The event handling has been reworked in order to use epoll and
restructure the code.
There are 2 new structures.
The DltConnection which contains all basic connection information, like
the type, the file descriptor, and the receiver structure corresponding.
The DltEventHandler that manages the DltConnections and the associated
events.
The concept is basically the following. The daemon will create different
connections, serial connections, socket connections, fifos etc ... Each of
them will then register itself to the event handler, and give it the
ownership of this connection. From this point in time, the daemon can act
on the connections.
Once an event is triggered, the event handler will call the connection
specific callback, creates new connections when clients arrives,
and potentially destroy the connection in case of hangup.
On exit, the daemon cleanup the event handler, which leads to the
destruction of the connections.
The work there is a first step for a global restructuring. Several
modification will follow, in order to rationalize the different daemon
structures, and avoid variable and code duplication.
Signed-off-by: Frederic Berat <fberat@de.adit-jv.com>
Diffstat (limited to 'src/daemon/dlt_daemon_client.h')
-rw-r--r-- | src/daemon/dlt_daemon_client.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/daemon/dlt_daemon_client.h b/src/daemon/dlt_daemon_client.h index c7ec9e9..4b5ebcb 100644 --- a/src/daemon/dlt_daemon_client.h +++ b/src/daemon/dlt_daemon_client.h @@ -67,6 +67,15 @@ #include <sys/time.h> /** + * Send out message to all the clients. + * @param daemon pointer to dlt daemon structure + * @param daemon_local pointer to dlt daemon local structure + * @param verbose if set to true verbose information is printed out. + * @return 1 if transfer succeed, 0 otherwise. + */ +int dlt_daemon_client_send_all(DltDaemon *daemon, DltDaemonLocal *daemon_local, int verbose); + +/** * Send out message to client or store message in offline trace. * @param sock connection handle used for sending response * @param daemon pointer to dlt daemon structure |