MCPcopy Create free account
hub / github.com/FlaxEngine/FlaxEngine / PopEvent

Method PopEvent

Source/Engine/Networking/Drivers/NetworkLagDriver.cpp:95–123  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

93}
94
95bool NetworkLagDriver::PopEvent(NetworkEvent& eventPtr)
96{
97 if (!_driver)
98 return false;
99
100 // Try to pop lagged event from the queue
101 for (int32 i = 0; i < _events.Count(); i++)
102 {
103 auto& e = _events[i];
104 if (e.Lag > 0.0)
105 continue;
106
107 eventPtr = e.Event;
108 _events.RemoveAtKeepOrder(i);
109 return true;
110 }
111
112 // Consume any incoming events
113 while (_driver->PopEvent(eventPtr))
114 {
115 if (Lag <= 0.0)
116 return true;
117
118 auto& e = _events.AddOne();
119 e.Lag = (double)Lag;
120 e.Event = eventPtr;
121 }
122 return false;
123}
124
125void NetworkLagDriver::SendMessage(const NetworkChannelType channelType, const NetworkMessage& message)
126{

Callers

nothing calls this directly

Calls 3

RemoveAtKeepOrderMethod · 0.80
AddOneMethod · 0.80
CountMethod · 0.45

Tested by

no test coverage detected