Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/network/src/network/packet/Acknowledgement.cc @ 1701

Last change on this file since 1701 was 1701, checked in by scheusso, 16 years ago

some missing files

File size: 1.1 KB
Line 
1#include "Acknowledgement.h"
2#include "Packet.h"
3#include "network/Host.h"
4
5namespace network {
6namespace packet {
7
8#define PACKET_FLAGS_ACK    0
9#define _PACKETID           0
10#define _ACKID              _PACKETID + sizeof(network::packet::ENUM::Type)
11 
12Acknowledgement::Acknowledgement( unsigned int id, int clientID )
13 : PacketContent()
14{
15  flags_ = flags_ | PACKET_FLAGS_ACK;
16  data_=new unsigned char[ getSize() ];
17  *(ENUM::Type *)&data_[ _PACKETID ] = ENUM::Acknowledgement;
18  *(unsigned int *)&data_[ _ACKID ] = id;
19  clientID_=clientID;
20}
21
22Acknowledgement::Acknowledgement( unsigned char *data, int clientID )
23  : PacketContent(data)
24{
25  clientID_=clientID;
26}
27
28Acknowledgement::~Acknowledgement()
29{
30}
31
32unsigned char *Acknowledgement::getData(){
33  return data_;
34}
35
36unsigned int Acknowledgement::getSize() const{
37  return _ACKID + sizeof(unsigned int);
38}
39
40bool Acknowledgement::process(){
41  return Host::ackGamestate(data_[_ACKID], clientID_);
42}
43
44unsigned int Acknowledgement::getAckID(){
45  return *(unsigned int *)&data_[ _ACKID ];
46}
47
48} //namespace packet
49} //namespace network
Note: See TracBrowser for help on using the repository browser.