X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin2_src%2FWM%2Fcommon.h;fp=Usermode%2FApplications%2Faxwin2_src%2FWM%2Fcommon.h;h=a515bdc0ce04b404e08470c8ad893fd53d7d0fb0;hb=b43ed8d15c86ff9b7f5abc9f47e1385503dcdf35;hp=00c845388cc2f1413f5d7a18ffcd5e5505a315fd;hpb=117854336280cdf3d07143820e4d82d92c570239;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin2_src/WM/common.h b/Usermode/Applications/axwin2_src/WM/common.h index 00c84538..a515bdc0 100644 --- a/Usermode/Applications/axwin2_src/WM/common.h +++ b/Usermode/Applications/axwin2_src/WM/common.h @@ -10,9 +10,17 @@ #include #include // _SysDebug -typedef void tMessages_Handle_Callback(void*, size_t, void*); +// === TYPES === +typedef struct sIPC_Type tIPC_Type; typedef struct sFont tFont; +struct sIPC_Type +{ + int (*GetIdentSize)(void *Ident); + int (*CompareIdent)(void *Ident1, void *Ident2); + void (*SendMessage)(void *Ident, size_t, void *Data); +}; + #include "wm.h" #include "image.h" //#include "font.h" @@ -70,14 +78,17 @@ extern int giMouseFD; extern void memset32(void *ptr, uint32_t val, size_t count); // --- Initialisation --- extern void ParseCommandline(int argc, char *argv[]); +// --- Messages / IPC --- extern void IPC_Init(void); extern void IPC_FillSelect(int *nfds, fd_set *set); extern void IPC_HandleSelect(fd_set *set); +// --- Input --- extern void Input_FillSelect(int *nfds, fd_set *set); extern void Input_HandleSelect(fd_set *set); // --- Local WM --- -extern tApplication *AxWin_RegisterClient(int IdentLen, void *Ident, tMessages_Handle_Callback *Cb, const char *Name); +extern tApplication *AxWin_RegisterClient(tIPC_Type *Method, void *Ident, const char *Name); extern void AxWin_DeregisterClient(tApplication *App); +extern tApplication *AxWin_GetClient(tIPC_Type *Method, void *Ident); // --- Video --- extern void Video_Setup(void); extern void Video_Update(void);