MCPcopy Create free account
hub / github.com/BohemiaInteractive/CWR / IsDone

Method IsDone

engine/Poseidon/Network/NetworkMisc.cpp:381–400  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

379 _logoContext.url = _logoUrl;
380 _logoContext.event = &_stateDone;
381 _logoContext.proxy = _proxy.GetLength() > 0 ? (const char*)_proxy : nullptr;
382 _logoContext.maxSize = Poseidon::NetworkSquadFileMaxSize;
383 _logoContext.done.store(false, std::memory_order_release);
384 DownloadToFileOverlapped(&_logoContext);
385 // download result ignored?
386 }
387 else
388 {
389 _state = AllDone;
390 // _stateDone is still Set
391 }
392}
393
394bool CheckSquadObject::IsDone()
395{
396#ifdef _WIN32
397 if (!_stateDone.TryWait())
398#else
399 if ((_state == DownloadingSquad && !_squadContext.done.load(std::memory_order_acquire)) ||
400 (_state == DownloadingLogo && !_logoContext.done.load(std::memory_order_acquire)))
401#endif
402 {
403 return false;

Callers 5

ProcessSearchingMethod · 0.45
OnSimulateMethod · 0.45
FindPathMethod · 0.45

Calls 1

TryWaitMethod · 0.80

Tested by

no test coverage detected