Commit Graph

355 Commits

Author SHA1 Message Date
aidinabedi
42d56a148b PR #8666: Fix crash when exporting files larger than 2GB
#jira UE-136032
#rb Jamie.Dale
#preflight 6315e6a0f448dc6e5817551d

[CL 21791307 by aidinabedi in ue5-main branch]
2022-09-05 08:32:58 -04:00
devin doucette
e71e54db74 Reverted unnecessary additions by IWYU
- Array.h is not needed by CompactBinarySerialization.h because the use of TArray is in a template function.
- SharedBuffer.h is not needed by DerivedData.h because its types are only used as return types or function parameters.
- FString and FCompositeBuffer are both declared in Fwd.h headers and do not need duplicate forward declarations.

#rb none
#rnx

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 21391840 via CL 21394622 via CL 21395405
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21398955 by devin doucette in ue5-main branch]
2022-08-15 20:51:42 -04:00
UnrealBot
73409369c0 Branch snapshot for CL 21319338
[CL 21319338 in ue5-main branch]
2022-08-10 16:03:37 +00:00
Bryan sefcik
b4a6e947d8 Ran IWYU on Public headers under Engine/Source/Runtime/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted.  Nothing is removed.

#ushell-cherrypick of 21065896 by bryan.sefcik
#preflight 62d4b1a5a6141b6adfb0c892
#jira

#ROBOMERGE-OWNER: Bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21150156 via CL 21151754 via CL 21154719
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
#ROBOMERGE-CONFLICT from-shelf

[CL 21181076 by Bryan sefcik in ue5-main branch]
2022-07-20 11:31:36 -04:00
chris kulla
a78346a1ea Removing unused raytracing specific code from MemoryLayout and the associated DDPI entry
#rb Josh.Adams,Yuriy.ODonnell
#jira none
#preflight 62d1961da66919b6701d8c5b

[CL 21113474 by chris kulla in ue5-main branch]
2022-07-15 13:34:52 -04:00
Matt Peters
07e55800b0 CompactBinarySerialization: Add operator<< and LoadFromCompactBinary functions for FName, FString, and TArray.
Add them for TMap and TSet as well, but keep them private for now since the write does not sort the keys and hence has determinism problems if used in persistent storage.
#rb Devin.Doucette
#rnx
#preflight 62cc993e1a786c1bbcf90183

[CL 21048418 by Matt Peters in ue5-main branch]
2022-07-11 18:06:55 -04:00
bryan sefcik
a9cc65bca4 Updated Core code to not use CoreMinimal.h when possible.
Core public headers still will contain CoreMinimal.h if any included it before my IWYU changes.
#preflight 62c73594756222ced4e48707

[CL 20991367 by bryan sefcik in ue5-main branch]
2022-07-07 16:02:19 -04:00
bryan sefcik
9905eb52bb Pass 2 on running IWYU on Core.
Things to note regarding this pass:
* No includes are currently being removed from public headers.
* Any private file that has a #if is currently not being updated.
#preflight 62c703bbd13fac04f11da948

[CL 20985655 by bryan sefcik in ue5-main branch]
2022-07-07 12:30:11 -04:00
bryan sefcik
62489fe2b3 Ran a pass of IWYU on Core.
Things to note regarding this pass:
* No includes are currently being removed from public headers.
* Any private file that has a #if is currently not being updated.

#rb Devin Doucette and Marc Audy
#preflight 62c62086756222ced497ff95
#preflight 62c626d12f2d04691814d331
#preflight 62c630107e606620fdd64e31
#preflight 62c635c6756222ced49a13cf

[CL 20979027 by bryan sefcik in ue5-main branch]
2022-07-06 21:44:18 -04:00
steve robb
dbe6f4a18d Allow formatting strings to be binary-compatible char types, not only exact types.
#jira UE-132142
#rb devin.doucette
#preflight 62bd5018a3568e30662ad3b4

#ROBOMERGE-OWNER: steve.robb
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 20890364 via CL 20890433 via CL 20890478
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20892157 by steve robb in ue5-main branch]
2022-06-30 07:58:27 -04:00
Matt Peters
ec493e4052 Multiprocess Cook - Add CookWorkerMode and IWorkerRequests interface.
#rb Zousar.Shaker
#rn Cooking, Minor
#preflight 62b4ff53970a8db3373f6e3c
#robomerge EngineMerge

[CL 20807998 by Matt Peters in ue5-main branch]
2022-06-24 08:14:11 -04:00
devin doucette
4816001e63 CompactBinary: Added LoadFromCompactBinary as a standardized way to load from compact binary
The intent is that function take a field and an output parameter, with an optional default value:

bool LoadFromCompactBinary(FCbFieldView Field, FTypeName& OutValue, FTypeName Default = {});

Implementations must return true if the field was loaded successfully, and false if any required part of the field was missing or its value had the wrong type or range. The output value must be assigned before the function returns.

#rb Zousar.Shaker

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 20741864 via CL 20743724 via CL 20744635
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)

[CL 20751365 by devin doucette in ue5-main branch]
2022-06-20 23:39:28 -04:00
devin doucette
c3771fc33e CompactBinary: Converted to FPlatformMemory::ReadUnaligned
#rb Zousar.Shaker
#rnx

#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 20741848 via CL 20743678 via CL 20744606
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)

[CL 20751361 by devin doucette in ue5-main branch]
2022-06-20 23:39:18 -04:00
devin doucette
a9c5804e52 CompactBinary: Added a compact mode to the conversion to JSON
#rb Zousar.Shaker

#ROBOMERGE-OWNER: devin.doucette
#ROBOMERGE-AUTHOR: devin.doucette
#ROBOMERGE-SOURCE: CL 20646707 via CL 20646763 via CL 20646768
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20649200 by devin doucette in ue5-main branch]
2022-06-14 11:04:47 -04:00
paul chipchase
f087968b80 Trivial cast fixes for IPackageWriter
#rb Matt.Peters
#rnx
#preflight 62a18fe69a3e81e904feadce

- FPackageInfo and FBulkDataInfo have a member 'MultiOutputIndex' which is set to be a uint32, but wil be used as the chunk index for ::CreateIoChunkId which can only support uint16, so there is no point in 'MultiOutputIndex' being a larger data type as it would silently fail later.

[CL 20572160 by paul chipchase in ue5-main branch]
2022-06-09 02:39:07 -04:00
Devin Doucette
605998206f CompactBinary: Replaced local ReadUnaligned function with FPlatformMemory::ReadUnaligned
#preflight 6294ced34c7bcac173d19fb1
#rb Zousar.Shaker
#rnx

[CL 20431253 by Devin Doucette in ue5-main branch]
2022-05-30 11:19:23 -04:00
Per Larsson
c30e677d1b Merge BulkData 1&2
#rb Paul.Chipchase, PJ.Kack, CarlMagnus.Nordin
#jira none
#preflight 629085d14f63120d8e170977

###
This change attempts to merge the editor and the runtime version of bulk data, i.e. bulk data one and two.
The major difference between the two is the fact that the editor version supported element vice
serialization via inheritance. This has been complelety removed in the runtime version. In order
to mitigate this divergance a non-virtual base class has been extracted that forms the base
for the untyped and typed versions of bulk data.
The untyped version is only used in editor and will be deprecated. However this is a breaking change,
previously it was possible to inherit from FByteBulkData in editor builds.
Other differences between the two includes:
* IsBulkDataLoaded - returns true for bulk data 1 if an allocation has been made even if the size is zero
* StartStreaming - was removed in bulk data 2 and has been removed
* FlushAsyncLoading - bulk data 2 was busy waiting, now an event is used

All I/O related functionality has been extracted into BulkDataStreaming.cpp and is using
a  FBulkDataChunkId that is either a package path or a package ID.This could potentially
be extended to contain a cache key in development builds to support loading from DDC, i.e derived
data references.

[CL 20391050 by Per Larsson in ue5-main branch]
2022-05-27 04:31:58 -04:00
Steve Robb
7778bc5c05 GitHub #8600 : Rename Ar to StructuredArchive
#rb steve.robb
#jira UE-134432
#preflight 628e287d2c7cb2d10d65322d

[CL 20363343 by Steve Robb in ue5-main branch]
2022-05-25 09:20:14 -04:00
Matt Peters
02ba0b5b70 ZenStoreWriter: Fix assertion "Trying to add package that is already pending" if the cooker commits a package a second time while the first commit of the package is queued for asynchronous completion aand has not yet reached CommitPackageInternal.
This is necessary because as of CL 20151503, the cooker can commit the same package multiple times if the first save failed due to a timeout.

#fyi CarlMagnus.Nordin
#rnx
#rb Per.Larsson
#preflight 62853ba90f0d5076dee74ced

[CL 20265738 by Matt Peters in ue5-main branch]
2022-05-18 14:49:11 -04:00
robert millar
949ed7ba3a Insert dummy values into memory images for names like vtable pointers.
#rb ben.ingram

#ROBOMERGE-AUTHOR: robert.millar
#ROBOMERGE-SOURCE: CL 20115901 via CL 20115948 via CL 20115961 via CL 20115990
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20117747 by robert millar in ue5-main branch]
2022-05-09 23:27:24 -04:00
ilya loshchinin
33b775b08a FLargeMemoryData buildfix: missing include
#ROBOMERGE-AUTHOR: ilya.loshchinin
#ROBOMERGE-SOURCE: CL 19971151 via CL 19973220 via CL 19973386
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19974313 by ilya loshchinin in ue5-main branch]
2022-04-28 21:19:04 -04:00
ilya loshchinin
6bd4945ede Optimized StaticDuplicateObject by pooling its temporary memory block allocation.
Added FPooledLargeMemoryData that allows lockless access to temporary memory blocks.

#tests Squads games on WSL, using FramePro to validate performance gains
#rb danny.couture,jamie.dale

#ROBOMERGE-AUTHOR: ilya.loshchinin
#ROBOMERGE-SOURCE: CL 19970339 via CL 19971380 via CL 19972286
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19974304 by ilya loshchinin in ue5-main branch]
2022-04-28 21:18:27 -04:00
steve robb
76eddd083e Workaround for IncludeTool error.
#rb robert.manuszewski
#jira UE-148948
#preflight 6267d7ad5c29321b2dc74f60

#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 19918554 via CL 19919564 via CL 19922223 via CL 19922670
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 19925628 by steve robb in ue5-main branch]
2022-04-26 14:38:27 -04:00
Devin Doucette
92a888c1f6 Replaced uses of _ASV with ANSITEXTVIEW
#preflight 6266acf50634d0904cdfe91c
#rb Steve.Robb
#rnx

[CL 19903251 by Devin Doucette in ue5-main branch]
2022-04-25 11:31:36 -04:00
CarlMagnus Nordin
63b8cbc9dd AsyncLoading2: Implemented loading of optional package segments
#rnx
#preflight 62627548ac29fcf6a213fe33
#rb francis.hurteau

[CL 19900368 by CarlMagnus Nordin in ue5-main branch]
2022-04-25 07:37:07 -04:00