3 * - By John Hodge (thePowersGang)
6 * - IPC Interface Header
14 #include <acess/sys.h>
17 #include <serialisation.hpp>
18 #include <CConfigIPC.hpp>
27 extern void Initialise(const CConfigIPC& config, CCompositor& compositor);
28 extern int FillSelect(::fd_set& rfds);
29 extern void HandleSelect(const ::fd_set& rfds);
30 extern void RegisterClient(CClient& client);
31 extern CClient* GetClientByID(uint16_t id);
32 extern void DeregisterClient(CClient& client);
34 extern void SendMessage_NotifyDims(CClient& client, unsigned int WinID, unsigned int NewW, unsigned int NewH);
35 extern void SendMessage_MouseButton(CClient& client, unsigned int WinID, unsigned int X, unsigned int Y, uint8_t Button, bool Pressed);
36 extern void SendMessage_MouseMove(CClient& client, unsigned int WinID, unsigned int X, unsigned int Y);
37 extern void SendMessage_KeyEvent(CClient& client, unsigned int WinID, uint32_t KeySym, bool Pressed, const char *Translated);
39 extern void HandleMessage(CClient& client, CDeserialiser& message);
42 public ::std::exception
44 const std::string m_what;
46 CClientFailure(std::string&& what);
47 ~CClientFailure() throw();
48 const char *what() const throw();