Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
NetworkSession.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/nether_net/ContextProxy.h"
7#include "mc/deps/nether_net/ESessionError.h"
8#include "mc/deps/nether_net/SignalingChannelId.h"
9#include "mc/external/webrtc/PeerConnectionInterface.h"
10#include "mc/external/webrtc/scoped_refptr.h"
11
12// auto generated forward declare list
13// clang-format off
14namespace NetherNet { class ConnectRequest; }
15namespace NetherNet { class IIdentityAssertionGenerator; }
16namespace NetherNet { struct NetworkID; }
17namespace webrtc { class DataChannelInterface; }
18namespace webrtc { class RTCStatsReport; }
19// clang-format on
20
21namespace NetherNet {
22
23class NetworkSession : public ::NetherNet::ContextProxy {
24public:
25 // NetworkSession inner types declare
26 // clang-format off
28 // clang-format on
29
30 // NetworkSession inner types define
31 enum class Direction : int {
32 Incoming = 0,
33 Outgoing = 1,
34 };
35
37
38public:
39 // member variables
40 // NOLINTBEGIN
66 // NOLINTEND
67
68public:
69 // prevent constructor by default
70 NetworkSession& operator=(NetworkSession const&);
71 NetworkSession(NetworkSession const&);
72 NetworkSession();
73
74public:
75 // virtual functions
76 // NOLINTBEGIN
77 virtual ~NetworkSession() /*override*/ = default;
78 // NOLINTEND
79
80public:
81 // member functions
82 // NOLINTBEGIN
83 MCNAPI void CheckUpdateStats();
84
85 MCNAPI void CloseWithReason(::NetherNet::ESessionError error) const;
86
87 MCNAPI void InitializeIncoming(
89 ::NetherNet::ConnectRequest const& offer,
90 ::NetherNet::SignalingChannelId preference,
91 ::std::shared_ptr<::NetherNet::IIdentityAssertionGenerator> identityGenerator
92 );
93
95
96 MCNAPI void _onStatsDelivered(::webrtc::RTCStatsReport const& report);
97
98 MCNAPI void onIceConnectionChange(::webrtc::PeerConnectionInterface::IceConnectionState newState);
99 // NOLINTEND
100};
101
102} // namespace NetherNet
Definition ConnectRequest.h:7
Definition ContextProxy.h:18
Definition IIdentityAssertionGenerator.h:7
MCAPI void CloseWithReason(::NetherNet::ESessionError error) const
MCAPI void InitializeIncoming(::NetherNet::NetworkID remoteID, ::NetherNet::ConnectRequest const &offer, ::NetherNet::SignalingChannelId preference, ::std::shared_ptr<::NetherNet::IIdentityAssertionGenerator > identityGenerator)
MCAPI void _onStatsDelivered(::webrtc::RTCStatsReport const &report)
MCAPI void CheckUpdateStats()
MCAPI void _onDataChannel(::webrtc::scoped_refptr<::webrtc::DataChannelInterface > dataChannel)
MCAPI void onIceConnectionChange(::webrtc::PeerConnectionInterface::IceConnectionState newState)
Definition DataChannelInterface.h:19
Definition RTCStatsReport.h:17
Definition scoped_refptr.h:8
Definition NetworkID.h:17
Definition Alias.h:14