UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
DataScanner.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include "CoreMinimal.h"
5#include "Containers/List.h"
6#include "Misc/Guid.h"
7
8#include "Core/BlockRange.h"
11
12namespace BuildPatchServices
13{
14 class FStatsCollector;
15
17 {
23
24 // Offset into provided data.
26 // The chunk matched.
28 // The window size.
30 };
31
35
37 {
38 public:
39 virtual ~IDataScanner() {}
40 virtual bool IsComplete() = 0;
42 virtual double GetTimeRunning() = 0;
43 virtual bool SupportsFork() = 0;
44 virtual FBlockRange Fork() = 0;
45 };
46
48 {
49 public:
52 static void IncrementIncomplete();
53 static void DecrementIncomplete();
54 static void IncrementRunning();
55 static void DecrementRunning();
56 };
57
59 {
60 public:
61 static IDataScanner* Create(const TArray<uint32>& ChunkWindowSizes, const TArray<uint8>& Data, const ICloudEnumeration* CloudEnumeration, FStatsCollector* StatsCollector);
62 };
63
65 {
66 public:
67 static IDataScanner* Create(const uint32 WindowSize, const TArray<uint8>& Data, const FScannerFilesList& FilesList, const IDeltaChunkEnumeration* CloudEnumeration, FStatsCollector* StatsCollector);
68 };
69}
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition DataScanner.h:48
static int32 GetNumRunningScanners()
Definition DataScanner.cpp:381
static void IncrementIncomplete()
Definition DataScanner.cpp:386
static int32 GetNumIncompleteScanners()
Definition DataScanner.cpp:376
static void DecrementRunning()
Definition DataScanner.cpp:401
static void IncrementRunning()
Definition DataScanner.cpp:396
static void DecrementIncomplete()
Definition DataScanner.cpp:391
Definition DataScanner.h:59
Definition DataScanner.h:65
Definition StatsCollector.h:23
Definition CloudEnumeration.h:13
Definition DataScanner.h:37
virtual double GetTimeRunning()=0
virtual ~IDataScanner()
Definition DataScanner.h:39
virtual FBlockRange Fork()=0
virtual TArray< FChunkMatch > GetResultWhenComplete()=0
Definition DeltaEnumeration.h:25
TDoubleLinkedList< FScannerFileElement > FScannerFilesList
Definition DataScanner.h:33
FScannerFilesList::TDoubleLinkedListNode FScannerFilesListNode
Definition DataScanner.h:34
TTuple< FBlockRange, FFilenameId, TSet< FString >, uint64 > FScannerFileElement
Definition DataScanner.h:32
Definition Array.h:670
Definition List.h:439
Definition BuildPatchFileConstructor.h:28
Definition BlockRange.h:13
Definition DataScanner.h:17
uint64 DataOffset
Definition DataScanner.h:25
FChunkMatch(const uint64 &InDataOffset, const FGuid &InChunkGuid, const uint32 &InWindowSize)
Definition DataScanner.h:18
uint32 WindowSize
Definition DataScanner.h:29
FGuid ChunkGuid
Definition DataScanner.h:27
Definition Guid.h:109
Definition Tuple.h:652