6#include "Containers/Set.h"
14#include "Misc/Optional.h"
280 bool bIsSidecar =
false;
285 bool bContributeToHash =
true;
291 bool bPackageSpecificFilename =
false;
337 bool bDiffModeSupported =
false;
340 bool bReadOnly =
false;
347 bool bOverridesPackageModificationStatus =
false;
350 bool bOplogAttachments =
false;
353 bool bIgnorePathLengthLimits =
false;
380 bool bReferencesGame =
false;
381 bool bReferencesEngine =
false;
394 bool bFullBuild =
true;
397 bool bLegacyIterativeSharedBuild =
false;
398 bool bWorkerOnSharedSandbox =
false;
466 bool bIncrementallyUnmodified =
false;
467 bool bPreviouslyCooked =
false;
468 bool bInOutShouldIncrementallySkip =
false;
477 UE_DEPRECATED(5.4,
"No longer called; override UpdatePackageModifiedStatus instead")
478 virtual void UpdatePackageModificationStatus(
FName PackageName,
bool bIncrementallyUnmodified,
479 bool& bInOutShouldIncrementallySkip)
514 UE_DEPRECATED(5.7,
"Use ICookedPackageWriterCookerInterface.BeginCacheForCookedPlatformData instead.")
565 return "AppendToExports";
#define checkNoEntry()
Definition AssertionMacros.h:316
#define unimplemented()
Definition AssertionMacros.h:321
@ BeginCacheForCookedPlatformData
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
const TCHAR * LexToString(EAnalyticsRecordEventMode Mode)
Definition IAnalyticsProvider.cpp:5
const bool
Definition NetworkReplayStreaming.h:178
EPackageWriterResult
Definition PackageWriter.h:33
Definition AssetRegistryState.h:158
Definition CompactBinary.h:1025
Definition CompactBinary.h:1392
Definition CompositeBuffer.h:27
Definition IoChunkId.h:64
static CORE_API const FIoChunkId InvalidChunkId
Definition IoChunkId.h:66
Definition LargeMemoryWriter.h:17
!it would be cool if these were implemented as subclasses of
Definition SecureHash.h:58
Definition NameTypes.h:617
Definition UnrealType.h:3087
Definition RefCounting.h:283
Definition PackageWriter.h:318
virtual void UpdateSaveArguments(FSavePackageArgs &SaveArgs)
Definition PackageWriter.h:527
virtual void SetCooker(UE::PackageWriter::Private::ICookerInterface *CookerInterface)=0
virtual ICookedPackageWriter * AsCookedPackageWriter() override
Definition PackageWriter.h:372
virtual ~ICookedPackageWriter()=default
virtual void UpdatePackageModifiedStatus(FUpdatePackageModifiedStatusContext &Context)
Definition PackageWriter.h:474
virtual FCookCapabilities GetCookCapabilities() const
Definition PackageWriter.h:361
virtual FDateTime GetPreviousCookTime() const
Definition PackageWriter.h:367
virtual void CompleteExportsArchiveForDiff(FPackageInfo &Info, FLargeMemoryWriter &ExportsArchive)
Definition PackageWriter.h:506
virtual TFuture< FCbObject > WriteMPCookMessageForPackage(FName PackageName)=0
EPackageHeaderFormat
Definition PackageWriter.h:329
virtual TMap< FName, TRefCountPtr< FPackageHashes > > & GetPackageHashes()=0
virtual IPackageStoreWriter * AsPackageStoreWriter()
Definition PackageWriter.h:547
virtual bool IsAnotherSaveNeeded(FSavePackageResultStruct &PreviousResult, FSavePackageArgs &SaveArgs)
Definition PackageWriter.h:531
virtual bool GetPreviousCookedBytes(const FPackageInfo &Info, FPreviousCookedBytesData &OutData)
Definition PackageWriter.h:499
virtual bool TryReadMPCookMessageForPackage(FName PackageName, FCbObjectView Message)=0
Definition PackageWriter.h:41
virtual void WriteAdditionalFile(const FAdditionalFileInfo &Info, const FIoBuffer &FileData)=0
virtual int64 GetExportsFooterSize()
Definition PackageWriter.h:194
virtual ~IPackageWriter()=default
virtual bool IsPreSaveCompleted() const
Definition PackageWriter.h:223
EWriteOptions
Definition PackageWriter.h:93
virtual void WriteBulkData(const FBulkDataInfo &Info, const FIoBuffer &BulkData, const TArray< FFileRegion > &FileRegions)=0
virtual void BeginPackage(const FBeginPackageInfo &Info)=0
ECommitStatus
Definition PackageWriter.h:102
virtual void WritePackageData(const FPackageInfo &Info, FLargeMemoryWriter &ExportsArchive, const TArray< FFileRegion > &FileRegions)=0
virtual void WriteLinkerAdditionalData(const FLinkerAdditionalDataInfo &Info, const FIoBuffer &Data, const TArray< FFileRegion > &FileRegions)=0
virtual void WritePackageTrailer(const FPackageTrailerInfo &Info, const FIoBuffer &Data)=0
virtual FCapabilities GetCapabilities() const
Definition PackageWriter.h:69
virtual TUniquePtr< FLargeMemoryWriter > CreateLinkerArchive(FName PackageName, UObject *Asset, uint16 MultiOutputIndex)=0
virtual ICookedPackageWriter * AsCookedPackageWriter()
Definition PackageWriter.h:229
virtual void RegisterDeterminismHelper(UObject *SourceObject, const TRefCountPtr< UE::Cook::IDeterminismHelper > &DeterminismHelper)
Definition PackageWriter.h:217
virtual void CommitPackage(FCommitPackageInfo &&Info)=0
virtual TUniquePtr< FLargeMemoryWriter > CreateLinkerExportsArchive(FName PackageName, UObject *Asset, uint16 MultiOutputIndex)=0
Definition ArrayView.h:139
Definition UnrealString.h.inl:34
Definition RefCounting.h:454
Definition FunctionFwd.h:19
Definition UniquePtr.h:107
Definition PackageWriter.h:301
virtual bool IsDeterminismDebug() const =0
~ICookerInterface()=default
virtual void WriteFileOnCookDirector(const FWriteFileData &FileData, FMD5 &AccumulatedHash, const TRefCountPtr< FPackageHashes > &PackageHashes, IPackageWriter::EWriteOptions WriteOptions)=0
virtual void RegisterDeterminismHelper(ICookedPackageWriter *PackageWriter, UObject *SourceObject, const TRefCountPtr< UE::Cook::IDeterminismHelper > &DeterminismHelper)=0
virtual EPackageWriterResult CookerBeginCacheForCookedPlatformData(FBeginCacheForCookedPlatformDataInfo &Info)=0
Definition CookOnTheFly.h:19
Definition PackageWriter.h:255
Definition AdvancedWidgetsModule.cpp:13
@ false
Definition radaudio_common.h:23
static FDateTime MaxValue()
Definition DateTime.h:656
Definition SecureHash.h:133
static FORCENOINLINE CORE_API void Free(void *Original)
Definition UnrealMemory.cpp:685
Definition PackageWriter.h:239
FMD5Hash PackageHash
Definition PackageWriter.h:244
TFuture< int > CompletionFuture
Definition PackageWriter.h:251
TMap< FIoChunkId, FIoHash > ChunkHashes
Definition PackageWriter.h:241
Definition PackageStore.h:121
Definition SavePackage.h:63
Definition PackageWriter.h:335
Definition PackageWriter.h:385
ECookMode
Definition PackageWriter.h:387
@ CookByTheBookMode
Definition PackageWriter.h:388
TOptional< FReferencedPluginsInfo > ReferencedPlugins
Definition PackageWriter.h:392
Definition PackageWriter.h:484
void operator()(void *Ptr) const
Definition PackageWriter.h:485
Definition PackageWriter.h:492
int64 Size
Definition PackageWriter.h:494
int64 HeaderSize
Definition PackageWriter.h:495
TUniquePtr< uint8, FDeleteByFree > Data
Definition PackageWriter.h:493
int64 StartOffset
Definition PackageWriter.h:496
Definition PackageWriter.h:378
TSet< FString > ReferencedPlugins
Definition PackageWriter.h:379
Definition PackageWriter.h:464
FName PackageName
Definition PackageWriter.h:465
Definition PackageWriter.h:173
FString Filename
Definition PackageWriter.h:176
FName PackageName
Definition PackageWriter.h:175
Definition PackageWriter.h:76
FString LooseFilePath
Definition PackageWriter.h:78
FName PackageName
Definition PackageWriter.h:77
Definition PackageWriter.h:150
FName PackageName
Definition PackageWriter.h:161
EType
Definition PackageWriter.h:152
@ AppendToExports
Definition PackageWriter.h:153
@ Mmap
Definition PackageWriter.h:155
@ Optional
Definition PackageWriter.h:156
@ BulkSegment
Definition PackageWriter.h:154
@ NumTypes
Definition PackageWriter.h:157
FString LooseFilePath
Definition PackageWriter.h:163
Definition PackageWriter.h:46
bool bDeterminismDebug
Definition PackageWriter.h:64
bool bIgnoreHeaderDiffs
Definition PackageWriter.h:58
bool bDeclareRegionForEachAdditionalFile
Definition PackageWriter.h:52
Definition PackageWriter.h:88
FCbObject Value
Definition PackageWriter.h:90
FUtf8StringView Key
Definition PackageWriter.h:89
Definition PackageWriter.h:110
FName PackageName
Definition PackageWriter.h:111
PRAGMA_ENABLE_DEPRECATION_WARNINGS
Definition PackageWriter.h:125
EWriteOptions WriteOptions
Definition PackageWriter.h:117
FIoHash PackageHash
Definition PackageWriter.h:112
ECommitStatus Status
Definition PackageWriter.h:116
FGuid PackageGuid
Definition PackageWriter.h:114
TArray< FCommitAttachmentInfo > Attachments
Definition PackageWriter.h:115
PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition PackageWriter.h:119
Definition PackageWriter.h:185
FName PackageName
Definition PackageWriter.h:187
Definition PackageWriter.h:133
FName PackageName
Definition PackageWriter.h:135
FString LooseFilePath
Definition PackageWriter.h:136
Definition PackageWriter.h:200
FName PackageName
Definition PackageWriter.h:201
Definition Optional.h:131
Definition PackageWriter.h:276
TArray< FFileRegion > Regions
Definition PackageWriter.h:279
FCompositeBuffer Buffer
Definition PackageWriter.h:278
FString Filename
Definition PackageWriter.h:277