#ifndef REMOTING_PROTOCOL_WEBRTC_TRANSPORT_H_
#define REMOTING_PROTOCOL_WEBRTC_TRANSPORT_H_
#include <memory>
#include <optional>
#include <string>
#include <tuple>
#include <vector>
#include "base/functional/callback.h"
#include "base/functional/callback_forward.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/scoped_refptr.h"
#include "base/memory/weak_ptr.h"
#include "base/threading/thread_checker.h"
#include "base/timer/timer.h"
#include "crypto/hmac.h"
#include "remoting/base/constants.h"
#include "remoting/base/session_options.h"
#include "remoting/protocol/network_settings.h"
#include "remoting/protocol/peer_connection_controls.h"
#include "remoting/protocol/port_allocator.h"
#include "remoting/protocol/port_allocator_factory.h"
#include "remoting/protocol/session_options_provider.h"
#include "remoting/protocol/transport.h"
#include "remoting/protocol/webrtc_data_stream_adapter.h"
#include "remoting/protocol/webrtc_event_log_data.h"
#include "remoting/signaling/signal_strategy.h"
#include "third_party/webrtc/api/peer_connection_interface.h"
#include "third_party/webrtc/api/video_codecs/video_encoder_factory.h"
namespace base {
class Watchdog;
}
namespace remoting::protocol {
class TransportContext;
class MessagePipe;
class WebrtcAudioModule;
class WebrtcTransport : public Transport,
public SessionOptionsProvider,
public PeerConnectionControls { … };
}
#endif