LeviLamina
Loading...
Searching...
No Matches
Connector.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/network/TransportLayer.h"
7#include "mc/network/connection/DisconnectFailReason.h"
8
9// auto generated forward declare list
10// clang-format off
12class NetworkPeer;
13namespace Json { class Value; }
14namespace Social { class GameConnectionInfo; }
15namespace Social { struct ResolvedExperienceInfo; }
16// clang-format on
17
18class Connector {
19public:
20 // Connector inner types declare
21 // clang-format off
23 // clang-format on
24
25 // Connector inner types define
27 public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual ~ConnectionCallbacks() = default;
31
32 virtual bool
33 onNewIncomingConnection(::NetworkIdentifier const& id, ::std::shared_ptr<::NetworkPeer>&& peer) = 0;
34
35 virtual bool
36 onNewOutgoingConnection(::NetworkIdentifier const& id, ::std::shared_ptr<::NetworkPeer>&& peer) = 0;
37
38 virtual void onConnectionClosed(
39 ::NetworkIdentifier const& id,
40 ::Connection::DisconnectFailReason const discoReason,
41 ::std::string const& messageFromServer,
42 ::std::string const& messageBodyOverride,
43 bool skipDisconnectMessage,
44 ::Json::Value const& sessionSummary
45 ) = 0;
46 // NOLINTEND
47 };
48
49public:
50 // member variables
51 // NOLINTBEGIN
52 ::ll::TypedStorage<8, 8, ::Connector::ConnectionCallbacks&> mCallbacks;
53 // NOLINTEND
54
55public:
56 // prevent constructor by default
57 Connector& operator=(Connector const&);
58 Connector(Connector const&);
59 Connector();
60
61public:
62 // virtual functions
63 // NOLINTBEGIN
64 virtual ~Connector() = default;
65
66 virtual ::std::string getLocalIp();
67
68 virtual ushort getPort() const;
69
70 virtual ::Social::GameConnectionInfo const& getConnectedGameInfo() const;
71
72 virtual void
73 setConnectedResolvedExperienceInfo(::std::optional<::Social::ResolvedExperienceInfo> const& resolvedExperienceInfo);
74
75 virtual bool isIPv4Supported() const;
76
77 virtual bool isIPv6Supported() const;
78
79 virtual ushort getIPv4Port() const;
80
81 virtual ushort getIPv6Port() const;
82
83 virtual ::TransportLayer getNetworkType() const;
84 // NOLINTEND
85
86public:
87 // virtual function thunks
88 // NOLINTBEGIN
89 MCFOLD ::std::string $getLocalIp();
90
91 MCFOLD ushort $getPort() const;
92
93 MCFOLD ::Social::GameConnectionInfo const& $getConnectedGameInfo() const;
94
95 MCFOLD void $setConnectedResolvedExperienceInfo(
96 ::std::optional<::Social::ResolvedExperienceInfo> const& resolvedExperienceInfo
97 );
98
99 MCFOLD bool $isIPv4Supported() const;
100
101 MCFOLD bool $isIPv6Supported() const;
102
103 MCFOLD ushort $getIPv4Port() const;
104
105 MCFOLD ushort $getIPv6Port() const;
106
107 MCFOLD ::TransportLayer $getNetworkType() const;
108
109
110 // NOLINTEND
111
112public:
113 // vftables
114 // NOLINTBEGIN
115 MCNAPI static void** $vftable();
116 // NOLINTEND
117};
static MCAPI void ** $vftable()
Definition Value.h:16
Definition NetworkIdentifier.h:10
Definition NetworkPeer.h:8
Definition GameConnectionInfo.h:24
Definition Connector.h:26
Definition ResolvedExperienceInfo.h:7