Changeset 777 for code/branches/FICN/src/network/PacketManager.h
- Timestamp:
- Dec 31, 2007, 7:40:23 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/FICN/src/network/PacketManager.h
r673 r777 4 4 #include <string> 5 5 #include <enet/enet.h> 6 #include "PacketTypes.h" 6 7 #include "NetworkPrereqs.h" 7 8 8 9 #define CLIENTID_CLIENT -1 9 10 10 //enum netowk generaly used to set the type ID of a packet 11 namespace network{ 12 13 11 //enum netowk generally used to set the type ID of a packet 12 namespace network 13 { 14 /* 15 * class to generate packets 16 * 17 * @autor: Dumeni Manatschal 18 * 19 */ 20 class PacketGenerator 21 { 22 public: 23 PacketGenerator(); 24 //call one of this functions out of an instance of PacketGenerator to create a packet 25 ENetPacket* acknowledgement( int state, int reliable = ENET_PACKET_FLAG_RELIABLE ); 26 ENetPacket* mousem( double x, double y, int reliable = ENET_PACKET_FLAG_RELIABLE ); 27 ENetPacket* keystrike( char press, int reliable = ENET_PACKET_FLAG_RELIABLE ); 28 ENetPacket* chatMessage( const char* message, int reliable = ENET_PACKET_FLAG_RELIABLE ); 29 ENetPacket* gstate( GameStateCompressed *states, int reliable = ENET_PACKET_FLAG_RELIABLE ); 30 ENetPacket* clid( int classid, std::string classname, int reliable = ENET_PACKET_FLAG_RELIABLE ); 31 private: 32 }; 33 34 /* 35 * class used to decode incoming packets 36 * 37 * @autor: Dumeni Manatschal 38 * 39 */ 40 class _NetworkExport PacketDecoder 41 { 42 public: 43 PacketDecoder(); 44 virtual ~PacketDecoder(); 45 //call this function to decode, it calls the right decoding function below 46 bool elaborate( ENetPacket* packet, int clientId ); 47 protected: 48 49 virtual void processChat( chat *data, int clientId); 50 51 52 private: 14 53 15 54 16 55 17 /* 18 * class to generate packets 19 * 20 * @autor: Dumeni Manatschal 21 * 22 */ 23 class PacketGenerator 24 { 25 public: 26 PacketGenerator(); 27 //call one of this functions out of an instance of PacketGenerator to create a packet 28 ENetPacket* acknowledgement( int state, int reliable = ENET_PACKET_FLAG_RELIABLE ); 29 ENetPacket* mousem( double x, double y, int reliable = ENET_PACKET_FLAG_RELIABLE ); 30 ENetPacket* keystrike( char press, int reliable = ENET_PACKET_FLAG_RELIABLE ); 31 ENetPacket* chatMessage( const char* message, int reliable = ENET_PACKET_FLAG_RELIABLE ); 32 ENetPacket* gstate( GameStateCompressed *states, int reliable = ENET_PACKET_FLAG_RELIABLE ); 33 ENetPacket* clid( int classid, std::string classname, int reliable = ENET_PACKET_FLAG_RELIABLE ); 34 private: 35 }; 56 void acknowledgement( ENetPacket* packet, int clientId = CLIENTID_CLIENT ); 57 void mousem( ENetPacket* packet, int clientId = CLIENTID_CLIENT ); 58 void keystrike( ENetPacket* packet, int clientId = CLIENTID_CLIENT ); 59 void chatMessage( ENetPacket* packet, int clientId = CLIENTID_CLIENT); 60 void gstate( ENetPacket* packet ); 61 void clid( ENetPacket *packet); 36 62 37 /* 38 * class used to decode incoming packets 39 * 40 * @autor: Dumeni Manatschal 41 * 42 */ 43 class PacketDecoder 44 { 45 public: 46 PacketDecoder(); 47 virtual ~PacketDecoder(); 48 //call this function to decode, it calls the right decoding function below 49 bool elaborate( ENetPacket* packet, int clientId ); 50 protected: 51 52 virtual void processChat( chat *data, int clientId); 53 54 55 private: 56 57 58 59 void acknowledgement( ENetPacket* packet, int clientId = CLIENTID_CLIENT ); 60 void mousem( ENetPacket* packet, int clientId = CLIENTID_CLIENT ); 61 void keystrike( ENetPacket* packet, int clientId = CLIENTID_CLIENT ); 62 void chatMessage( ENetPacket* packet, int clientId = CLIENTID_CLIENT); 63 void gstate( ENetPacket* packet ); 64 void clid( ENetPacket *packet); 65 66 //process data 67 //two functions are note yet implemented! 68 virtual void processGamestate(GameStateCompressed *state); 69 virtual void processAck( ack *data, int clientID); 70 void processClassid( classid *cid); 71 //virtual void processAck( ack *data); 72 73 //print functions 74 void printAck( ack* data ); 75 void printMouse( mouse* data ); 76 void printKey( keyboard* data ); 77 void printChat( chat* data, int clientId ); 78 void printGamestate( GameStateCompressed *data ); 79 void printClassid( classid *cid); 80 }; 63 //process data 64 //two functions are note yet implemented! 65 virtual void processGamestate(GameStateCompressed *state); 66 virtual void processAck( ack *data, int clientID); 67 void processClassid( classid *cid); 68 //virtual void processAck( ack *data); 69 70 //print functions 71 void printAck( ack* data ); 72 void printMouse( mouse* data ); 73 void printKey( keyboard* data ); 74 void printChat( chat* data, int clientId ); 75 void printGamestate( GameStateCompressed *data ); 76 void printClassid( classid *cid); 77 }; 81 78 } 82 79
Note: See TracChangeset
for help on using the changeset viewer.