raSystem  1.0 bata
raClient.h
Go to the documentation of this file.
1 #pragma once
2 
3  class RAPI raClientSocket : public raSocket
4  {
5  public:
7 
8  bool Connect(const raString IP, int Port);
9  void Disconnect()
10  {
11  ::closesocket(m_Socket);
12  }
13  protected:
14  raClientSocket(const GUID& raguid);
15  };
16 
17  class RAPI raClient
18  {
19  public:
20  raClient(void);
21  ~raClient(void);
22 
23  void Create(HWND hWnd) { m_hWnd = hWnd; }
24  void Destroy() { }
25 
26  virtual bool Connect(const raString IP, int Port = 28015);
27  virtual void Disconnect();
28  virtual int Receive(void);
29  virtual bool Send(LPCSTR Data, int Size);
30  virtual int GetNextPacketID();
31 
32  raString GetBuffer() { return m_Socket.GetBuffer(); }
33 
34  bool SendString( raString text);
35  bool SendVector2(raVector2& Vec);
36  bool SendVector3(raVector3& Vec);
37  bool SendMatrix(raMatrix& Mat);
38  bool SendQuaternion(raQuaternion& Non);
39  bool SendRect(raRECT& Rec);
40  bool SendColor(raColor& Col);
41  bool SendPlane(raPlane& Plan);
42 
43  int ReadString( raString buffer);
44  void ReadVector2(raVector2& Vec);
45  void ReadVector3(raVector3& Vec);
46  void ReadMatrix(raMatrix& Mat);
47  void ReadQuaternion(raQuaternion& Non);
48  void ReadRect(raRECT& Rec);
49  void ReadColor(raColor& Col);
50  void ReadPlane(raPlane& Plan);
51 
52  protected:
53  raClient(const GUID& raguid);
54  protected:
55  virtual void OnDisconnect() {};
56  virtual void OnConnect(const raString IP, int Port) {};
57  virtual void OnConnectionLost() {};
58  virtual void OnReceive(int BytesToRead) {};
59  virtual void OnSend(LPCSTR Data, int Size) {};
60  private:
61  raClientSocket m_Socket;
62  int m_BytesToRead;
63 
64  char m_sendbuf[raSocket::RECVBUFLEN];
65  raString m_BufferPtr;
66  HWND m_hWnd;
67  };
virtual void OnDisconnect()
Definition: raClient.h:55
void Disconnect()
Definition: raClient.h:9
static const int RECVBUFLEN
Definition: raSocket.h:27
#define RAPI
Definition: raMain.h:11
virtual void OnConnectionLost()
Definition: raClient.h:57
virtual void OnConnect(const raString IP, int Port)
Definition: raClient.h:56
Definition: raColor.h:5
void Destroy()
Definition: raClient.h:24
Definition: raPlane.h:3
virtual void OnReceive(int BytesToRead)
Definition: raClient.h:58
void Create(HWND hWnd)
Definition: raClient.h:23
std::string raString
Definition: raMain.h:107
virtual void OnSend(LPCSTR Data, int Size)
Definition: raClient.h:59
Definition: raRECT.h:3
raString GetBuffer()
Definition: raClient.h:32