Files
UnrealEngineUWP/Engine/Source/Programs/DerivedDataBuildWorker/Private/DerivedDataBuildLoop.h
Zousar Shaker bc073c41ed Change DerivedDataBuildWorker/Loop & TextureDerivedDataBuildExporter to use the DDC implementation of FBuildAction[Builder] and FBuildOutput[Builder]
#rb devin.doucette
#preflight 60a7e6ad7370d30001cd62cc

[CL 16421772 by Zousar Shaker in ue5-main branch]
2021-05-21 14:18:04 -04:00

45 lines
1.0 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "DerivedDataBuildAction.h"
#include "DerivedDataBuildFunction.h"
#include "DerivedDataBuildWorkerInterface.h"
#include "Serialization/CompactBinary.h"
#include "Templates/Function.h"
#include "UObject/NameTypes.h"
namespace UE::DerivedData
{
class FBuildLoop
{
public:
bool Init();
using FBuildFunctionCallback = TFunctionRef<bool(FName, FBuildContext&)>;
void PerformBuilds(const FBuildFunctionCallback& BuildFunctionCallback);
void Teardown();
private:
FString CommonInputPath;
FString CommonOutputPath;
friend class FWorkerBuildContext;
struct FBuildActionRecord
{
const FString SourceFilePath;
const FString OutputFilePath;
const FString InputPath;
const FString OutputPath;
const FBuildAction BuildAction;
FBuildActionRecord(const FString& InSourceFilePath, const FString& InCommonInputPath, const FString& InCommonOutputPath, FSharedBuffer&& InSharedBuffer);
};
TArray<FBuildActionRecord> BuildActionRecords;
};
}