LeviLamina
Loading...
Searching...
No Matches
PeerConnectionFactoryInterface.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/cricket/MediaType.h"
7#include "mc/external/webrtc/PeerConnectionInterface.h"
8#include "mc/external/webrtc/RTCErrorOr.h"
9#include "mc/external/webrtc/RefCountInterface.h"
10#include "mc/external/webrtc/scoped_refptr.h"
11
12// auto generated forward declare list
13// clang-format off
14namespace cricket { class PortAllocator; }
15namespace cricket { struct AudioOptions; }
16namespace rtc { class RTCCertificateGeneratorInterface; }
17namespace webrtc { class AudioSourceInterface; }
18namespace webrtc { class AudioTrackInterface; }
19namespace webrtc { class MediaStreamInterface; }
20namespace webrtc { class PeerConnectionInterface; }
21namespace webrtc { class PeerConnectionObserver; }
22namespace webrtc { class VideoTrackInterface; }
23namespace webrtc { class VideoTrackSourceInterface; }
24namespace webrtc { struct PeerConnectionDependencies; }
25namespace webrtc { struct RtpCapabilities; }
26// clang-format on
27
28namespace webrtc {
29
31public:
32 // PeerConnectionFactoryInterface inner types declare
33 // clang-format off
34 class Options;
35 // clang-format on
36
37 // PeerConnectionFactoryInterface inner types define
38 class Options {
39 public:
40 // member variables
41 // NOLINTBEGIN
47 // NOLINTEND
48
49 public:
50 // prevent constructor by default
51 Options& operator=(Options const&);
52 Options(Options const&);
53 Options();
54
55 public:
56 // member functions
57 // NOLINTBEGIN
58 MCNAPI ~Options();
59 // NOLINTEND
60
61 public:
62 // destructor thunk
63 // NOLINTBEGIN
64 MCNAPI void $dtor();
65 // NOLINTEND
66 };
67
68public:
69 // virtual functions
70 // NOLINTBEGIN
71 virtual void SetOptions(::webrtc::PeerConnectionFactoryInterface::Options const& options) = 0;
72
73 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface>>
74 CreatePeerConnectionOrError(
77 );
78
79 virtual ::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface> CreatePeerConnection(
82 );
83
84 virtual ::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface> CreatePeerConnection(
86 ::std::unique_ptr<::cricket::PortAllocator> allocator,
87 ::std::unique_ptr<::rtc::RTCCertificateGeneratorInterface> cert_generator,
89 );
90
91 virtual ::webrtc::RtpCapabilities GetRtpSenderCapabilities(::cricket::MediaType kind) const;
92
93 virtual ::webrtc::RtpCapabilities GetRtpReceiverCapabilities(::cricket::MediaType kind) const;
94
95 virtual ::webrtc::scoped_refptr<::webrtc::MediaStreamInterface>
96 CreateLocalMediaStream(::std::string const& stream_id) = 0;
97
98 virtual ::webrtc::scoped_refptr<::webrtc::AudioSourceInterface>
99 CreateAudioSource(::cricket::AudioOptions const& options) = 0;
100
101 virtual ::webrtc::scoped_refptr<::webrtc::VideoTrackInterface>
102 CreateVideoTrack(::webrtc::scoped_refptr<::webrtc::VideoTrackSourceInterface> source, ::std::string_view id) = 0;
103
104 virtual ::webrtc::scoped_refptr<::webrtc::VideoTrackInterface>
105 CreateVideoTrack(::std::string const& label, ::webrtc::VideoTrackSourceInterface* source);
106
107 virtual ::webrtc::scoped_refptr<::webrtc::AudioTrackInterface>
108 CreateAudioTrack(::std::string const& id, ::webrtc::AudioSourceInterface* source) = 0;
109
110 virtual bool StartAecDump(::_iobuf* file, int64 max_size_bytes);
111
112 virtual void StopAecDump() = 0;
113
114 virtual ~PeerConnectionFactoryInterface() /*override*/;
115 // NOLINTEND
116
117public:
118 // destructor thunk
119 // NOLINTBEGIN
120 MCNAPI void $dtor();
121 // NOLINTEND
122
123public:
124 // virtual function thunks
125 // NOLINTBEGIN
126 MCNAPI ::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface> $CreatePeerConnection(
129 );
130
131 MCNAPI ::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface> $CreatePeerConnection(
133 ::std::unique_ptr<::cricket::PortAllocator> allocator,
134 ::std::unique_ptr<::rtc::RTCCertificateGeneratorInterface> cert_generator,
136 );
137
138 MCNAPI ::webrtc::scoped_refptr<::webrtc::VideoTrackInterface>
139 $CreateVideoTrack(::std::string const& label, ::webrtc::VideoTrackSourceInterface* source);
140
141
142 // NOLINTEND
143};
144
145} // namespace webrtc
Definition PortAllocator.h:25
Definition RTCCertificateGeneratorInterface.h:17
Definition AudioSourceInterface.h:16
Definition AudioTrackInterface.h:18
Definition MediaStreamInterface.h:18
Definition PeerConnectionFactoryInterface.h:38
Definition PeerConnectionFactoryInterface.h:30
MCAPI ::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface > $CreatePeerConnection(::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration, ::std::unique_ptr<::cricket::PortAllocator > allocator, ::std::unique_ptr<::rtc::RTCCertificateGeneratorInterface > cert_generator, ::webrtc::PeerConnectionObserver *observer)
MCAPI ::webrtc::scoped_refptr<::webrtc::VideoTrackInterface > $CreateVideoTrack(::std::string const &label, ::webrtc::VideoTrackSourceInterface *source)
MCAPI ::webrtc::scoped_refptr<::webrtc::PeerConnectionInterface > $CreatePeerConnection(::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration, ::webrtc::PeerConnectionDependencies dependencies)
Definition PeerConnectionInterface.h:44
Definition PeerConnectionObserver.h:22
Definition RefCountInterface.h:10
Definition VideoTrackInterface.h:20
Definition VideoTrackSourceInterface.h:20
Definition scoped_refptr.h:8
Definition AudioOptions.h:7
Definition Alias.h:14
Definition PeerConnectionDependencies.h:12
Definition PeerConnectionInterface.h:198
Definition RtpCapabilities.h:7