Skip to content

Commit f57fb60

Browse files
committed
Support UE5.4
1 parent c8e7192 commit f57fb60

23 files changed

+297
-267
lines changed

PakAnalyzer/Private/AssetParseThreadWorker.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
#include "HAL/PlatformProcess.h"
77
#include "HAL/RunnableThread.h"
88
#include "IPlatformFilePak.h"
9-
#include "Launch/Resources/Version.h"
109
#include "Misc/Compression.h"
1110
#include "Misc/Paths.h"
1211
#include "Misc/ScopeLock.h"
@@ -185,8 +184,7 @@ uint32 FAssetParseThreadWorker::Run()
185184

186185
// Serialize summary
187186
Reader << File->AssetSummary->PackageSummary;
188-
189-
#if ENGINE_MAJOR_VERSION >= 5
187+
190188
Reader.Seek(0);
191189
int32 Tag = 0;
192190
Reader << Tag;
@@ -210,8 +208,7 @@ uint32 FAssetParseThreadWorker::Run()
210208
// UE4 pak
211209
Reader.SetUEVer(FPackageFileVersion(VER_LATEST_ENGINE_UE4, EUnrealEngineObjectUE5Version::INITIAL_VERSION));
212210
}
213-
#endif
214-
211+
215212
// Serialize Names
216213
const int32 NameCount = File->AssetSummary->PackageSummary.NameCount;
217214
if (NameCount > 0)

PakAnalyzer/Private/BaseAnalyzer.cpp

Lines changed: 1 addition & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
#include "BaseAnalyzer.h"
22

3-
#if ENGINE_MAJOR_VERSION >= 5 && ENGINE_MINOR_VERSION >= 1
43
#include "AssetRegistry/AssetRegistryState.h"
5-
#else
6-
#include "AssetRegistryState.h"
7-
#endif
84
#include "Json.h"
9-
#include "Launch/Resources/Version.h"
105
#include "Misc/Base64.h"
116
#include "Misc/FileHelper.h"
127
#include "Misc/Paths.h"
@@ -24,7 +19,7 @@ FBaseAnalyzer::~FBaseAnalyzer()
2419

2520
}
2621

27-
bool FBaseAnalyzer::LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys)
22+
bool FBaseAnalyzer::LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys, int32 ContainerStartIndex)
2823
{
2924
Reset();
3025
return false;
@@ -110,11 +105,7 @@ void FBaseAnalyzer::RefreshPackageDependency(FPakTreeEntryPtr InTreeRoot, FPakTr
110105
else
111106
{
112107
TArray<FAssetIdentifier> Dependencies;
113-
#if ENGINE_MAJOR_VERSION >= 5 || ENGINE_MINOR_VERSION >= 26
114108
if (AssetRegistryState->GetDependencies(Child->PackagePath, Dependencies, UE::AssetRegistry::EDependencyCategory::All))
115-
#else
116-
if (AssetRegistryState->GetDependencies(Child->PackagePath, Dependencies, EAssetRegistryDependencyType::All))
117-
#endif
118109
{
119110
if (!Child->AssetSummary.IsValid())
120111
{
@@ -135,11 +126,7 @@ void FBaseAnalyzer::RefreshPackageDependency(FPakTreeEntryPtr InTreeRoot, FPakTr
135126
}
136127

137128
TArray<FAssetIdentifier> Dependents;
138-
#if ENGINE_MAJOR_VERSION >= 5 || ENGINE_MINOR_VERSION >= 26
139129
if (AssetRegistryState->GetReferencers(Child->PackagePath, Dependents, UE::AssetRegistry::EDependencyCategory::All))
140-
#else
141-
if (AssetRegistryState->GetReferencers(Child->PackagePath, Dependents, EAssetRegistryDependencyType::All))
142-
#endif
143130
{
144131
if (!Child->AssetSummary.IsValid())
145132
{
@@ -443,20 +430,11 @@ FName FBaseAnalyzer::GetAssetClass(const FString& InFilename, FName InPackagePat
443430
FName AssetClass = *FPaths::GetExtension(InFilename);
444431
if (AssetRegistryState.IsValid())
445432
{
446-
#if ENGINE_MAJOR_VERSION >= 5 || ENGINE_MINOR_VERSION >= 27
447433
TArrayView<FAssetData const* const> AssetDataArray = AssetRegistryState->GetAssetsByPackageName(InPackagePath);
448-
#else
449-
const TArray<const FAssetData*>& AssetDataArray = AssetRegistryState->GetAssetsByPackageName(InPackagePath);
450-
#endif
451434
if (AssetDataArray.Num() > 0)
452435
{
453436
bFoundClassInRegistry = true;
454-
455-
#if ENGINE_MAJOR_VERSION >= 5 && ENGINE_MINOR_VERSION >= 1
456437
AssetClass = AssetDataArray[0]->AssetClassPath.GetAssetName();
457-
#else
458-
AssetClass = AssetDataArray[0]->AssetClass;
459-
#endif
460438
}
461439
}
462440

@@ -514,7 +492,6 @@ void FBaseAnalyzer::Reset()
514492

515493
FString FBaseAnalyzer::ResolveCompressionMethod(const FPakFileSumary& Summary, const FPakEntry* InPakEntry) const
516494
{
517-
#if ENGINE_MAJOR_VERSION >= 5 || ENGINE_MINOR_VERSION >= 22
518495
if (InPakEntry->CompressionMethodIndex >= 0 && InPakEntry->CompressionMethodIndex < (uint32)Summary.PakInfo.CompressionMethods.Num())
519496
{
520497
return Summary.PakInfo.CompressionMethods[InPakEntry->CompressionMethodIndex].ToString();
@@ -523,18 +500,6 @@ FString FBaseAnalyzer::ResolveCompressionMethod(const FPakFileSumary& Summary, c
523500
{
524501
return TEXT("Unknown");
525502
}
526-
#else
527-
static const TArray<FString> CompressionMethods({ TEXT("None"), TEXT("Zlib"), TEXT("Gzip"), TEXT("Unknown"), TEXT("Custom") });
528-
529-
if (InPakEntry->CompressionMethod >= 0 && InPakEntry->CompressionMethod < CompressionMethods.Num())
530-
{
531-
return CompressionMethods[InPakEntry->CompressionMethod];
532-
}
533-
else
534-
{
535-
return TEXT("Unknown");
536-
}
537-
#endif
538503
}
539504

540505
FPakTreeEntryPtr FBaseAnalyzer::InsertFileToTree(FPakTreeEntryPtr InRoot, const FPakFileSumary& Summary, const FString& InFullPath, const FPakEntry& InPakEntry)

PakAnalyzer/Private/BaseAnalyzer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ class FBaseAnalyzer : public IPakAnalyzer
1919
FBaseAnalyzer();
2020
virtual ~FBaseAnalyzer();
2121

22-
virtual bool LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys) override;
22+
virtual bool LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys, int32 ContainerStartIndex = 0) override;
2323
virtual void GetFiles(const FString& InFilterText, const TMap<FName, bool>& InClassFilterMap, const TMap<int32, bool>& InPakIndexFilter, TArray<FPakFileEntryPtr>& OutFiles) const override;
2424
virtual const TArray<FPakFileSumaryPtr>& GetPakFileSumary() const override;
2525
virtual const TArray<FPakTreeEntryPtr>& GetPakTreeRootNode() const override;

PakAnalyzer/Private/FolderAnalyzer.cpp

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,14 @@
22

33
#include "FolderAnalyzer.h"
44

5-
#if ENGINE_MAJOR_VERSION >= 5 && ENGINE_MINOR_VERSION >= 1
65
#include "AssetRegistry/ARFilter.h"
76
#include "AssetRegistry/AssetData.h"
87
#include "AssetRegistry/AssetRegistryState.h"
9-
#else
10-
#include "ARFilter.h"
11-
#include "AssetData.h"
12-
#include "AssetRegistryState.h"
13-
#endif
148
#include "HAL/FileManager.h"
159
#include "HAL/PlatformFile.h"
1610
#include "HAL/PlatformMisc.h"
1711
#include "HAL/UnrealMemory.h"
1812
#include "Json.h"
19-
#include "Launch/Resources/Version.h"
2013
#include "Misc/Base64.h"
2114
#include "Misc/Paths.h"
2215
#include "Misc/ScopeLock.h"
@@ -38,7 +31,7 @@ FFolderAnalyzer::~FFolderAnalyzer()
3831
Reset();
3932
}
4033

41-
bool FFolderAnalyzer::LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys)
34+
bool FFolderAnalyzer::LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys, int32 ContainerStartIndex)
4235
{
4336
const FString InPakPath = InPakPaths.Num() > 0 ? InPakPaths[0] : TEXT("");
4437
if (InPakPath.IsEmpty())

PakAnalyzer/Private/FolderAnalyzer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class FFolderAnalyzer : public FBaseAnalyzer, public TSharedFromThis<FFolderAnal
2121
FFolderAnalyzer();
2222
virtual ~FFolderAnalyzer();
2323

24-
virtual bool LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys) override;
24+
virtual bool LoadPakFiles(const TArray<FString>& InPakPaths, const TArray<FString>& InDefaultAESKeys, int32 ContainerStartIndex = 0) override;
2525
virtual void ExtractFiles(const FString& InOutputPath, TArray<FPakFileEntryPtr>& InFiles) override;
2626
virtual void CancelExtract() override;
2727
virtual void SetExtractThreadCount(int32 InThreadCount) override;

0 commit comments

Comments
 (0)