mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
Improve SFMLHelper
Switch to using additional overloads of sf::Packet, so we can eliminate some of the messy code and just use the normal syntax for BigEndianValue. We can't avoid helper functions with u64 due to SFML's non-standard way of defining 64-bit integer types.
This commit is contained in:
@ -6,24 +6,34 @@
|
||||
|
||||
#include <SFML/Network/Packet.hpp>
|
||||
|
||||
namespace Common
|
||||
{
|
||||
// This only exists as a helper for BigEndianValue
|
||||
u16 PacketReadU16(sf::Packet& packet)
|
||||
sf::Packet& operator>>(sf::Packet& packet, Common::BigEndianValue<u16>& data)
|
||||
{
|
||||
u16 tmp;
|
||||
packet >> tmp;
|
||||
return tmp;
|
||||
data = tmp;
|
||||
return packet;
|
||||
}
|
||||
|
||||
// This only exists as a helper for BigEndianValue
|
||||
u32 PacketReadU32(sf::Packet& packet)
|
||||
sf::Packet& operator>>(sf::Packet& packet, Common::BigEndianValue<u32>& data)
|
||||
{
|
||||
u32 tmp;
|
||||
packet >> tmp;
|
||||
return tmp;
|
||||
data = tmp;
|
||||
return packet;
|
||||
}
|
||||
|
||||
sf::Packet& operator>>(sf::Packet& packet, Common::BigEndianValue<u64>& data)
|
||||
{
|
||||
sf::Uint64 tmp;
|
||||
packet >> tmp;
|
||||
data = tmp;
|
||||
return packet;
|
||||
}
|
||||
|
||||
namespace Common
|
||||
{
|
||||
// SFML's Uint64 type is different depending on platform,
|
||||
// so we have this for cleaner code.
|
||||
u64 PacketReadU64(sf::Packet& packet)
|
||||
{
|
||||
sf::Uint64 value;
|
||||
|
Reference in New Issue
Block a user