Sender for "Generic Message" types

This commit is contained in:
HikikoMarmy
2025-01-06 08:30:18 +00:00
parent 7130f12205
commit ffbd9d802d
2 changed files with 14 additions and 2 deletions

View File

@@ -83,6 +83,17 @@ void RealmTCPSocket::send( const sptr_generic_response response )
//Log::Packet( stream->data, packetSize, true );
}
void RealmTCPSocket::send( GenericMessage &message )
{
auto &stream = message.Serialize();
auto netSize = htonl( stream.get_position() + 4 );
m_pendingWriteBuffer.insert( m_pendingWriteBuffer.end(), ( uint8_t * )&netSize, ( uint8_t * )&netSize + 4 );
m_pendingWriteBuffer.insert( m_pendingWriteBuffer.end(), stream.data.begin(), stream.data.end() );
//Log::Packet( stream.data, stream.get_position(), true );
}
RealmUDPSocket::RealmUDPSocket()
{
}

View File

@@ -8,6 +8,8 @@
class GenericResponse;
typedef std::shared_ptr< GenericResponse > sptr_generic_response;
class GenericMessage;
class RealmSocket
{
public:
@@ -55,8 +57,6 @@ public:
std::mutex read_mutex;
std::vector< uint8_t > read_buffer;
//std::list< sptr_packet > read_queue;
//std::list< sptr_packet > write_queue;
};
class RealmTCPSocket : public RealmSocket
@@ -83,6 +83,7 @@ public:
void send( const sptr_byte_stream stream ) override;
void send( const ByteStream &stream ) override;
void send( const sptr_generic_response response );
void send( GenericMessage &message );
public:
std::vector< uint8_t > m_pendingWriteBuffer;