13#if !(UE_BUILD_SHIPPING || UE_BUILD_TEST)
14#define PARTICLE_ITERATOR_RANGED_FOR_CHECK 1
16#define PARTICLE_ITERATOR_RANGED_FOR_CHECK 0
21 template<
class T,
int d>
30 template<
class T,
int d>
38#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
39 MDirtyValidationCount = 0;
45 , MRemoveParticleBehavior(
Other.MRemoveParticleBehavior)
50#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
51 MDirtyValidationCount = 0;
62#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
63 MDirtyValidationCount = 0;
73 IncrementDirtyValidation();
86 IncrementDirtyValidation();
95 IncrementDirtyValidation();
101 IncrementDirtyValidation();
110#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
111 MDirtyValidationCount = 0;
112 ++
Other.MDirtyValidationCount;
131 IncrementDirtyValidation();
191 return MX.GetAllocatedSize();
194#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
206#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
207 int32 MDirtyValidationCount;
210 void IncrementDirtyValidation()
212#if PARTICLE_ITERATOR_RANGED_FOR_CHECK
213 ++MDirtyValidationCount;
224 template<
typename T,
int d>
#define ensureMsgf( InExpression, InFormat,...)
Definition AssertionMacros.h:465
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
constexpr uint32 HashCombine(uint32 A, uint32 C)
Definition TypeHash.h:36
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition ArrayCollectionArray.h:15
Definition ArrayCollection.h:10
void MoveToOtherArrayCollection(const int32 Index, TArrayCollection &Other)
Definition ArrayCollection.h:132
int32 AddArray(TArrayCollectionArrayBase *Array)
Definition ArrayCollection.h:36
void ResizeHelper(const int32 Num)
Definition ArrayCollection.h:93
void RemoveAtSwapHelper(const int32 Index)
Definition ArrayCollection.h:119
void AddElementsHelper(const int32 Num)
Definition ArrayCollection.h:84
void RemoveAtHelper(const int32 Index, const int32 Count)
Definition ArrayCollection.h:106
Definition Particles.h:22
Definition Particles.h:32
uint32 GetTypeHash() const
Definition Particles.h:171
void AddParticles(const int32 Num)
Definition Particles.h:70
void MoveToOtherParticles(const int32 Idx, TParticles< T, d > &Other)
Definition Particles.h:92
FORCEINLINE const TArray< TVector< T, d > > & AllX() const
Definition Particles.h:199
const TVector< T, d > & GetX(const int32 Index) const
Definition Particles.h:156
TParticles & operator=(TParticles< T, d > &&Other)
Definition Particles.h:104
int32 DirtyValidationCount() const
Definition Particles.h:195
const TArrayCollectionArray< TVector< T, d > > & XArray() const
Definition Particles.h:134
FORCEINLINE TArray< TVector< T, d > > & AllX()
Definition Particles.h:198
void Resize(const int32 Num)
Definition Particles.h:98
virtual ~TParticles()
Definition Particles.h:67
void Serialize(FArchive &Ar)
Definition Particles.h:122
TParticles(TParticles< T, d > &&Other)
Definition Particles.h:43
ERemoveParticleBehavior & RemoveParticleBehavior()
Definition Particles.h:90
ERemoveParticleBehavior RemoveParticleBehavior() const
Definition Particles.h:89
void DestroyParticle(const int32 Idx)
Definition Particles.h:76
const TArrayCollectionArray< TVector< T, d > > & X() const
Definition Particles.h:117
SIZE_T GetAllocatedSize() const
Definition Particles.h:189
FString ToString(int32 index) const
Definition Particles.h:166
void SetX(const int32 Index, const TVector< T, d > &InX)
Definition Particles.h:161
TParticles(const TParticles< T, d > &Other)=delete
TParticles()
Definition Particles.h:34
TParticles(TArray< TVector< T, d > > &&Positions)
Definition Particles.h:55
friend FArchive & operator<<(FArchive &Ar, TParticles< T, d > &InParticles)
Definition Particles.h:217
TArrayCollectionArray< TVector< T, d > > & XArray()
Definition Particles.h:139
Definition Archive.h:1208
virtual void Serialize(void *V, int64 Length)
Definition Archive.h:1689
Definition SkeletalMeshComponent.h:307
ERemoveParticleBehavior
Definition Particles.h:25
EChaosCollisionTraceFlag
Definition Particles.h:231
@ Chaos_CTF_UseComplexAsSimple
@ Chaos_CTF_UseSimpleAndComplex
@ Chaos_CTF_UseSimpleAsComplex
FORCEINLINE uint32 GetTypeHash(const FParticleID &Unique)
Definition GeometryParticles.h:99
TParticles< FReal, 3 > FParticles
Definition ImplicitObject.h:35
uint32 GetTypeHash(const TBox< T > &Box)
Definition Box.h:1008
U16 Index
Definition radfft.cpp:71