You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
- Added IRequestOwner::LaunchTask to launch a task as a request in the request owner. - Renamed ExecuteInCacheThreadPool to LaunchTaskInCacheThreadPool. - Made GCacheThreadPool private to one source file. - Changed task scheduling throughout DDC to use these functions where appropriate. #preflight 623b846d8900c14eecd4daa4 #rb Zousar.Shaker [CL 19485686 by Devin Doucette in ue5-main branch]
39 lines
1.2 KiB
C++
39 lines
1.2 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreTypes.h"
|
|
#include "Containers/StringFwd.h"
|
|
#include "Misc/AsciiSet.h"
|
|
|
|
class FDerivedDataCacheInterface;
|
|
|
|
template <typename FuncType> class TUniqueFunction;
|
|
|
|
namespace UE::DerivedData { class FCacheRecord; }
|
|
namespace UE::DerivedData { class ICache; }
|
|
namespace UE::DerivedData { class IRequestOwner; }
|
|
|
|
namespace UE::DerivedData::Private
|
|
{
|
|
|
|
// Implemented in DerivedDataCache.cpp
|
|
ICache* CreateCache(FDerivedDataCacheInterface** OutLegacyCache);
|
|
void LaunchTaskInCacheThreadPool(IRequestOwner& Owner, TUniqueFunction<void ()>&& TaskBody);
|
|
|
|
// Implemented in DerivedDataCacheRecord.cpp
|
|
uint64 GetCacheRecordCompressedSize(const FCacheRecord& Record);
|
|
uint64 GetCacheRecordTotalRawSize(const FCacheRecord& Record);
|
|
uint64 GetCacheRecordRawSize(const FCacheRecord& Record);
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
template <typename CharType>
|
|
inline bool IsValidCacheBucketName(TStringView<CharType> Name)
|
|
{
|
|
constexpr FAsciiSet Valid("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789");
|
|
return !Name.IsEmpty() && Name.Len() < 256 && FAsciiSet::HasOnly(Name, Valid);
|
|
}
|
|
|
|
} // UE::DerivedData::Private
|