LeviLamina
Loading...
Searching...
No Matches
NetworkStatistics.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/profiler/CounterTokenMarker.h"
8#include "mc/deps/raknet/RakNetStatistics.h"
9#include "mc/network/ClientOrServerNetworkSystemRef.h"
10#include "mc/network/PacketObserver.h"
11#include "mc/network/TrackerType.h"
12#include "mc/platform/threading/Mutex.h"
13
14// auto generated forward declare list
15// clang-format off
18class Packet;
20class WeakEntityRef;
21namespace Core { class OutputFileStream; }
22// clang-format on
23
25public:
26 // NetworkStatistics inner types declare
27 // clang-format off
28 struct OverviewStats;
29 // clang-format on
30
31 // NetworkStatistics inner types define
33 public:
34 // member variables
35 // NOLINTBEGIN
40 // NOLINTEND
41
42 public:
43 // prevent constructor by default
44 OverviewStats& operator=(OverviewStats const&);
47 };
48
49public:
50 // member variables
51 // NOLINTBEGIN
52 ::ll::TypedStorage<4, 4, ::TrackerType const> mType;
53 ::ll::TypedStorage<8, 16, ::ClientOrServerNetworkSystemRef> mNetwork;
54 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::NetworkDebugManager> const> mNetworkDebugManager;
55 ::ll::TypedStorage<4, 4, int> mTicks;
56 ::ll::TypedStorage<4, 16, ::NetworkStatistics::OverviewStats> mTotalOverview;
57 ::ll::TypedStorage<8, 64, ::std::unordered_map<int, ::PacketObserver::PacketStats>> mTotalPacketStats;
58 ::ll::TypedStorage<8, 64, ::std::unordered_map<int, ::PacketObserver::PacketStats>> mDebuggerPacketStats;
59 ::ll::TypedStorage<8, 24, ::std::vector<::PacketObserver::PacketStats>> mTotalCSVPacketStats;
60 ::ll::TypedStorage<8, 64, ::std::unordered_map<int, ::PacketObserver::PacketStats>> mCurrentPacketStats;
61 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::std::string>> mCurrentSourceNetworkIdentifierStrings;
62 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::std::string>> mCurrentTargetNetworkIdentifierStrings;
63 ::ll::TypedStorage<8, 10496, ::std::array<::std::string, 328>> mPacketNames;
64 ::ll::TypedStorage<4, 16, ::NetworkStatistics::OverviewStats> mCurrentOverview;
65 ::ll::TypedStorage<8, 24, ::std::vector<::NetworkStatistics::OverviewStats>> mLastSeconds;
66 ::ll::TypedStorage<8, 8, double> mStartSeconds;
67 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mRakNetStatsReadingLock;
68 ::ll::TypedStorage<8, 224, ::RakNet::RakNetStatistics> mRakNetStatsReading;
69 ::ll::TypedStorage<8, 64, ::std::function<bool(::RakNet::RakNetStatistics&)>> mGetRakNetStatsReading;
70 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Core::OutputFileStream>> mCSVFile;
71 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mUserBytesPerSecSentCounterToken;
72 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mActualBytesPerSecSentCounterToken;
73 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mActualBytesPerSecReceivedCounterToken;
74 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mUserBytesTotalSentCounterToken;
75 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mActualBytesTotalSentCounterToken;
76 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mActualBytesTotalReceivedCounterToken;
77 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mPacketLossPercentagePerSecCounterToken;
78 ::ll::TypedStorage<1, 1, ::Core::Profile::CounterTokenMarker> mPacketLossPercentageTotalCounterToken;
79 // NOLINTEND
80
81public:
82 // prevent constructor by default
84
85public:
86 // virtual functions
87 // NOLINTBEGIN
88 // vIndex: 0
89 virtual ~NetworkStatistics() /*override*/;
90
91 // vIndex: 1
92 virtual void packetSentTo(::NetworkIdentifier const& target, ::Packet const& packet, uint size) /*override*/;
93
94 // vIndex: 2
95 virtual void packetReceivedFrom(::NetworkIdentifier const& source, ::Packet const& packet, uint size) /*override*/;
96
97 // vIndex: 3
98 virtual void dataSentTo(::NetworkIdentifier const& target, ::std::string_view data) /*override*/;
99
100 // vIndex: 4
101 virtual void dataReceivedFrom(::NetworkIdentifier const& source, ::std::string const& data) /*override*/;
102
103 // vIndex: 5
104 virtual void reset() /*override*/;
105 // NOLINTEND
106
107public:
108 // member functions
109 // NOLINTBEGIN
110 MCAPI NetworkStatistics(
112 ::TrackerType type,
113 ::std::function<bool(::RakNet::RakNetStatistics&)>&& getRakNetStatsReading,
114 ::Bedrock::NotNullNonOwnerPtr<::NetworkDebugManager> networkDebugManager
115 );
116
117 MCAPI NetworkStatistics(
118 ::ServerNetworkSystem& server,
119 ::TrackerType type,
120 ::std::function<bool(::RakNet::RakNetStatistics&)>&& getRakNetStatsReading,
121 ::Bedrock::NotNullNonOwnerPtr<::NetworkDebugManager> networkDebugManager
122 );
123
124 MCAPI void _initRakNetProfileTracking();
125
126 MCAPI void _logPeerConnectionInfo(::std::vector<::WeakEntityRef> const& userList, bool includeAverages) const;
127
128 MCAPI ::std::string getVerboseInfo() const;
129
130 MCAPI void tick(::std::vector<::WeakEntityRef> const* userList);
131 // NOLINTEND
132
133public:
134 // constructor thunks
135 // NOLINTBEGIN
136 MCAPI void* $ctor(
138 ::TrackerType type,
139 ::std::function<bool(::RakNet::RakNetStatistics&)>&& getRakNetStatsReading,
140 ::Bedrock::NotNullNonOwnerPtr<::NetworkDebugManager> networkDebugManager
141 );
142
143 MCAPI void* $ctor(
144 ::ServerNetworkSystem& server,
145 ::TrackerType type,
146 ::std::function<bool(::RakNet::RakNetStatistics&)>&& getRakNetStatsReading,
147 ::Bedrock::NotNullNonOwnerPtr<::NetworkDebugManager> networkDebugManager
148 );
149 // NOLINTEND
150
151public:
152 // destructor thunk
153 // NOLINTBEGIN
154 MCAPI void $dtor();
155 // NOLINTEND
156
157public:
158 // virtual function thunks
159 // NOLINTBEGIN
160 MCAPI void $packetSentTo(::NetworkIdentifier const& target, ::Packet const& packet, uint size);
161
162 MCAPI void $packetReceivedFrom(::NetworkIdentifier const& source, ::Packet const& packet, uint size);
163
164 MCAPI void $dataSentTo(::NetworkIdentifier const& target, ::std::string_view data);
165
166 MCAPI void $dataReceivedFrom(::NetworkIdentifier const& source, ::std::string const& data);
167
168 MCAPI void $reset();
169 // NOLINTEND
170
171public:
172 // vftables
173 // NOLINTBEGIN
174 MCNAPI static void** $vftable();
175 // NOLINTEND
176};
Definition ClientOrServerNetworkSystemRef.h:15
Definition NetworkDebugManager.h:14
Definition NetworkIdentifier.h:10
Definition NetworkStatistics.h:24
static MCAPI void ** $vftable()
Definition PacketObserver.h:14
Definition Packet.h:26
Definition ServerNetworkSystem.h:26
Definition WeakEntityRef.h:14
Definition NetworkStatistics.h:32
Definition RakNetStatistics.h:7
Definition Alias.h:14