X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin4_src%2FServer%2Finclude%2Fipc.hpp;h=50b0dbe25e3041f129980679d83739cd578c03bb;hb=7f2068235fabc311332962711cd3220ce8ee2638;hp=d801953ff6752f88718c3315dd51ed5245373df5;hpb=47296e890b2b09cbc46db30d7fe2aeeae11a6d4a;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin4_src/Server/include/ipc.hpp b/Usermode/Applications/axwin4_src/Server/include/ipc.hpp index d801953f..50b0dbe2 100644 --- a/Usermode/Applications/axwin4_src/Server/include/ipc.hpp +++ b/Usermode/Applications/axwin4_src/Server/include/ipc.hpp @@ -14,16 +14,29 @@ extern "C" { #include }; +#include #include namespace AxWin { + class CCompositor; +class CClient; namespace IPC { extern void Initialise(const CConfigIPC& config, CCompositor& compositor); extern int FillSelect(::fd_set& rfds); -extern void HandleSelect(::fd_set& rfds); +extern void HandleSelect(const ::fd_set& rfds); +extern void RegisterClient(CClient& client); +extern CClient* GetClientByID(uint16_t id); +extern void DeregisterClient(CClient& client); + +extern void SendMessage_NotifyDims(CClient& client, unsigned int WinID, unsigned int NewW, unsigned int NewH); +extern void SendMessage_MouseButton(CClient& client, unsigned int WinID, unsigned int X, unsigned int Y, uint8_t Button, bool Pressed); +extern void SendMessage_MouseMove(CClient& client, unsigned int WinID, unsigned int X, unsigned int Y); +extern void SendMessage_KeyEvent(CClient& client, unsigned int WinID, uint32_t KeySym, bool Pressed, const char *Translated); + +extern void HandleMessage(CClient& client, CDeserialiser& message); class CClientFailure: public ::std::exception