Navigation
API > API/Runtime > API/Runtime/RHI
| Name | FPipelineFileCacheManager |
| Type | class |
| Header File | /Engine/Source/Runtime/RHI/Public/PipelineFileCache.h |
| Include Path | #include "PipelineFileCache.h" |
Syntax
class FPipelineFileCacheManager
Enums
Public
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FPipelineStateLoggedEvent | TMulticastDelegate_OneParam< void, const FPipelineCacheFileFormatPSO & > | Event signature for being notified that a new PSO has been logged | PipelineFileCache.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FileCacheEnabled | bool | PipelineFileCache.h | |
| FileCacheLock | FRWLock | PipelineFileCache.h | |
| FileCacheMap | TMap< FString, TUniquePtr< class FPipelineCacheFile > > | Containers for the multiple bundled PSOFCs Name to PipelineCacheFile | PipelineFileCache.h |
| GameGuidToCacheKey | TMap< FGuid, FString > | PipelineCacheFile GUID to Name. | PipelineFileCache.h |
| GameUsageMask | uint64 | PipelineFileCache.h | |
| GameUsageMaskSet | bool | PipelineFileCache.h | |
| LogNewPSOsToConsoleAndCSV | bool | PipelineFileCache.h | |
| MaskComparisonFn | FPSOMaskComparisonFn | PipelineFileCache.h | |
| NewPSOHashes | TSet< uint32 > | PipelineFileCache.h | |
| NewPSOs | TSet< FPipelineCacheFileFormatPSO > | PipelineFileCache.h | |
| NewPSOsToReport | TMpscQueue< FPipelineCacheFileFormatPSO > | PipelineFileCache.h | |
| NewPSOUsage | TMap< uint32, FPSOUsageData > | PipelineFileCache.h | |
| NumNewPSOs | uint32 | PipelineFileCache.h | |
| PSOLoggedEvent | FPipelineStateLoggedEvent | PipelineFileCache.h | |
| RequestedOrder | PSOOrder | PipelineFileCache.h | |
| RunTimeToPSOUsage | TMap< uint32, FPSOUsageData > | PSO recording. | PipelineFileCache.h |
| Stats | TMap< uint32, FPipelineStateStats * > | PipelineFileCache.h | |
| UserCacheKey | FString | User cache's key within FileCacheMap. | PipelineFileCache.h |
Functions
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void BroadcastNewPSOsDelegate () |
If the delegate is set, broadcasts any new PSOs that were encountered since the last time the delegate was broadcast. | PipelineFileCache.h | |
static void CacheComputePSO
(
uint32 RunTimeHash, |
PipelineFileCache.h | ||
static void CacheGraphicsPSO
(
uint32 RunTimeHash, |
PipelineFileCache.h | ||
static void CacheRayTracingPSO
(
const FRayTracingPipelineStateInitializer& Initializer, |
PipelineFileCache.h | ||
static void ClearOSPipelineCache() |
PipelineFileCache.h | ||
static void CloseUserPipelineFileCache() |
PipelineFileCache.h | ||
static void FetchPSODescriptors
(
const FString& PSOCacheKey, |
PipelineFileCache.h | ||
static uint64 GetGameUsageMask() |
PipelineFileCache.h | ||
static void GetOrderedPSOHashes
(
const FString& PSOCacheKey, |
PipelineFileCache.h | ||
static FPipelineCacheFile * GetPipelineCacheFileFromKey
(
const FString& PSOCacheKey |
Helper for retrieving a file cache from the name. | PipelineFileCache.h | |
static int32 GetTotalPSOCount
(
const FString& PSOCacheKey |
PipelineFileCache.h | ||
static bool HasPipelineFileCache
(
const FString& PSOCacheKey |
True if the named PSOFC is currently open. | PipelineFileCache.h | |
static void Initialize
(
uint32 GameVersion |
PipelineFileCache.h | ||
static bool IsBSSEquivalentPSOEntryCached
(
FPipelineCacheFileFormatPSO const& NewEntry |
PipelineFileCache.h | ||
static bool IsGameUsageMaskSet() |
PipelineFileCache.h | ||
static bool IsPipelineFileCacheEnabled() |
PipelineFileCache.h | ||
static bool IsPSOEntryCached
(
FPipelineCacheFileFormatPSO const& NewEntry, |
PipelineFileCache.h | ||
static bool LoadPipelineFileCacheInto
(
FString const& Path, |
PipelineFileCache.h | ||
static void LogNewComputePSOToConsoleAndCSV
(
FPipelineCacheFileFormatPSO& PSO, |
PipelineFileCache.h | ||
static void LogNewGraphicsPSOToConsoleAndCSV
(
FPipelineCacheFileFormatPSO& PSO, |
PipelineFileCache.h | ||
static void LogNewRaytracingPSOToConsole
(
FPipelineCacheFileFormatPSO& PSO, |
PipelineFileCache.h | ||
static bool LogPSODetails() |
Report additional data about new PSOs to the log. | PipelineFileCache.h | |
static bool LogPSOtoFileCache() |
PipelineFileCache.h | ||
static bool MergePipelineFileCaches
(
FString const& PathA, |
PipelineFileCache.h | ||
static uint32 NumPSOsLogged() |
PipelineFileCache.h | ||
static FPipelineStateLoggedEvent & OnPipelineStateLogged() |
Gets the event delegate to register for pipeline state logging events. | PipelineFileCache.h | |
static bool OpenPipelineFileCache
(
const FString& Key, |
Open the pipeline file cache for the specfied name and platform. | PipelineFileCache.h | |
static bool OpenUserPipelineFileCache
(
const FString& Key, |
Open the user pipeline file cache for the specified name and platform. | PipelineFileCache.h | |
static void PreCompileComplete() |
PipelineFileCache.h | ||
static void RegisterPSOCompileFailure
(
uint32 RunTimeHash, |
This PSO has failed compile and is invalid - this cache should not return this invalid PSO from subsequent calls for PreCompile requests. | PipelineFileCache.h | |
static FPipelineStateStats * RegisterPSOStats
(
uint32 RunTimeHash |
PipelineFileCache.h | ||
static FPipelineStateStats * RegisterPSOStatsInternal
(
FRWScopeLock& Lock, |
PipelineFileCache.h | ||
static void RegisterPSOUsageDataUpdateForNextSave
(
FPSOUsageData& UsageData |
PipelineFileCache.h | ||
static bool ReportNewPSOs() |
PipelineFileCache.h | ||
static bool SavePipelineFileCache
(
SaveMode Mode |
PipelineFileCache.h | ||
static bool SavePipelineFileCacheFrom
(
uint32 GameVersion, |
PipelineFileCache.h | ||
static uint64 SetGameUsageMaskWithComparison
(
uint64 GameUsageMask, |
Define the Current Game Usage Mask and a comparison function to compare this mask against the recorded mask in each PSO | PipelineFileCache.h | |
static void SetNewPSOConsoleAndCSVLogging
(
bool bEnabled |
Enable or disable the logging of new PSOs (PSOs that were needed but not found in the file cache) to console and CSV. | PipelineFileCache.h | |
static bool ShouldEnableFileCache() |
PipelineFileCache.h | ||
static void Shutdown() |
PipelineFileCache.h |