UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CompositeCurveTable.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CurveTable.h"
6#include "CompositeCurveTable.generated.h"
7
11UCLASS(MinimalAPI)
14{
16
17 //~ Begin UObject Interface.
18 ENGINE_API virtual void GetPreloadDependencies(TArray<UObject*>& OutDeps) override;
19 ENGINE_API virtual void Serialize(FArchive& Ar) override;
20 ENGINE_API virtual void PostLoad() override;
21 //~ End UObject Interface
22
23#if WITH_EDITOR
24 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
25
26 virtual void PostEditUndo() override;
27#endif // WITH_EDITOR
28
29 ENGINE_API virtual void EmptyTable() override;
30
31 // Support for runtime modification of parent tables,
32 // Be aware this can be slow and can cause hitches during gameplay
33 ENGINE_API void AppendParentTables(const TArray<UCurveTable*>& NewTables);
34
35protected:
36
37 // Searches the parent tables to see if there are any loops.
38 // Returns a pointer to the first table found that depends on itself if a loop exists. Returns nullptr if no loops are found.
40
41 void UpdateCachedRowMap(bool bWarnOnInvalidChildren = true);
42
43 void OnParentTablesUpdated(EPropertyChangeType::Type ChangeType = EPropertyChangeType::Unspecified);
44
45 // Parent tables
46 // Tables with higher indices override data in tables with lower indices
47 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Tables)
49
50 // temporary copy used to detect changes so we can update delegates correctly on removal
52 TArray<TObjectPtr<UCurveTable>> OldParentTables;
53
54 // true if this asset is currently being loaded; false otherwise
55 uint8 bIsLoading : 1;
56
57 // true if we're already in the middle of updating parent tables for this asset
58 uint8 bUpdatingParentTables : 1;
59};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition Archive.h:1208
Definition Array.h:670
Definition CompositeCurveTable.h:14
Definition CurveTable.h:43
const Type Unspecified
Definition UnrealType.h:6838
uint32 Type
Definition UnrealType.h:6835
Definition UnrealType.h:6865
Definition ObjectPtr.h:488