MCPcopy Create free account
hub / github.com/MergHQ/CRYENGINE / UnloadLayerPak

Method UnloadLayerPak

Code/CryEngine/CrySystem/AsyncPakManager.cpp:272–302  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

270//////////////////////////////////////////////////////////////////////////
271
272void CAsyncPakManager::UnloadLayerPak(const char* sLayerName)
273{
274 TPakMap::iterator findResult = m_paks.find(sLayerName);
275 if (findResult == m_paks.end())
276 return;
277
278 SAsyncPak& layerPak = findResult->second;
279 layerPak.nRequestCount--;
280 assert(layerPak.nRequestCount >= 0);
281 if (layerPak.nRequestCount > 0)
282 return;
283
284 if (layerPak.bStreaming)
285 {
286 if (layerPak.pReadStream)
287 layerPak.pReadStream->Abort();
288 layerPak.eState = SAsyncPak::STATE_REQUESTUNLOAD;
289 return;
290 }
291
292 if (layerPak.eState == SAsyncPak::STATE_LOADED)
293 {
294 ReleaseData(&layerPak);
295 m_bRequestLayerUpdate = true;
296 }
297
298 if (layerPak.eState == SAsyncPak::STATE_REQUESTED)
299 {
300 layerPak.eState = SAsyncPak::STATE_UNLOADED;
301 }
302}
303
304//////////////////////////////////////////////////////////////////////////
305

Callers 2

ToggleLayerVisibilityMethod · 0.45
EnableLayerMethod · 0.45

Calls 3

findMethod · 0.45
endMethod · 0.45
AbortMethod · 0.45

Tested by

no test coverage detected