#include "third_party/blink/renderer/modules/peerconnection/rtc_rtp_transceiver.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_rtc_rtp_header_extension_capability.h"
#include "third_party/blink/renderer/modules/peerconnection/rtc_error_util.h"
#include "third_party/blink/renderer/modules/peerconnection/rtc_peer_connection.h"
#include "third_party/blink/renderer/modules/peerconnection/rtc_rtp_receiver.h"
#include "third_party/blink/renderer/modules/peerconnection/rtc_rtp_sender.h"
#include "third_party/blink/renderer/platform/bindings/exception_code.h"
#include "third_party/blink/renderer/platform/bindings/script_wrappable.h"
#include "third_party/blink/renderer/platform/heap/garbage_collected.h"
#include "third_party/blink/renderer/platform/heap/member.h"
#include "third_party/blink/renderer/platform/heap/visitor.h"
namespace blink {
namespace {
String TransceiverDirectionToString(
const webrtc::RtpTransceiverDirection& direction) { … }
String OptionalTransceiverDirectionToString(
const std::optional<webrtc::RtpTransceiverDirection>& direction) { … }
bool TransceiverDirectionFromString(
const String& direction_string,
std::optional<webrtc::RtpTransceiverDirection>* direction_out) { … }
bool OptionalTransceiverDirectionFromStringWithStopped(
const String& direction_string,
std::optional<webrtc::RtpTransceiverDirection>* direction_out) { … }
}
webrtc::RtpTransceiverInit ToRtpTransceiverInit(
ExecutionContext* context,
const RTCRtpTransceiverInit* init,
const String& kind) { … }
RTCRtpTransceiver::RTCRtpTransceiver(
RTCPeerConnection* pc,
std::unique_ptr<RTCRtpTransceiverPlatform> platform_transceiver,
RTCRtpSender* sender,
RTCRtpReceiver* receiver)
: … { … }
String RTCRtpTransceiver::mid() const { … }
RTCRtpSender* RTCRtpTransceiver::sender() const { … }
RTCRtpReceiver* RTCRtpTransceiver::receiver() const { … }
bool RTCRtpTransceiver::stopped() const { … }
String RTCRtpTransceiver::direction() const { … }
void RTCRtpTransceiver::setDirection(String direction,
ExceptionState& exception_state) { … }
String RTCRtpTransceiver::currentDirection() const { … }
void RTCRtpTransceiver::UpdateMembers() { … }
void RTCRtpTransceiver::OnTransceiverStopped() { … }
RTCRtpTransceiverPlatform* RTCRtpTransceiver::platform_transceiver() const { … }
std::optional<webrtc::RtpTransceiverDirection>
RTCRtpTransceiver::fired_direction() const { … }
bool RTCRtpTransceiver::DirectionHasSend() const { … }
bool RTCRtpTransceiver::DirectionHasRecv() const { … }
bool RTCRtpTransceiver::FiredDirectionHasRecv() const { … }
void RTCRtpTransceiver::stop(ExceptionState& exception_state) { … }
void RTCRtpTransceiver::setCodecPreferences(
const HeapVector<Member<RTCRtpCodecCapability>>& codecs,
ExceptionState& exception_state) { … }
void RTCRtpTransceiver::setHeaderExtensionsToNegotiate(
const HeapVector<Member<RTCRtpHeaderExtensionCapability>>& extensions,
ExceptionState& exception_state) { … }
HeapVector<Member<RTCRtpHeaderExtensionCapability>>
RTCRtpTransceiver::getHeaderExtensionsToNegotiate() const { … }
HeapVector<Member<RTCRtpHeaderExtensionCapability>>
RTCRtpTransceiver::getNegotiatedHeaderExtensions() const { … }
void RTCRtpTransceiver::Trace(Visitor* visitor) const { … }
}