LeviLamina
Loading...
Searching...
No Matches
WebRtcComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/threading/Async.h"
7#include "mc/deps/nether_net/ESessionError.h"
8#include "mc/network/services/signaling/IJsonRpcComponent.h"
9#include "mc/platform/Result.h"
10
11// auto generated forward declare list
12// clang-format off
14namespace JsonRpc { class JsonRpcError; }
15namespace JsonRpc { class JsonRpcProvider; }
16namespace JsonRpc { class ReceiveClientMessageResult; }
17namespace NetherNet { struct NetworkID; }
18namespace PlayerMessaging { struct NetworkID; }
19// clang-format on
20
21namespace JsonRpc {
22
23class WebRtcComponent : public ::IJsonRpcComponent, public ::std::enable_shared_from_this<::JsonRpc::WebRtcComponent> {
24public:
25 // member variables
26 // NOLINTBEGIN
33 // NOLINTEND
34
35public:
36 // prevent constructor by default
37 WebRtcComponent& operator=(WebRtcComponent const&);
38 WebRtcComponent(WebRtcComponent const&);
39 WebRtcComponent();
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual void initialize(::std::shared_ptr<::JsonRpc::JsonRpcProvider> provider) /*override*/;
45 // NOLINTEND
46
47public:
48 // member functions
49 // NOLINTBEGIN
50 MCNAPI explicit WebRtcComponent(::std::shared_ptr<::ISignalingJsonRpcInterop> interop);
51
52 MCNAPI void
53 _sendDeliveryNotification(::PlayerMessaging::NetworkID const& toPlayerId, ::std::string const& messageId);
54
55#ifdef LL_PLAT_C
56 MCNAPI void addNetworkIdMapping(::NetherNet::NetworkID nethernetId, ::PlayerMessaging::NetworkID playerMessagingId);
57#endif
58
60
61 MCNAPI void sendJsonRpcSignal(
62 ::NetherNet::NetworkID networkIDTo,
63 ::NetherNet::NetworkID networkIDFrom,
64 ::std::string const& message,
65 ::std::function<void(::NetherNet::ESessionError)>&& onComplete
66 );
67
68 MCNAPI ::Bedrock::Threading::Async<::Bedrock::Result<void, ::JsonRpc::JsonRpcError>> sendPing() const;
69
70 MCNAPI void sendTurnConfigRequest();
71 // NOLINTEND
72
73public:
74 // constructor thunks
75 // NOLINTBEGIN
76 MCNAPI void* $ctor(::std::shared_ptr<::ISignalingJsonRpcInterop> interop);
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82 MCNAPI void $initialize(::std::shared_ptr<::JsonRpc::JsonRpcProvider> provider);
83
84
85 // NOLINTEND
86
87public:
88 // vftables
89 // NOLINTBEGIN
90 MCNAPI static void** $vftable();
91 // NOLINTEND
92};
93
94} // namespace JsonRpc
Definition IJsonRpcComponent.h:10
Definition ISignalingJsonRpcInterop.h:20
Definition JsonRpcError.h:12
Definition JsonRpcProvider.h:20
Definition ReceiveClientMessageResult.h:12
MCAPI void parseJsonRpcClientMessage(::JsonRpc::ReceiveClientMessageResult const &result)
MCAPI void sendJsonRpcSignal(::NetherNet::NetworkID networkIDTo, ::NetherNet::NetworkID networkIDFrom, ::std::string const &message, ::std::function< void(::NetherNet::ESessionError)> &&onComplete)
MCAPI WebRtcComponent(::std::shared_ptr<::ISignalingJsonRpcInterop > interop)
MCAPI void * $ctor(::std::shared_ptr<::ISignalingJsonRpcInterop > interop)
MCAPI void sendTurnConfigRequest()
static MCAPI void ** $vftable()
MCAPI void _sendDeliveryNotification(::PlayerMessaging::NetworkID const &toPlayerId, ::std::string const &messageId)
MCAPI ::Bedrock::Threading::Async<::Bedrock::Result< void, ::JsonRpc::JsonRpcError > > sendPing() const
MCAPI void $initialize(::std::shared_ptr<::JsonRpc::JsonRpcProvider > provider)
Definition NetworkID.h:17
Definition NetworkID.h:13
Definition Alias.h:14