37 struct DisconnectEvent {
49 DisconnectEvent& operator=(DisconnectEvent
const&);
50 DisconnectEvent(DisconnectEvent
const&);
66 struct NewIncomingConnectionEvent {
75 NewIncomingConnectionEvent& operator=(NewIncomingConnectionEvent
const&);
76 NewIncomingConnectionEvent(NewIncomingConnectionEvent
const&);
77 NewIncomingConnectionEvent();
92 struct NewOutgoingConnectionEvent {
101 NewOutgoingConnectionEvent& operator=(NewOutgoingConnectionEvent
const&);
102 NewOutgoingConnectionEvent(NewOutgoingConnectionEvent
const&);
103 NewOutgoingConnectionEvent();
109 MCNAPI ~NewOutgoingConnectionEvent();
122 using BroadcastRequestCallback = ::std::function<bool(
void*,
int*)>;
126 using Event = ::std::variant<
136 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Bedrock::Http::LibHttpClientInstance>
const> mHttpLibrary;
137 ::ll::TypedStorage<8, 24, ::NetherNet::NetworkID const> mNetworkID;
145 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mBroadcastCallbackMutex;
146 ::ll::TypedStorage<8, 64, ::std::function<bool(
void*,
int*)>> mBroadcastRequestCallback;
148 mBroadcastResponseCallback;
149 ::ll::TypedStorage<8, 80, ::std::recursive_mutex> mEventsMutex;
153 ::std::unique_ptr<::std::vector<::std::variant<
158 ::ll::TypedStorage<8, 24, ::std::vector<::std::weak_ptr<::WebRTCNetworkPeer>>> mPeers;
163 NetherNetConnector();
168 virtual ~NetherNetConnector() ;
172 virtual void setDisableLanSignaling(
bool disableLanSignaling) ;
176 virtual bool connect(
181 virtual void tick() ;
183 virtual void runEvents() ;
185 virtual ::NetworkIdentifier getNetworkIdentifier() const ;
191 virtual ::TransportLayer getNetworkType() const ;
193 virtual
void _onDisable() ;
195 virtual
void _onEnable() ;
197 virtual
void OnSpopViolation() ;
199 virtual
void OnSessionClose(
200 ::NetherNet::NetworkID networkID,
202 ::NetherNet::ESessionError sessionError,
203 ::Json::Value summary
207 OnBroadcastResponseReceived(::NetherNet::NetworkID networkID,
void const* pApplicationData,
int size) ;
209 virtual
bool OnBroadcastDiscoveryRequestReceivedGetResponse(
void* pApplicationData,
int* pSize) ;
211 virtual
void OnSessionGetConnectionFlags(::NetherNet::NetworkID, uint* flags) ;
217 MCAPI NetherNetConnector(
220 ::
std::optional<::NetherNet::NetworkID> networkId
223 MCAPI
void _createEventQueue();
226 ::NetherNet::NetworkID const& remoteId,
228 ::Bedrock::Threading::UniqueLock<::
std::recursive_mutex> const&
231 MCAPI
void _queueIncomingConnectionEvent(::NetherNet::NetworkID peerId, uint64 sessionId);
244 ::std::optional<::NetherNet::NetworkID> networkId
259 MCAPI
void $setDisableLanSignaling(
bool disableLanSignaling);
263 MCFOLD
bool $connect(
270 MCAPI
void $runEvents();
272 MCAPI ::NetworkIdentifier $getNetworkIdentifier()
const;
278 MCFOLD ::TransportLayer $getNetworkType()
const;
280 MCFOLD
void $_onDisable();
282 MCFOLD
void $_onEnable();
284 MCFOLD
void $OnSpopViolation();
286 MCAPI
void $OnSessionClose(
289 ::NetherNet::ESessionError sessionError,
293 MCAPI
void $OnBroadcastResponseReceived(
::NetherNet::NetworkID networkID,
void const* pApplicationData,
int size);
295 MCAPI
bool $OnBroadcastDiscoveryRequestReceivedGetResponse(
void* pApplicationData,
int* pSize);