MCPcopy Create free account
hub / github.com/Redot-Engine/redot-engine / deserialize

Method deserialize

modules/multiplayer/multiplayer_debugger.cpp:181–198  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

179}
180
181bool MultiplayerDebugger::RPCFrame::deserialize(const Array &p_arr) {
182 ERR_FAIL_COND_V(p_arr.is_empty(), false);
183 uint32_t size = p_arr[0];
184 ERR_FAIL_COND_V(size % 6, false);
185 ERR_FAIL_COND_V((uint32_t)p_arr.size() != size + 1, false);
186 infos.resize(size / 6);
187 int idx = 1;
188 for (uint32_t i = 0; i < size / 6; i++) {
189 infos.write[i].node = uint64_t(p_arr[idx]);
190 infos.write[i].node_path = p_arr[idx + 1];
191 infos.write[i].incoming_rpc = p_arr[idx + 2];
192 infos.write[i].incoming_size = p_arr[idx + 3];
193 infos.write[i].outgoing_rpc = p_arr[idx + 4];
194 infos.write[i].outgoing_size = p_arr[idx + 5];
195 idx += 6;
196 }
197 return true;
198}
199
200void MultiplayerDebugger::RPCProfiler::init_node(const ObjectID p_node) {
201 if (rpc_node_data.has(p_node)) {

Callers 1

captureMethod · 0.45

Calls 4

read_from_arrayMethod · 0.80
sizeMethod · 0.65
is_emptyMethod · 0.45
resizeMethod · 0.45

Tested by

no test coverage detected