45 virtual void onAllConnectionsClosed(::Connection::DisconnectFailReason, ::std::string
const&,
bool) = 0;
47 virtual void onAllRemoteConnectionsClosed(::Connection::DisconnectFailReason, ::std::string
const&,
bool) = 0;
49 virtual void onOutgoingConnectionFailed(::Connection::DisconnectFailReason, ::std::string
const&) = 0;
51 virtual void onWebsocketRequest(::std::string
const&, ::std::string
const&, ::std::function<
void()>) = 0;
71 ::ll::TypedStorage<8, 32, ::std::string> mAddress;
72 ::ll::TypedStorage<8, 64, ::std::function<void(uint)>> mAction;
84 MCFOLD_C
void $dtor();
100 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mTimepoint;
101 ::ll::TypedStorage<8, 32, ::std::string> mReadBuffer;
122 ::std::string mSendBuffer;
123 ::std::vector<ReadBufferData> mReadBufferDatas;
124 int mApproximateMaxBps;
131 RakNetNetworkPeer& operator=(RakNetNetworkPeer
const&);
132 RakNetNetworkPeer(RakNetNetworkPeer
const&);
139 sendPacket(::std::string
const& data, ::NetworkPeer::Reliability reliability, ::Compressibility) ;
141 virtual ::NetworkPeer::DataStatus _receivePacket(
142 ::std::string& outData,
143 ::std::shared_ptr<::std::chrono::steady_clock::time_point>
const& timepointPtr
146 virtual ::NetworkPeer::NetworkStatus getNetworkStatus() const ;
148 virtual
void update() ;
150 virtual
bool isLocal() const ;
152 virtual
bool isEncrypted() const ;
154 virtual ~RakNetNetworkPeer() = default;
160 MCAPI RakNetNetworkPeer(::RakNet::RakPeerInterface& rakPeer, ::
NetworkIdentifier const&
id);
162 MCAPI
void newData(::
std::
string data);
168 MCAPI
void* $ctor(::RakNet::RakPeerInterface& rakPeer, ::
NetworkIdentifier const&
id);
174 MCAPI
void $sendPacket(::
std::
string const& data, ::
NetworkPeer::Reliability reliability, ::Compressibility);
177 ::
std::
string& outData,
178 ::
std::shared_ptr<::
std::chrono::steady_clock::time_point> const& timepointPtr
182 MCAPI
void $update();
184 MCFOLD
bool $isLocal() const;
186 MCFOLD
bool $isEncrypted() const;
202 ::ll::TypedStorage<8, 472, ::Social::GameConnectionInfo> mBackupGameConnection;
203 ::ll::TypedStorage<1, 1,
bool> mTryBackupConnection;
204 ::ll::TypedStorage<8, 16, ::
std::unique_ptr<::RakNet::RakPeerInterface,
void (*)(::RakNet::RakPeerInterface*)>>
208 ::ll::TypedStorage<8, 8, ::
RakPeerHelper::IPSupportInterface&> mIPSupportInterface;
209 ::ll::TypedStorage<1, 1,
bool> mIsAwaitingNatClient;
210 ::ll::TypedStorage<1, 1,
bool> mIsServer;
211 ::ll::TypedStorage<1, 1,
bool> mIsDisconnecting;
212 ::ll::TypedStorage<1, 1,
bool> mConnectingToClient;
213 ::ll::TypedStorage<8, 472, ::Social::GameConnectionInfo> mConnectedGameInfo;
219 ::ll::TypedStorage<1, 1,
bool> mWasHostWhenSuspended;
221 ::ll::TypedStorage<8, 32, ::
std::
string> mResolvedIP;
222 ::ll::TypedStorage<8, 24, ::
std::vector<::RakNetConnector::
PingCallbackData>> mPingTimeCallbacks;
223 ::ll::TypedStorage<8, 8, ::
std::unique_ptr<::
MPMCQueue<::
std::function<
void()>>>> mOwnedThreadWork;
228 RakNetConnector& operator=(RakNetConnector const&);
229 RakNetConnector(RakNetConnector const&);
235 virtual ~RakNetConnector() ;
239 virtual
bool connect(
240 ::Social::GameConnectionInfo const& gameConnection,
241 ::Social::GameConnectionInfo const& backupConnection
244 virtual
void disconnect() ;
246 virtual
void tick() ;
248 virtual
void runEvents() ;
254 virtual
bool isServer() const ;
256 virtual ::
std::
string getLocalIp() ;
258 virtual ushort getPort() const ;
260 virtual ::Social::GameConnectionInfo const& getConnectedGameInfo() const ;
262 virtual
bool isIPv4Supported() const ;
264 virtual
bool isIPv6Supported() const ;
266 virtual ushort getIPv4Port() const ;
268 virtual ushort getIPv6Port() const ;
272 virtual ::RakNet::RakPeerInterface* getPeer();
274 virtual ::RakNet::RakPeerInterface const* getPeer() const;
276 virtual ::TransportLayer getNetworkType() const ;
278 virtual
void setDisableLanSignaling(
bool) ;
280 virtual
void setDisableTrickleIce(
bool) ;
282 virtual
void _onDisable() ;
284 virtual
void _onEnable() ;
290 MCAPI RakNetConnector(
293 ::Bedrock::NonOwnerPointer<::
AppPlatform> const& appPlatform,
294 ::RakNet::RakPeerConfiguration const& rakPeerConfig
297 MCAPI ::
std::shared_ptr<::RakNetConnector::RakNetNetworkPeer> _createPeer(::
NetworkIdentifier const&
id);
299 MCAPI ::
std::vector<::
std::
string> _getLocalIps() const;
301 MCAPI ::
std::vector<::RakNet::SystemAddress> _getRefinedLocalIps() const;
303 MCAPI
void _storeLocalIP();
306 getPingTimeForConnection(::
std::
string const& address,
int port, ::
std::function<
void(uint)> pingTimeCallback);
308 MCAPI
bool getStatistics(::RakNet::RakNetStatistics& rns);
317 ::Bedrock::NonOwnerPointer<::
AppPlatform> const& appPlatform,
318 ::RakNet::RakPeerConfiguration const& rakPeerConfig
334 $connect(::Social::GameConnectionInfo const& gameConnection, ::Social::GameConnectionInfo const& backupConnection);
336 MCAPI
void $disconnect();
340 MCAPI
void $runEvents();
346 MCAPI
bool $isServer() const;
348 MCAPI ::
std::
string $getLocalIp();
350 MCAPI ushort $getPort() const;
352 MCAPI ::Social::GameConnectionInfo const& $getConnectedGameInfo() const;
354 MCAPI
bool $isIPv4Supported() const;
356 MCAPI
bool $isIPv6Supported() const;
358 MCAPI ushort $getIPv4Port() const;
360 MCAPI ushort $getIPv6Port() const;
364 MCFOLD ::RakNet::RakPeerInterface* $getPeer();
366 MCFOLD ::RakNet::RakPeerInterface const* $getPeer() const;
368 MCFOLD
void $setDisableLanSignaling(
bool);
370 MCFOLD
void $setDisableTrickleIce(
bool);
372 MCAPI
void $_onDisable();
374 MCAPI
void $_onEnable();
377 MCFOLD ::TransportLayer $getNetworkType()
const;