ESaveFlags

Flags for saving objects/packages, passed into [UPackage::SavePackage()](API\Runtime\CoreUObject\UObject\UPackage\SavePackage) as a uint32

Windows
MacOS
Linux

References

Module

CoreUObject

Header

/Engine/Source/Runtime/CoreUObject/Public/UObject/ObjectMacros.h

Include

#include "UObject/ObjectMacros.h"

Syntax

enum ESaveFlags
{
    SAVE_None                            = 0x00000000,
    SAVE_NoError                         = 0x00000001,
    SAVE_FromAutosave                    = 0x00000002,
    SAVE_KeepDirty                       = 0x00000004,
    SAVE_KeepGUID                        = 0x00000008,
    SAVE_Async                           = 0x00000010,
    SAVE_Unversioned                     = 0x00000020,
    SAVE_CutdownPackage                  = 0x00000040,
    SAVE_KeepEditorOnlyCookedPackages    = 0x00000080,
    SAVE_Concurrent                      = 0x00000100,
    SAVE_DiffOnly                        = 0x00000200,
    SAVE_DiffCallstack                   = 0x00000400,
    SAVE_ComputeHash                     = 0x00000800,
}

Values

Name

Description

SAVE_None

No flags.

SAVE_NoError

Don't generate errors on save.

SAVE_FromAutosave

Used to indicate this save was initiated automatically.

SAVE_KeepDirty

Do not clear the dirty flag when saving.

SAVE_KeepGUID

Keep the same guid, used to save cooked packages.

SAVE_Async

Save to a memory writer, then actually write to disk async.

SAVE_Unversioned

Save all versions as zero. Upon load this is changed to the current version. This is only reasonable to use with full cooked builds for distribution.

SAVE_CutdownPackage

Saving cutdown packages in a temp location WITHOUT renaming the package.

SAVE_KeepEditorOnlyCookedPackages

Keep packages which are marked as editor only even though we are cooking.

SAVE_Concurrent

We are save packages in multiple threads at once and should not call non-threadsafe functions or rely on globals. GIsSavingPackage should be set and PreSave/Postsave functions should be called before/after the entire concurrent save.

SAVE_DiffOnly

Serializes the package to a special memory archive that performs a diff with an existing file on disk.

SAVE_DiffCallstack

Serializes the package to a special memory archive that compares all differences against a file on disk and dumps relevant callstacks.

SAVE_ComputeHash

Compute the MD5 hash of the cooked data.

Remarks

Flags for saving objects/packages, passed into UPackage::SavePackage() as a uint32

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss