UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MemoryLayoutUtil.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
7
10{
16
22
24 {
27 };
28
30 static SIZE_T GetTotalSizeIncludingAlignment(const FLayout& Layout) { return Align(Layout.CurrentOffset, Layout.MaxAlignment); }
31
34 {
36 const SIZE_T TotalItemSize = ItemSize * ItemCount;
37
40
42 Layout.MaxAlignment = FMath::Max<SIZE_T>(ItemAlignment, Layout.MaxAlignment);
43 }
44
46 template<typename T>
48};
constexpr T Align(T Val, uint64 Alignment)
Definition AlignmentTemplates.h:18
FPlatformTypes::SIZE_T SIZE_T
An unsigned integer the same size as a pointer, the same as UPTRINT.
Definition Platform.h:1150
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition MemoryLayoutUtil.h:12
SIZE_T MaxAlignment
Definition MemoryLayoutUtil.h:14
SIZE_T CurrentOffset
Definition MemoryLayoutUtil.h:13
Definition MemoryLayoutUtil.h:18
SIZE_T Size
Definition MemoryLayoutUtil.h:20
SIZE_T Offset
Definition MemoryLayoutUtil.h:19
Definition MemoryLayoutUtil.h:24
SIZE_T Alignment
Definition MemoryLayoutUtil.h:26
SIZE_T Size
Definition MemoryLayoutUtil.h:25
Definition MemoryLayoutUtil.h:10
static SIZE_T GetTotalSizeIncludingAlignment(const FLayout &Layout)
Definition MemoryLayoutUtil.h:30
static void AddToLayout(FLayout &Layout, FOffsetAndSize &OutOffsetAndSize, SIZE_T Count)
Definition MemoryLayoutUtil.h:47
static void AddToLayout(FLayout &Layout, FOffsetAndSize &OutOffsetAndSize, SIZE_T ItemSize, SIZE_T ItemAlignment, SIZE_T ItemCount)
Definition MemoryLayoutUtil.h:33