blob: 9ec74b9053749be3bee07fa7149c49b21b14e918 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
// license:BSD-3-Clause
// copyright-holders:Inaki Baz Castillo,Miodrag Milanovic
#ifndef RTC_TCP_CONNECTION_H
#define RTC_TCP_CONNECTION_H
#include "tcp_connection.h"
class rtc_tcp_connection : public tcp_connection
{
public:
class listener
{
public:
virtual ~listener(){ }
virtual void on_packet_recv(rtc_tcp_connection *connection, const uint8_t* data, size_t len) = 0;
};
rtc_tcp_connection(listener* listener, size_t bufferSize);
virtual ~rtc_tcp_connection();
/* Pure virtual methods inherited from tcp_connection. */
virtual void user_on_tcp_connection_read() override;
void send(const uint8_t* data, size_t len);
private:
// Passed by argument.
listener* m_listener;
size_t m_frame_start; // Where the latest frame starts.
};
#endif
|