Usermode/libc #6 Fix string.h functions, add some more unit tests
[tpg/acess2.git] / Usermode / Applications / axwin4_src / Server / include / CClient.hpp
1 /*
2  * Acess2 GUI v4
3  * - By John Hodge (thePowersGang) 
4  *
5  * CClient.hpp
6  * - IPC Client
7  */
8 #ifndef _CCLIENT_H_
9 #define _CCLIENT_H_
10
11 #include "CWindow.hpp"
12 #include "serialisation.hpp"
13 #include <map>
14 #include <cassert>
15
16 namespace AxWin {
17
18 class IIPCChannel;
19
20 class CClient
21 {
22         unsigned int    m_id;
23         IIPCChannel&    m_channel;
24         
25         ::std::map<unsigned int,CWindow*>       m_windows;
26         //CWindow*      m_windows[1];
27 public:
28         CClient(::AxWin::IIPCChannel& channel);
29         virtual ~CClient();
30         
31         void set_id(unsigned int id) { assert(m_id == 0); m_id = id; }
32         unsigned int id() const { return m_id; }
33         
34         CWindow*        GetWindow(int ID);
35         void    SetWindow(int ID, CWindow* window);
36         
37         virtual void    SendMessage(CSerialiser& reply) = 0;
38         void    HandleMessage(CDeserialiser& message);
39 };
40
41
42 };
43
44 #endif
45

UCC git Repository :: git.ucc.asn.au