3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/nether_net/ContextProxy.h"
7#include "mc/deps/nether_net/ESendType.h"
8#include "mc/deps/nether_net/ESessionError.h"
9#include "mc/deps/nether_net/SignalingChannelId.h"
10#include "mc/deps/nether_net/utils/ErrorOr.h"
11#include "mc/platform/threading/UniqueLock.h"
15namespace NetherNet {
class CandidateAdd; }
16namespace NetherNet {
class ConnectError; }
17namespace NetherNet {
class ConnectRequest; }
18namespace NetherNet {
class ConnectResponse; }
20namespace NetherNet {
class SimpleNetworkInterfaceImpl; }
21namespace NetherNet {
struct NetworkID; }
22namespace NetherNet {
struct SessionState; }
23namespace webrtc {
class SessionDescriptionInterface; }
81 ::std::vector<::std::unique_ptr<::NetherNet::NetworkSession>>&,
88 ::NetherNet::ESessionError reason
94 ::std::vector<::std::unique_ptr<::NetherNet::NetworkSession>>&,
114 uint64
const& connectionId,
115 ::std::unique_ptr<::webrtc::SessionDescriptionInterface> pSessionDescription,
116 ::NetherNet::SignalingChannelId preference,
143 ::NetherNet::SignalingChannelId
149 ::NetherNet::SignalingChannelId
155 ::NetherNet::SignalingChannelId
161 ::NetherNet::SignalingChannelId sourceChannel
175 ::NetherNet::ESendType eSendType
185 ::std::optional<::NetherNet::SignalingChannelId> preference
Definition UniqueLock.h:8
Definition CandidateAdd.h:7
Definition ConnectError.h:7
Definition ConnectRequest.h:7
Definition ConnectResponse.h:7
Definition ContextProxy.h:18
Definition NetworkSessionManager.h:28
MCAPI bool ReadPacket(::NetherNet::NetworkID remoteId, uint64 connectionId, void *pubDest, uint cbDest, uint *pcbMessageSize)
static MCAPI void ** $vftable()
MCAPI ::NetherNet::ErrorOr< void, ::NetherNet::ESessionError > SendToSignalingChannel(::NetherNet::NetworkID networkIDTo, ::std::variant< ::NetherNet::ConnectRequest, ::NetherNet::ConnectResponse, ::NetherNet::ConnectError, ::NetherNet::CandidateAdd > const &signal, ::std::optional<::NetherNet::SignalingChannelId > preference)
MCAPI bool SendPacket(::NetherNet::NetworkID networkIDRemote, uint64 connectionId, char const *pbData, uint cbData, ::NetherNet::ESendType eSendType)
MCAPI void ProcessSignal(::NetherNet::NetworkID remoteID, ::NetherNet::ConnectResponse const &signal, ::NetherNet::SignalingChannelId) const
MCAPI void ProcessSignal(::NetherNet::NetworkID remoteID, ::NetherNet::CandidateAdd const &signal, ::NetherNet::SignalingChannelId)
MCAPI::NetherNet::NetworkSession * InitiateOutgoingSession(::NetherNet::NetworkID remoteID, ::Bedrock::Threading::UniqueLock<::std::recursive_mutex > const &sessionsLock)
MCAPI void RemoteMessageReceived(::NetherNet::NetworkID remoteID, uint64 connectionId, void const *pvData, uint64 cbSize)
MCAPI void NotifyOnSessionOpen(::NetherNet::NetworkID networkIDRemote, uint64 connectionId)
MCAPI NetworkSessionManager(::NetherNet::ContextProxy const &ctx, ::NetherNet::SimpleNetworkInterfaceImpl &networkInterface)
MCAPI void ClearPacketData(::NetherNet::NetworkID remoteId, uint64 connectionId)
MCAPI void ProcessSignal(::NetherNet::NetworkID remoteID, ::NetherNet::ConnectRequest const &signal, ::NetherNet::SignalingChannelId sourceChannel)
MCAPI void FilterDeadSessions(::NetherNet::NetworkID remoteID, ::std::tuple< ::std::vector<::std::unique_ptr<::NetherNet::NetworkSession > > &, ::Bedrock::Threading::UniqueLock<::std::recursive_mutex > const & > const &list)
MCAPI ::std::vector<::std::unique_ptr<::NetherNet::NetworkSession > > & GetCurrentSessions(::NetherNet::NetworkID remoteID, ::Bedrock::Threading::UniqueLock<::std::recursive_mutex > const &sessionsLock)
MCAPI bool GetSessionState(::NetherNet::NetworkID peerId, uint64 connectionId, ::NetherNet::SessionState *pConnectionState)
MCAPI::NetherNet::ESessionError InitiateIncomingSession(::NetherNet::NetworkID remoteID, uint64 const &connectionId, ::std::unique_ptr<::webrtc::SessionDescriptionInterface > pSessionDescription, ::NetherNet::SignalingChannelId preference, ::Bedrock::Threading::UniqueLock<::std::recursive_mutex > const &sessionsLock)
MCAPI::NetherNet::NetworkSession * FindOrCreateSpecificSession(::NetherNet::NetworkID remoteId, uint64 connectionId, ::Bedrock::Threading::UniqueLock<::std::recursive_mutex > const &sessionsLock)
MCAPI bool CloseSessionWithReason(::NetherNet::NetworkID networkIDRemote, uint64 connectionId, ::NetherNet::ESessionError reason)
MCAPI void PeriodicDeadSessionCleanupOnSignalThread()
MCAPI void * $ctor(::NetherNet::ContextProxy const &ctx, ::NetherNet::SimpleNetworkInterfaceImpl &networkInterface)
MCAPI bool NotifyOnSessionRequested(::NetherNet::NetworkID networkIDRemote, uint64 connectionId)
MCAPI void ProcessError(::NetherNet::NetworkID remoteID, uint64 connectionId, ::NetherNet::ESessionError error)
MCAPI bool IsPacketAvailable(::NetherNet::NetworkID remoteId, uint64 connectionId, uint *pcbMessageSize)
MCAPI void CloseInactiveSessionsOnSignalThread(::NetherNet::NetworkID remoteID, ::std::tuple< ::std::vector<::std::unique_ptr<::NetherNet::NetworkSession > > &, ::Bedrock::Threading::UniqueLock<::std::recursive_mutex > const & > const &list)
MCAPI void ProcessSignal(::NetherNet::NetworkID remoteID, ::NetherNet::ConnectError const &signal, ::NetherNet::SignalingChannelId) const
Definition SimpleNetworkInterfaceImpl.h:40
Definition NetworkSession.h:8
Definition NetworkID.h:12
Definition NetworkSessionManager.h:36
Definition SessionState.h:7