Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/network/src/lib/network/network_protocol.h @ 5809

Last change on this file since 5809 was 5809, checked in by patrick, 18 years ago

The NetworkSocket now uses a real network protocol: packet size is read out dynamicaly: therefore the NetworkStream now has an internal state that
checks if its reading header or body data

File size: 777 bytes
Line 
1/*!
2
3*/
4
5#ifndef _NETWORK_PROTOCOL_H
6#define _NETWORK_PROTOCOL_H
7
8#include "base_object.h"
9
10/* include this file, it contains some default definitions */
11#include "netdefs.h"
12
13#define HEADER_LENGTH 1
14
15typedef struct Header
16{
17  byte protocol;
18  byte version;
19  byte senderID;
20  byte receiverID;
21  byte length;
22};
23
24class Synchronizeable;
25
26/*!
27
28*/
29class NetworkProtocol : virtual public BaseObject
30{
31  public:
32    NetworkProtocol();
33    ~NetworkProtocol();
34
35    int createHeader(byte* data, int length, int bufferLength, const Synchronizeable& source, unsigned int remoteID);
36    Header extractHeader(byte* data, int length);
37
38  private:
39    unsigned int headerLength; //The Length of the Header in bytes
40};
41
42#endif //_NETWORK_PROTOCOL_H
Note: See TracBrowser for help on using the repository browser.