Files
UnrealEngineUWP/Engine/Source/Developer/DerivedDataCache/Public/DerivedDataBuildFunctionRegistry.h
devin doucette 35be596466 DDC: Reverted unnecessary changes made by IWYU
There are several cases where includes were added that are not directly used (only by reference or pointer), and where forward declarations were reordered in a way that worsens readability.

#rb none
#rnx

[CL 21499953 by devin doucette in ue5-main branch]
2022-08-22 21:23:18 -04:00

32 lines
1016 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Containers/StringFwd.h"
struct FGuid;
template <typename FuncType> class TFunctionRef;
namespace UE::DerivedData { class IBuildFunction; }
namespace UE::DerivedData
{
/**
* A build function registry maintains a collection of build functions.
*/
class IBuildFunctionRegistry
{
public:
virtual ~IBuildFunctionRegistry() = default;
/** Find a function by name. Returns null if not found. Safe to call from a scheduled job or the main thread. */
virtual const IBuildFunction* FindFunction(FUtf8StringView Function) const = 0;
/** Find a function version by name. Returns zero if not found. Safe to call from any thread. */
virtual FGuid FindFunctionVersion(FUtf8StringView Function) const = 0;
/** Iterate the complete list of build function versions. Safe to call from any thread. */
virtual void IterateFunctionVersions(TFunctionRef<void(FUtf8StringView Name, const FGuid& Version)> Visitor) const = 0;
};
} // UE::DerivedData