9class UPrimitiveComponent;
227 Indices.
Add(NewIndex);
234 template<
typename PayloadType>
242 if constexpr (std::is_same_v<PayloadType, FCollisionEventData>)
244 return Buffer->CollisionData.AllCollisionsArray.IsEmpty();
246 else if constexpr (std::is_same_v<PayloadType, FBreakingEventData>)
248 return Buffer->BreakingData.AllBreakingsArray.IsEmpty();
250 else if constexpr (std::is_same_v<PayloadType, FTrailingEventData>)
252 return Buffer->TrailingData.AllTrailingsArray.IsEmpty();
254 else if constexpr (std::is_same_v<PayloadType, FRemovalEventData>)
256 return Buffer->RemovalData.AllRemovalArray.IsEmpty();
258 else if constexpr (std::is_same_v<PayloadType, FSleepingEventData>)
260 return Buffer->SleepingData.IsEmpty();
262 else if constexpr (std::is_same_v<PayloadType, FCrumblingEventData>)
264 return Buffer->CrumblingData.AllCrumblingsArray.IsEmpty();
272 template<
typename PayloadType>
280 if constexpr (std::is_same_v<PayloadType, FCollisionEventData>)
282 return &
Buffer->PhysicsProxyToCollisionIndices.PhysicsProxyToIndicesMap;
284 else if constexpr (std::is_same_v<PayloadType, FBreakingEventData>)
286 return &
Buffer->PhysicsProxyToBreakingIndices.PhysicsProxyToIndicesMap;
288 else if constexpr (std::is_same_v<PayloadType, FTrailingEventData>)
292 else if constexpr (std::is_same_v<PayloadType, FRemovalEventData>)
294 return &
Buffer->PhysicsProxyToRemovalIndices.PhysicsProxyToIndicesMap;
296 else if constexpr (std::is_same_v<PayloadType, FSleepingEventData>)
300 else if constexpr (std::is_same_v<PayloadType, FCrumblingEventData>)
302 return &
Buffer->PhysicsProxyToCrumblingIndices.PhysicsProxyToIndicesMap;
347 return CollisionIndex >= 0;
353 return CollisionIndex;
364 int32 CollisionIndex : 31;
368 static_assert(
sizeof(FCollidingDataIndex) ==
sizeof(
int32),
"FCollidingDataIndex should be same size as int32");
410 return (ProxyIndex >= Proxies.
Num());
435 int32 ProxyCollisionIndex;
#define check(expr)
Definition AssertionMacros.h:314
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#define FORCEINLINE_DEBUGGABLE
Definition CoreMiscDefines.h:74
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const bool
Definition NetworkReplayStreaming.h:178
Definition EventsData.h:318
void Reset()
Definition EventsData.h:338
int32 GetProxyIndex() const
Definition EventsData.h:357
FCollidingDataIndex()
Definition EventsData.h:320
bool IsValid() const
Definition EventsData.h:345
int32 GetIndex() const
Definition EventsData.h:351
FCollidingDataIndex(int32 InCollisionIndex, int32 InProxyIndex)
Definition EventsData.h:328
Definition EventsData.h:388
FCollisionEventDataIterator & operator++()
Definition EventsData.h:420
CHAOS_API void Next()
Definition EventsData.cpp:35
CHAOS_API const IPhysicsProxyBase * GetCurrentProxy() const
Definition EventsData.cpp:83
FCollisionEventDataIterator operator++(int)=delete
CHAOS_API void Reset()
Definition EventsData.cpp:17
bool IsFinished() const
Definition EventsData.h:408
CHAOS_API FCollidingDataIndex GetCurrentCollidingDataIndex() const
Definition EventsData.cpp:67
Definition PhysicsProxyBase.h:97
Definition ArrayView.h:139
UE_FORCEINLINE_HINT constexpr SizeType Num() const
Definition ArrayView.h:380
void Reset(SizeType NewSize=0)
Definition Array.h:2246
UE_FORCEINLINE_HINT SizeType Emplace(ArgsType &&... Args)
Definition Array.h:2561
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
UE_FORCEINLINE_HINT void Reserve(SizeType Number)
Definition Array.h:3016
Definition UnrealString.h.inl:34
Definition SkeletalMeshComponent.h:307
TArray< FBreakingData > FBreakingDataArray
Definition EventsData.h:21
TArray< FRemovalData > FRemovalDataArray
Definition EventsData.h:23
TArray< FTrailingData > FTrailingDataArray
Definition EventsData.h:22
FRealDouble FReal
Definition Real.h:22
TArray< FSleepingData > FSleepingDataArray
Definition EventsData.h:24
bool IsEventDataEmpty(const PayloadType *Buffer)
Definition EventsData.h:235
TArray< FCollidingData > FCollisionDataArray
Definition EventsData.h:20
TArray< FCrumblingData > FCrumblingDataArray
Definition EventsData.h:25
const TMap< IPhysicsProxyBase *, TArray< int32 > > * GetProxyToIndexMap(const PayloadType *Buffer)
Definition EventsData.h:273
@ false
Definition radaudio_common.h:23
Definition EventsData.h:83
FAllBreakingData()
Definition EventsData.h:84
void Reset()
Definition EventsData.h:86
FBreakingDataArray AllBreakingsArray
Definition EventsData.h:92
bool bHasGlobalEvent
Definition EventsData.h:93
Definition EventsData.h:52
void Reset()
Definition EventsData.h:55
FAllCollisionData()
Definition EventsData.h:53
FCollisionDataArray AllCollisionsArray
Definition EventsData.h:60
Definition EventsData.h:190
FCrumblingDataArray AllCrumblingsArray
Definition EventsData.h:199
bool bHasGlobalEvent
Definition EventsData.h:200
void Reset()
Definition EventsData.h:193
FAllCrumblingData()
Definition EventsData.h:191
Definition EventsData.h:148
FAllRemovalData()
Definition EventsData.h:149
FRemovalDataArray AllRemovalArray
Definition EventsData.h:156
void Reset()
Definition EventsData.h:151
Definition EventsData.h:116
FTrailingDataArray AllTrailingsArray
Definition EventsData.h:124
FAllTrailingData()
Definition EventsData.h:117
void Reset()
Definition EventsData.h:119
Definition EventsData.h:97
FAllBreakingData BreakingData
Definition EventsData.h:106
FBreakingEventData()
Definition EventsData.h:98
FIndicesByPhysicsProxy PhysicsProxyToBreakingIndices
Definition EventsData.h:107
void Reset()
Definition EventsData.h:100
Definition EventsData.h:64
FAllCollisionData CollisionData
Definition EventsData.h:73
FCollisionEventData()
Definition EventsData.h:65
FIndicesByPhysicsProxy PhysicsProxyToCollisionIndices
Definition EventsData.h:74
void Reset()
Definition EventsData.h:67
Definition ExternalCollisionData.h:248
Definition EventsData.h:204
FAllCrumblingData CrumblingData
Definition EventsData.h:230
FIndicesByPhysicsProxy PhysicsProxyToCrumblingIndices
Definition EventsData.h:231
void Reset()
Definition EventsData.h:207
FORCEINLINE_DEBUGGABLE void SetTimeCreated(FReal TimeCreatedIn)
Definition EventsData.h:218
FORCEINLINE_DEBUGGABLE void Reserve(int32 Num)
Definition EventsData.h:213
FORCEINLINE_DEBUGGABLE void AddCrumbling(const FCrumblingData &CrumblingToAdd)
Definition EventsData.h:223
FCrumblingEventData()
Definition EventsData.h:205
Definition EventsData.h:33
void Reset()
Definition EventsData.h:38
FIndicesByPhysicsProxy()
Definition EventsData.h:34
TMap< IPhysicsProxyBase *, TArray< int32 > > PhysicsProxyToIndicesMap
Definition EventsData.h:43
Definition EventsData.h:161
FAllRemovalData RemovalData
Definition EventsData.h:170
FRemovalEventData()
Definition EventsData.h:162
void Reset()
Definition EventsData.h:164
FIndicesByPhysicsProxy PhysicsProxyToRemovalIndices
Definition EventsData.h:171
Definition EventsData.h:175
FSleepingEventData()
Definition EventsData.h:176
void Reset()
Definition EventsData.h:178
FSleepingDataArray SleepingData
Definition EventsData.h:183
Definition EventsData.h:15
FTimeResource()
Definition EventsData.h:16
FReal TimeCreated
Definition EventsData.h:17
Definition EventsData.h:129
FAllTrailingData TrailingData
Definition EventsData.h:138
FIndicesByPhysicsProxy PhysicsProxyToTrailingIndices
Definition EventsData.h:139
void Reset()
Definition EventsData.h:132
FTrailingEventData()
Definition EventsData.h:130
Definition NumericLimits.h:41