LeviLamina
Loading...
Searching...
No Matches
IceControllerInterface.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/ArrayView.h"
7#include "mc/external/webrtc/IceMode.h"
8#include "mc/external/webrtc/IceSwitchReason.h"
9#include "mc/external/webrtc/NominationMode.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace webrtc { class Connection; }
14namespace webrtc { struct IceConfig; }
15// clang-format on
16
17namespace webrtc {
18
20public:
21 // IceControllerInterface inner types declare
22 // clang-format off
23 struct PingResult;
24 struct SwitchResult;
25 // clang-format on
26
27 // IceControllerInterface inner types define
28 struct PingResult {
29 public:
30 // member variables
31 // NOLINTBEGIN
34 // NOLINTEND
35
36 public:
37 // prevent constructor by default
38 PingResult& operator=(PingResult const&);
39 PingResult(PingResult const&);
40 PingResult();
41 };
42
43 struct SwitchResult {
44 public:
45 // member variables
46 // NOLINTBEGIN
50 // NOLINTEND
51
52 public:
53 // prevent constructor by default
54 SwitchResult& operator=(SwitchResult const&);
55 SwitchResult();
56
57 public:
58 // member functions
59 // NOLINTBEGIN
61
62 MCNAPI ~SwitchResult();
63 // NOLINTEND
64
65 public:
66 // constructor thunks
67 // NOLINTBEGIN
69 // NOLINTEND
70
71 public:
72 // destructor thunk
73 // NOLINTBEGIN
74 MCNAPI void $dtor();
75 // NOLINTEND
76 };
77
78public:
79 // virtual functions
80 // NOLINTBEGIN
81 virtual ~IceControllerInterface() = default;
82
83 virtual void SetIceConfig(::webrtc::IceConfig const& config) = 0;
84
85 virtual void SetSelectedConnection(::webrtc::Connection const* selected_connection) = 0;
86
87 virtual void AddConnection(::webrtc::Connection const* connection) = 0;
88
89 virtual void OnConnectionDestroyed(::webrtc::Connection const* connection) = 0;
90
91 virtual ::webrtc::ArrayView<::webrtc::Connection const* const> GetConnections() const;
92
93 virtual ::webrtc::ArrayView<::webrtc::Connection const*> connections() const;
94
95 virtual bool HasPingableConnection() const = 0;
96
97 virtual ::webrtc::IceControllerInterface::PingResult SelectConnectionToPing(int64 last_ping_sent_ms) = 0;
98
99 virtual bool GetUseCandidateAttr(
100 ::webrtc::Connection const* conn,
101 ::webrtc::NominationMode mode,
102 ::webrtc::IceMode remote_ice_mode
103 ) const = 0;
104
105 virtual ::webrtc::Connection const* FindNextPingableConnection() = 0;
106
107 virtual void MarkConnectionPinged(::webrtc::Connection const* conn) = 0;
108
109 virtual ::webrtc::IceControllerInterface::SwitchResult
110 ShouldSwitchConnection(::webrtc::IceSwitchReason reason, ::webrtc::Connection const* new_connection) = 0;
111
112 virtual ::webrtc::IceControllerInterface::SwitchResult
113 SortAndSwitchConnection(::webrtc::IceSwitchReason reason) = 0;
114
115 virtual ::std::vector<::webrtc::Connection const*> PruneConnections() = 0;
116 // NOLINTEND
117};
118
119} // namespace webrtc
Definition Connection.h:35
Definition IceControllerInterface.h:19
Definition Alias.h:14
Definition IceConfig.h:16
Definition IceControllerInterface.h:28
Definition IceControllerInterface.h:43
MCAPI void * $ctor(::webrtc::IceControllerInterface::SwitchResult const &)
MCAPI SwitchResult(::webrtc::IceControllerInterface::SwitchResult const &)