Skip to content

Commit 2b01718

Browse files
committed
Addendum to 93e6ae8 (Fix build error, only happens on build server due to net include)
1 parent 93e6ae8 commit 2b01718

5 files changed

Lines changed: 17 additions & 14 deletions

File tree

Client/core/CModelCacheManager.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ class CModelCacheManagerImpl : public CModelCacheManager
4747
virtual void OnClientClose();
4848
virtual void UpdatePedModelCaching(const std::map<ushort, float>& newNeedCacheList);
4949
virtual void UpdateVehicleModelCaching(const std::map<ushort, float>& newNeedCacheList);
50-
virtual void SetCustomLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds);
50+
virtual void SetCustomLimits(const size_t* numVehicles, const size_t* numPeds);
5151

5252
// CModelCacheManagerImpl methods
5353
CModelCacheManagerImpl();
@@ -224,13 +224,13 @@ void CModelCacheManagerImpl::GetStats(SModelCacheStats& outStats)
224224
// Function to set custom limits, instead of calculating them automatically.
225225
// If the optional is empty, the value is restored to the automatic one
226226
// otherwise it is set to whatever value the opt contains
227-
//
227+
//
228228
///////////////////////////////////////////////////////////////
229-
void CModelCacheManagerImpl::SetCustomLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds) {
230-
if (m_IsUsingCustomPedCacheLimit = numPeds.has_value()) {
229+
void CModelCacheManagerImpl::SetCustomLimits(const size_t* numVehicles, const size_t* numPeds) {
230+
if (m_IsUsingCustomPedCacheLimit = (numPeds != nullptr)) {
231231
m_uiMaxCachedPedModels = *numPeds;
232232
}
233-
if (m_IsUsingCustomVehicleCacheLimit = numVehicles.has_value()) {
233+
if (m_IsUsingCustomVehicleCacheLimit = (numVehicles != nullptr)) {
234234
m_uiMaxCachedVehicleModels = *numVehicles;
235235
}
236236
}
@@ -524,5 +524,5 @@ void CModelCacheManagerImpl::OnRestreamModel(ushort usModelId)
524524
OutputDebugLine(SString("[Cache] End caching model %d (OnRestreamModel)", usModelId));
525525
}
526526
}
527-
}
527+
}
528528
}

Client/core/CModelCacheManager.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
*
88
*****************************************************************************/
99

10-
#include <optional>
11-
1210
struct SModelCacheStats;
1311

1412
class CModelCacheManager
@@ -24,7 +22,7 @@ class CModelCacheManager
2422
virtual void OnClientClose() = 0;
2523
virtual void UpdatePedModelCaching(const std::map<ushort, float>& newNeedCacheList) = 0;
2624
virtual void UpdateVehicleModelCaching(const std::map<ushort, float>& newNeedCacheList) = 0;
27-
virtual void SetCustomLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds) = 0;
25+
virtual void SetCustomLimits(const size_t* numVehicles, const size_t* numPeds) = 0;
2826
};
2927

3028
CModelCacheManager* NewModelCacheManager();

Client/mods/deathmatch/logic/CClientModelCacheManager.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ class CClientModelCacheManagerImpl : public CClientModelCacheManager
3838
// CClientModelCacheManager interface
3939
virtual void DoPulse();
4040
virtual void OnRestreamModel(ushort usModelId);
41-
virtual void SetCustomLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds);
41+
virtual void SetCustomLimits(const size_t* numVehicles, const size_t* numPeds);
4242

4343
// CClientModelCacheManagerImpl methods
4444
CClientModelCacheManagerImpl();
@@ -520,7 +520,7 @@ void CClientModelCacheManagerImpl::OnRestreamModel(ushort usModelId)
520520
m_pCoreModelCacheManager->OnRestreamModel(usModelId);
521521
}
522522

523-
void CClientModelCacheManagerImpl::SetCustomLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds)
523+
void CClientModelCacheManagerImpl::SetCustomLimits(const size_t* numVehicles, const size_t* numPeds)
524524
{
525525
m_pCoreModelCacheManager->SetCustomLimits(numVehicles, numPeds);
526526
}

Client/mods/deathmatch/logic/CClientModelCacheManager.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class CClientModelCacheManager
1515
// CClientModelCacheManager interface
1616
virtual void DoPulse() = 0;
1717
virtual void OnRestreamModel(ushort usModelId) = 0;
18-
virtual void SetCustomLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds) = 0;
18+
virtual void SetCustomLimits(const size_t* numVehicles, const size_t* numPeds) = 0;
1919
};
2020

2121
CClientModelCacheManager* NewClientModelCacheManager();

Client/mods/deathmatch/logic/luadefs/CLuaEngineDefs.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,12 @@
2121
//! Set the CModelCacheManager limits
2222
//! By passing `nil`/no value the original values are restored
2323
void EngineStreamingSetModelCacheLimits(std::optional<size_t> numVehicles, std::optional<size_t> numPeds) {
24-
g_pClientGame->GetModelCacheManager()->SetCustomLimits(numVehicles, numPeds);
24+
const size_t veh = numVehicles.value_or(0);
25+
const size_t ped = numPeds.value_or(0);
26+
g_pClientGame->GetModelCacheManager()->SetCustomLimits(
27+
numVehicles.has_value() ? &veh : nullptr,
28+
numPeds.has_value() ? &ped : nullptr
29+
);
2530
}
2631

2732
void EngineStreamingFreeUpMemory(std::uint32_t bytes)
@@ -150,7 +155,7 @@ void CLuaEngineDefs::LoadFunctions()
150155
{"engineGetPoolUsedCapacity", ArgumentParser<EngineGetPoolUsedCapacity>},
151156
{"engineSetPoolCapacity", ArgumentParser<EngineSetPoolCapacity>},
152157
{"enginePreloadWorldArea", ArgumentParser<EnginePreloadWorldArea>},
153-
158+
154159
// CLuaCFunctions::AddFunction ( "engineReplaceMatchingAtomics", EngineReplaceMatchingAtomics );
155160
// CLuaCFunctions::AddFunction ( "engineReplaceWheelAtomics", EngineReplaceWheelAtomics );
156161
// CLuaCFunctions::AddFunction ( "enginePositionAtomic", EnginePositionAtomic );

0 commit comments

Comments
 (0)