RTech: rename pak defines

More correct and consistent naming.
This commit is contained in:
Kawe Mazidjatari 2024-04-11 01:42:55 +02:00
parent 64f8f27bc8
commit dea96ddf31
7 changed files with 50 additions and 45 deletions

View File

@ -42,13 +42,13 @@ PakHandle_t CustomPakData_t::LoadAndAddPak(const char* const pakFile)
if (numHandles >= MAX_CUSTOM_PAKS)
{
Error(eDLL_T::ENGINE, NO_ERROR, "Tried to load pak '%s', but already reached the SDK's limit of %d!\n", pakFile, MAX_CUSTOM_PAKS);
return INVALID_PAK_HANDLE;
return PAK_INVALID_HANDLE;
}
const PakHandle_t pakId = g_pakLoadApi->LoadAsync(pakFile, AlignedMemAlloc(), 4, 0);
// failure, don't add and return the invalid handle.
if (pakId == INVALID_PAK_HANDLE)
if (pakId == PAK_INVALID_HANDLE)
return pakId;
handles[numHandles++] = pakId;
@ -64,14 +64,14 @@ void CustomPakData_t::UnloadAndRemoveAll()
{
const PakHandle_t pakId = handles[numHandles-1];
if (pakId == INVALID_PAK_HANDLE)
if (pakId == PAK_INVALID_HANDLE)
{
assert(0); // invalid handles should not be inserted
return;
}
g_pakLoadApi->UnloadAsync(pakId);
handles[numHandles-1] = INVALID_PAK_HANDLE;
handles[numHandles-1] = PAK_INVALID_HANDLE;
}
}
@ -83,7 +83,7 @@ PakHandle_t CustomPakData_t::LoadBasePak(const char* const pakFile, const EPakTy
const PakHandle_t pakId = g_pakLoadApi->LoadAsync(pakFile, AlignedMemAlloc(), 4, 0);
// the file is most likely missing
assert(pakId != INVALID_PAK_HANDLE);
assert(pakId != PAK_INVALID_HANDLE);
handles[type] = pakId;
return pakId;
@ -97,10 +97,10 @@ void CustomPakData_t::UnloadBasePak(const EPakType type)
const PakHandle_t pakId = handles[type];
// only unload if it was actually successfully loaded
if (pakId != INVALID_PAK_HANDLE)
if (pakId != PAK_INVALID_HANDLE)
{
g_pakLoadApi->UnloadAsync(pakId);
handles[type] = INVALID_PAK_HANDLE;
handles[type] = PAK_INVALID_HANDLE;
}
}
@ -313,7 +313,7 @@ void Mod_QueuedPakCacheFrame()
data->keepLoaded = false;
data->pakName[0] = '\0';
data->pakId = INVALID_PAK_HANDLE;
data->pakId = PAK_INVALID_HANDLE;
}
--numLeftToProcess;
--data;
@ -352,7 +352,7 @@ void Mod_QueuedPakCacheFrame()
if (*commonData->pakName)
break;
commonData->pakId = INVALID_PAK_HANDLE;
commonData->pakId = PAK_INVALID_HANDLE;
LOOP_AGAIN_OR_FINISH:
++it;
@ -421,7 +421,7 @@ void Mod_QueuedPakCacheFrame()
CHECK_FOR_FAILURE:
if (commonData->pakId != INVALID_PAK_HANDLE)
if (commonData->pakId != PAK_INVALID_HANDLE)
{
const PakLoadedInfo_t* const pli = Pak_GetPakInfo(commonData->pakId);
@ -502,7 +502,7 @@ void Mod_PreloadLevelPaks(const char* const pszLevelName)
snprintf(szPathBuffer, sizeof(szPathBuffer), "%s.rpak", pSubKey->GetName());
const PakHandle_t nPakId = s_customPakData.LoadAndAddPak(szPathBuffer);
if (nPakId == INVALID_PAK_HANDLE)
if (nPakId == PAK_INVALID_HANDLE)
Error(eDLL_T::ENGINE, NO_ERROR, "%s: unable to load pak '%s' results '%d'\n", __FUNCTION__, szPathBuffer, nPakId);
}
}

View File

@ -39,7 +39,7 @@ struct CommonPakData_t
void Reset()
{
pakId = INVALID_PAK_HANDLE;
pakId = PAK_INVALID_HANDLE;
keepLoaded = false;
basePakName = nullptr;
@ -83,14 +83,14 @@ struct CustomPakData_t
// the absolute max number of custom paks, note that the engine's limit
// could still be reached before this number as game scripts and other
// code still loads paks such as gladiator cards or load screens
MAX_CUSTOM_PAKS = (PAK_MAX_HANDLES - CommonPakData_t::PAK_TYPE_COUNT)
MAX_CUSTOM_PAKS = (PAK_MAX_LOADED_PAKS - CommonPakData_t::PAK_TYPE_COUNT)
};
CustomPakData_t()
{
for (size_t i = 0; i < V_ARRAYSIZE(handles); i++)
{
handles[i] = INVALID_PAK_HANDLE;
handles[i] = PAK_INVALID_HANDLE;
}
// the first # handles are reserved for base SDK paks

View File

@ -1,3 +1,8 @@
//=============================================================================//
//
// Purpose: pak file constants and types
//
//=============================================================================//
#ifndef RTECH_IPACKFILE_H
#define RTECH_IPACKFILE_H
#include "tier0/jobthread.h"
@ -20,15 +25,15 @@
#define PAK_HEADER_FLAGS_ZSTREAM_ENCODED (1<<9)
// max amount of types at runtime in which assets will be tracked
#define PAK_MAX_TYPES 64
#define PAK_MAX_TYPES_MASK (PAK_MAX_TYPES-1)
#define PAK_MAX_TRACKED_TYPES 64
#define PAK_MAX_TRACKED_TYPES_MASK (PAK_MAX_TRACKED_TYPES-1)
// max amount of global pak assets at runtime
#define PAK_MAX_ASSETS 0x40000 // TODO: rename to PAK_MAX_LOADED_ASSETS
#define PAK_MAX_ASSETS_MASK (PAK_MAX_ASSETS-1)
#define PAK_MAX_LOADED_ASSETS 0x40000
#define PAK_MAX_LOADED_ASSETS_MASK (PAK_MAX_LOADED_ASSETS-1)
// max amount of global pak assets tracked at runtime
#define PAK_MAX_TRACKED_ASSETS (PAK_MAX_ASSETS/2)
#define PAK_MAX_TRACKED_ASSETS (PAK_MAX_LOADED_ASSETS/2)
#define PAK_MAX_TRACKED_ASSETS_MASK (PAK_MAX_TRACKED_ASSETS-1)
// max amount of segments a pak file could have
@ -42,8 +47,8 @@
#define PAK_MAX_STREAMING_FILE_HANDLES_PER_SET 4
// max amount of paks that could be loaded at runtime
#define PAK_MAX_HANDLES 512 // TODO: rename to PAK_MAX_LOADED_PAKS
#define PAK_MAX_HANDLES_MASK (PAK_MAX_HANDLES-1)
#define PAK_MAX_LOADED_PAKS 512
#define PAK_MAX_LOADED_PAKS_MASK (PAK_MAX_LOADED_PAKS-1)
// max amount of async streaming requests that could be made per pak file, if a
// pak file has more patches than this number, and is already trying to stream
@ -82,7 +87,7 @@
#define PLATFORM_PAK_OVERRIDE_PATH PAK_BASE_PATH"Win64_override\\"
// the handle that should be returned when a pak failed to load or process
#define INVALID_PAK_HANDLE -1 // TODO: rename to PAK_INVALID_HANDLE
#define PAK_INVALID_HANDLE -1
#define PAK_MAX_DISPATCH_LOAD_JOBS 4
#define PAK_DEFAULT_JOB_GROUP_ID 0x3000
@ -235,7 +240,7 @@ struct PakAsset_t
FORCEINLINE uint8_t HashTableIndexForAssetType() const
{
return (((0x1020601 * magic) >> 24) & PAK_MAX_TYPES_MASK);
return (((0x1020601 * magic) >> 24) & PAK_MAX_TRACKED_TYPES_MASK);
}
};
@ -264,7 +269,7 @@ struct PakTracker_s
int unk_4;
int unk_8;
char gap_C[644100];
int loadedAssetIndices[PAK_MAX_HANDLES];
int loadedAssetIndices[PAK_MAX_LOADED_PAKS];
char gap_9DC04[522240];
};
@ -318,8 +323,8 @@ public:
struct PakGlobals_s
{
// [ PIXIE ]: Max possible registered assets on Season 3, 0-2 I did not check yet.
PakAssetBinding_t assetBindings[PAK_MAX_TYPES];
PakAssetShort_t loadedAssets[PAK_MAX_ASSETS];
PakAssetBinding_t assetBindings[PAK_MAX_TRACKED_TYPES];
PakAssetShort_t loadedAssets[PAK_MAX_LOADED_ASSETS];
// assets that are tracked across all asset types
PakAssetTracker_s trackedAssets[PAK_MAX_TRACKED_ASSETS];
@ -328,11 +333,11 @@ struct PakGlobals_s
RHashMap loadedPakMap; // links to 'loadedPaks'
// all currently loaded pak handles
PakLoadedInfo_t loadedPaks[PAK_MAX_HANDLES];
PakLoadedInfo_t loadedPaks[PAK_MAX_LOADED_PAKS];
RMultiHashMap unkMap2; // links to 'unkIntArray' and 'unkIntArray2'
int unkIntArray[PAK_MAX_TRACKED_ASSETS];
int unkIntArray2[PAK_MAX_ASSETS];
int unkIntArray2[PAK_MAX_LOADED_ASSETS];
// whether asset streaming (mandatory & optional) is enabled
b64 useStreamingSystem;
@ -365,10 +370,10 @@ struct PakGlobals_s
int16_t loadedPakCount;
int16_t requestedPakCount;
PakHandle_t loadedPakHandles[PAK_MAX_HANDLES];
PakHandle_t loadedPakHandles[PAK_MAX_LOADED_PAKS];
JobTypeID_t assetBindJobTypes[PAK_MAX_TYPES];
JobTypeID_t jobTypeSlots_Unused[PAK_MAX_TYPES];
JobTypeID_t assetBindJobTypes[PAK_MAX_TRACKED_TYPES];
JobTypeID_t jobTypeSlots_Unused[PAK_MAX_TRACKED_TYPES];
JobTypeID_t dispatchLoadJobTypes[PAK_MAX_DISPATCH_LOAD_JOBS];
uint8_t dispathLoadJobPriorities[PAK_MAX_DISPATCH_LOAD_JOBS]; // promoted to JobPriority_e
@ -513,7 +518,7 @@ struct PakSegmentHeader_t
struct PakSegmentDescriptor_t
{
size_t assetTypeCount[PAK_MAX_TYPES];
size_t assetTypeCount[PAK_MAX_TRACKED_TYPES];
int64_t segmentSizes[PAK_MAX_SEGMENTS];
size_t segmentSizeForType[PAK_SEGMENT_BUFFER_TYPES];
@ -693,7 +698,7 @@ struct PakMemoryData_t
int numShiftedPointers;
// array of sizes/offsets in the SF_HEAD segment buffer
__int64 unkAssetTypeBindingSizes[PAK_MAX_TYPES];
__int64 unkAssetTypeBindingSizes[PAK_MAX_TRACKED_TYPES];
const char* fileName;
PakFileHeader_t pakHeader;

View File

@ -15,7 +15,7 @@ void Pak_AlignSegmentHeaders(PakFile_t* const pak, PakSegmentDescriptor_t* const
uint64_t headersSize = 0;
uint8_t headerSegmentAlignment = static_cast<int8_t>(desc->segmentAlignmentForType[SF_HEAD]);
for (uint8_t i = 0; i < PAK_MAX_TYPES; ++i)
for (uint8_t i = 0; i < PAK_MAX_TRACKED_TYPES; ++i)
{
const PakAssetBinding_t& binding = g_pakGlobals->assetBindings[i];

View File

@ -32,10 +32,10 @@ static bool Pak_ResolveAssetDependency(const PakFile_t* const pak, PakGuid_t cur
currentIndex++;
if (currentIndex >= PAK_MAX_ASSETS)
if (currentIndex >= PAK_MAX_LOADED_ASSETS)
return false;
currentIndex &= PAK_MAX_ASSETS_MASK;
currentIndex &= PAK_MAX_LOADED_ASSETS_MASK;
currentGuid = g_pakGlobals->loadedAssets[currentIndex].guid;
if (currentGuid == targetGuid)
@ -51,7 +51,7 @@ static bool Pak_ResolveAssetDependency(const PakFile_t* const pak, PakGuid_t cur
void Pak_ResolveAssetRelations(PakFile_t* const pak, const PakAsset_t* const asset)
{
PakPage_t* const pGuidDescriptors = &pak->memoryData.guidDescriptors[asset->dependenciesIndex];
uint32_t* const v5 = (uint32_t*)g_pakGlobals->loadedPaks[pak->memoryData.pakId & PAK_MAX_HANDLES_MASK].qword50;
uint32_t* const v5 = (uint32_t*)g_pakGlobals->loadedPaks[pak->memoryData.pakId & PAK_MAX_LOADED_PAKS_MASK].qword50;
if (pak_debugrelations.GetBool())
Msg(eDLL_T::RTECH, "Resolving relations for asset: '0x%-16llX', dependencies: %-4u; in pak '%s'\n",
@ -65,7 +65,7 @@ void Pak_ResolveAssetRelations(PakFile_t* const pak, const PakAsset_t* const ass
const PakGuid_t targetGuid = reinterpret_cast<uint64_t>(*pCurrentGuid);
// get asset index
int currentIndex = targetGuid & PAK_MAX_ASSETS_MASK;
int currentIndex = targetGuid & PAK_MAX_LOADED_ASSETS_MASK;
const PakGuid_t currentGuid = g_pakGlobals->loadedAssets[currentIndex].guid;
const int64_t v9 = 2i64 * InterlockedExchangeAdd(v5, 1u);
@ -192,14 +192,14 @@ void Pak_RunAssetLoadingJobs(PakFile_t* const pak)
//-----------------------------------------------------------------------------
PakHandle_t Pak_LoadAsync(const char* const fileName, CAlignedMemAlloc* const allocator, const int nIdx, const bool bUnk)
{
PakHandle_t pakId = INVALID_PAK_HANDLE;
PakHandle_t pakId = PAK_INVALID_HANDLE;
if (Pak_FileExists(fileName))
{
Msg(eDLL_T::RTECH, "Loading pak file: '%s'\n", fileName);
pakId = v_Pak_LoadAsync(fileName, allocator, nIdx, bUnk);
if (pakId == INVALID_PAK_HANDLE)
if (pakId == PAK_INVALID_HANDLE)
Error(eDLL_T::RTECH, NO_ERROR, "%s: Failed read '%s' results '%d'\n", __FUNCTION__, fileName, pakId);
}
else
@ -450,7 +450,7 @@ bool Pak_ProcessPakFile(PakFile_t* const pak)
if (pak->patchCount >= pak->memoryData.pakHeader.patchIndex)
{
FS_CloseAsyncFile(fileStream->fileHandle);
fileStream->fileHandle = INVALID_PAK_HANDLE;
fileStream->fileHandle = PAK_INVALID_HANDLE;
fileStream->qword0 = 0;
fileStream->finishedLoadingPatches = true;
@ -677,7 +677,7 @@ bool Pak_ProcessAssets(PakLoadedInfo_t* const a1)
uint32_t i = 0;
PakAsset_t* pAsset = nullptr;
for (int j = pak->memoryData.pakId & PAK_MAX_HANDLES_MASK; i < pak->GetHeader().assetCount; a1->assetGuids[i - 1] = pAsset->guid)
for (int j = pak->memoryData.pakId & PAK_MAX_LOADED_PAKS_MASK; i < pak->GetHeader().assetCount; a1->assetGuids[i - 1] = pAsset->guid)
{
pAsset = &pak->memoryData.assetEntries[i];
if (pAsset->numRemainingDependencies)

View File

@ -52,7 +52,7 @@ static void Pak_ListTypes_f()
uint32_t nRegistered = 0;
for (int8_t i = 0; i < PAK_MAX_TYPES; ++i)
for (int8_t i = 0; i < PAK_MAX_TRACKED_TYPES; ++i)
{
PakAssetBinding_t* type = &g_pakGlobals->assetBindings[i];
@ -135,7 +135,7 @@ static void Pak_Swap_f(const CCommand& args)
const char* pakName = nullptr;
PakHandle_t pakHandle = INVALID_PAK_HANDLE;
PakHandle_t pakHandle = PAK_INVALID_HANDLE;
const PakLoadedInfo_t* pakInfo = nullptr;
if (args.HasOnlyDigits(1))

View File

@ -255,7 +255,7 @@ PakGuid_t Pak_StringToGuid(const char* const string)
//-----------------------------------------------------------------------------
PakLoadedInfo_t* Pak_GetPakInfo(const PakHandle_t pakId)
{
return &g_pakGlobals->loadedPaks[pakId & PAK_MAX_HANDLES_MASK];
return &g_pakGlobals->loadedPaks[pakId & PAK_MAX_LOADED_PAKS_MASK];
}
//-----------------------------------------------------------------------------