From 291b7925ee2fd9b7e16a521a08a5dc6689668984 Mon Sep 17 00:00:00 2001 From: rubidium Date: Tue, 30 Jan 2007 17:12:46 +0000 Subject: (svn r8459) -Codechange: move (Send|Recv)GRFIdentifier to NetworkSocketHandler, so it can also be used the TCP socket handler. --- src/network/core/core.cpp | 31 +++++++++++++++++++++++++++++++ src/network/core/core.h | 7 +++++++ src/network/core/udp.cpp | 29 ----------------------------- src/network/core/udp.h | 4 ---- 4 files changed, 38 insertions(+), 33 deletions(-) diff --git a/src/network/core/core.cpp b/src/network/core/core.cpp index 259ccf6c8..894529a05 100644 --- a/src/network/core/core.cpp +++ b/src/network/core/core.cpp @@ -5,6 +5,8 @@ #include "../../stdafx.h" #include "../../debug.h" #include "os_abstraction.h" +#include "core.h" +#include "packet.h" /** * @file core.cpp Functions used to initialize/shut down the core network @@ -88,4 +90,33 @@ void NetworkCoreShutdown(void) #endif } + +/** + * Serializes the GRFIdentifier (GRF ID and MD5 checksum) to the packet + * @param p the packet to write the data to + * @param grf the GRFIdentifier to serialize + */ +void NetworkSocketHandler::Send_GRFIdentifier(Packet *p, const GRFIdentifier *grf) +{ + uint j; + NetworkSend_uint32(p, grf->grfid); + for (j = 0; j < sizeof(grf->md5sum); j++) { + NetworkSend_uint8 (p, grf->md5sum[j]); + } +} + +/** + * Deserializes the GRFIdentifier (GRF ID and MD5 checksum) from the packet + * @param p the packet to read the data from + * @param grf the GRFIdentifier to deserialize + */ +void NetworkSocketHandler::Recv_GRFIdentifier(Packet *p, GRFIdentifier *grf) +{ + uint j; + grf->grfid = NetworkRecv_uint32(this, p); + for (j = 0; j < sizeof(grf->md5sum); j++) { + grf->md5sum[j] = NetworkRecv_uint8(this, p); + } +} + #endif /* ENABLE_NETWORK */ diff --git a/src/network/core/core.h b/src/network/core/core.h index a4cef3b5e..865213471 100644 --- a/src/network/core/core.h +++ b/src/network/core/core.h @@ -6,6 +6,7 @@ #ifdef ENABLE_NETWORK #include "os_abstraction.h" +#include "../../newgrf_config.h" /** * @file core.h Base for all network types (UDP and TCP) @@ -27,6 +28,9 @@ typedef enum { NETWORK_RECV_STATUS_CLOSE_QUERY, ///< Done quering the server } NetworkRecvStatus; +/** Forward declaration due to circular dependencies */ +class Packet; + /** * SocketHandler for all network sockets in OpenTTD. */ @@ -66,6 +70,9 @@ public: * @return true when the current client has quit, false otherwise */ bool HasClientQuit() { return this->has_quit; } + + void Send_GRFIdentifier(Packet *p, const GRFIdentifier *grf); + void Recv_GRFIdentifier(Packet *p, GRFIdentifier *grf); }; #endif /* ENABLE_NETWORK */ diff --git a/src/network/core/udp.cpp b/src/network/core/udp.cpp index e6eedffc7..2c975215b 100644 --- a/src/network/core/udp.cpp +++ b/src/network/core/udp.cpp @@ -143,35 +143,6 @@ void NetworkUDPSocketHandler::ReceivePackets() } -/** - * Serializes the GRFIdentifier (GRF ID and MD5 checksum) to the packet - * @param p the packet to write the data to - * @param grf the GRFIdentifier to serialize - */ -void NetworkUDPSocketHandler::Send_GRFIdentifier(Packet *p, const GRFIdentifier *grf) -{ - uint j; - NetworkSend_uint32(p, grf->grfid); - for (j = 0; j < sizeof(grf->md5sum); j++) { - NetworkSend_uint8 (p, grf->md5sum[j]); - } -} - -/** - * Deserializes the GRFIdentifier (GRF ID and MD5 checksum) from the packet - * @param p the packet to read the data from - * @param grf the GRFIdentifier to deserialize - */ -void NetworkUDPSocketHandler::Recv_GRFIdentifier(Packet *p, GRFIdentifier *grf) -{ - uint j; - grf->grfid = NetworkRecv_uint32(this, p); - for (j = 0; j < sizeof(grf->md5sum); j++) { - grf->md5sum[j] = NetworkRecv_uint8(this, p); - } -} - - /** * Serializes the NetworkGameInfo struct to the packet * @param p the packet to write the data to diff --git a/src/network/core/udp.h b/src/network/core/udp.h index 4ea170122..bddbba9ba 100644 --- a/src/network/core/udp.h +++ b/src/network/core/udp.h @@ -9,7 +9,6 @@ #include "core.h" #include "game.h" #include "packet.h" -#include "../../newgrf_config.h" #include "../../debug.h" /** @@ -131,10 +130,7 @@ public: void SendPacket(Packet *p, const struct sockaddr_in *recv); void ReceivePackets(); - void Send_GRFIdentifier(Packet *p, const GRFIdentifier *grf); void Send_NetworkGameInfo(Packet *p, const NetworkGameInfo *info); - - void Recv_GRFIdentifier(Packet *p, GRFIdentifier *grf); void Recv_NetworkGameInfo(Packet *p, NetworkGameInfo *info); }; -- cgit v1.2.3-54-g00ecf