UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ClusterUnionReplicatedProxyComponent.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
7
8#include "ClusterUnionReplicatedProxyComponent.generated.h"
9
11class UPrimitiveComponent;
12
24UCLASS(MinimalAPI)
26{
28public:
30
31 UFUNCTION()
32 UClusterUnionComponent* GetParentClusterUnionComponent() const { return ParentClusterUnion.Get(); }
33
34 UFUNCTION()
35 ENGINE_API void SetParentClusterUnion(UClusterUnionComponent* InComponent);
36
37 UFUNCTION()
38 UPrimitiveComponent* GetChildClusteredComponent() const { return ChildClusteredComponent.Get(); }
39
40 UFUNCTION()
41 ENGINE_API void SetChildClusteredComponent(UPrimitiveComponent* InComponent);
42
43 UFUNCTION()
44 ENGINE_API void SetParticleBoneIds(const TArray<int32>& InIds);
45
46 UFUNCTION()
47 const TArray<int32>& GetParticleBoneIds() const { return ParticleBoneIds; }
48
49 UFUNCTION()
50 ENGINE_API void SetParticleChildToParent(int32 BoneId, const FTransform& ChildToParent);
51
52 UFUNCTION()
53 void MarkPendingDeletion() { bIsPendingDeletion = true; }
54
55 UFUNCTION()
56 bool IsPendingDeletion() const { return bIsPendingDeletion; }
57
58 /* reinitialize the internal transient state of the replicated proxy */
59 ENGINE_API void ResetTransientState();
60
61 const TArray<FTransform>& GetParticleChildToParents() { return ParticleChildToParents; }
62
63protected:
64
65 UFUNCTION()
66 ENGINE_API void OnRep_ParentClusterUnion();
67
68 UFUNCTION()
69 ENGINE_API void OnRep_ChildClusteredComponent();
70
71 UFUNCTION()
72 ENGINE_API void OnRep_ParticleBoneIds();
73
74 UFUNCTION()
75 ENGINE_API void OnRep_ParticleChildToParents();
76
78 UPROPERTY(ReplicatedUsing=OnRep_ParentClusterUnion)
79 TWeakObjectPtr<UClusterUnionComponent> ParentClusterUnion;
80
81 UPROPERTY(ReplicatedUsing=OnRep_ChildClusteredComponent)
82 TWeakObjectPtr<UPrimitiveComponent> ChildClusteredComponent;
83
84 UPROPERTY(ReplicatedUsing=OnRep_ParticleBoneIds)
85 TArray<int32> ParticleBoneIds;
86 TSet<int32> LastSyncedBoneIds;
87
88 UPROPERTY(ReplicatedUsing=OnRep_ParticleChildToParents)
89 TArray<FTransform> ParticleChildToParents;
90
91 UPROPERTY()
92 bool bNetUpdateParentClusterUnion;
93
94 UPROPERTY()
95 bool bNetUpdateChildClusteredComponent;
96
97 UPROPERTY()
98 bool bNetUpdateParticleBoneIds;
99
100 UPROPERTY()
101 bool bNetUpdateParticleChildToParents;
102
103 UPROPERTY()
104 bool bIsPendingDeletion = false;
105
106 FTimerHandle DeferSetChildToParentHandle;
107 ENGINE_API void DeferSetChildToParentChildUntilClusteredComponentInParentUnion();
108
109 ENGINE_API void AddComponentToCluster();
110
111 //~ Begin UActorComponent Interface
112public:
113 ENGINE_API virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override;
114 ENGINE_API virtual void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
115 //~ End UActorComponent Interface
116
117 //~ Begin UObject Interface
118public:
119 ENGINE_API virtual void PostRepNotifies() override;
120 //~ End UObject Interface
121
122private:
123 void FlushNetDormancyIfNeeded();
124};
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition CoreNet.h:300
Definition UObjectGlobals.h:1292
Definition Array.h:670
Definition ActorComponent.h:152
Definition ClusterUnionComponent.h:211
Definition ClusterUnionReplicatedProxyComponent.h:26
const TArray< FTransform > & GetParticleChildToParents()
Definition ClusterUnionReplicatedProxyComponent.h:61
Definition EngineTypes.h:3429
@ false
Definition radaudio_common.h:23
Definition TimerHandle.h:12
Definition WeakObjectPtrTemplates.h:25