The daemon management API.


All member functions are asynchronous. The function sends request to the daemon and returns
control. Once the response from the daemon is received via onDataAvailable(), the
corresponding function of the class instance, set via setEventHandler(), is called.
setEventHandler must be called before any other non-static member.


Use either connect() or getSocketPath() static member functions to establish a connection with
the daemon via local socket. You have to manage the socket yourself. You should organize a
read loop (see onDataAvailable) and error handling.


EveusbEventHandler::writeToDaemon/readFromDaemon is called if EveusbController requests
read/write operations on socket that you manage.


Members return zero if command is sent to the daemon, otherwise error code.