UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Chaos::FConstraintHandle Class Referenceabstract

Base class for constraint handles. More...

#include <ConstraintHandle.h>

+ Inheritance diagram for Chaos::FConstraintHandle:

Public Types

using FGeometryParticleHandle = TGeometryParticleHandle< FReal, 3 >
 

Public Member Functions

 FConstraintHandle ()
 
 FConstraintHandle (FPBDConstraintContainer *InContainer)
 
virtual ~FConstraintHandle ()
 
virtual bool IsValid () const
 
FPBDConstraintContainerGetContainer ()
 
const FPBDConstraintContainerGetContainer () const
 
bool IsInConstraintGraph () const
 
Private::FPBDIslandConstraintGetConstraintGraphEdge () const
 
void SetConstraintGraphEdge (Private::FPBDIslandConstraint *InEdge)
 
virtual TVec2< FGeometryParticleHandle * > GetConstrainedParticles () const =0
 
virtual void SetEnabled (bool InEnabled)=0
 
virtual bool IsEnabled () const =0
 
virtual bool IsProbe () const
 
virtual bool SupportsSleeping () const
 
virtual bool SupportsPartialIslandSleeping () const
 
virtual bool IsSleeping () const
 
virtual void SetIsSleeping (const bool bInIsSleeping)
 
virtual FVec3f GetNetLinearImpulse () const
 
virtual bool WasAwakened () const
 
virtual void SetWasAwakened (const bool bInWasAwakened)
 
int32 GetContainerId () const
 
template<typename T >
T * As ()
 
template<typename T >
const T * As () const
 
template<typename T >
T * AsUnsafe ()
 
template<typename T >
const T * AsUnsafe () const
 
const FConstraintHandleTypeIDGetType () const
 
 UE_DEPRECATED (5.3, "Use GetConstraintGraphEdge") int32 GetConstraintGraphIndex() const
 
 UE_DEPRECATED (5.3, "Not supported") void SetConstraintGraphIndex(const int32 InIndex) const
 

Static Public Member Functions

static const FConstraintHandleTypeIDStaticType ()
 
static const FConstraintHandleTypeIDInvalidType ()
 

Protected Attributes

FPBDConstraintContainerConstraintContainer
 
Private::FPBDIslandConstraintGraphEdge
 

Friends

class FPBDConstraintContainer
 

Detailed Description

Base class for constraint handles.

Constraints are referenced by handle in the constraint graph. Constraint handles allow us to support different allocation and storage policies for constraints. E.g., heap-allocated constraints, array-based constraints etc.

See also
FIndexedConstraintHandle, FIntrusiveConstraintHandle

Member Typedef Documentation

◆ FGeometryParticleHandle

Constructor & Destructor Documentation

◆ FConstraintHandle() [1/2]

Chaos::FConstraintHandle::FConstraintHandle ( )
inline

◆ FConstraintHandle() [2/2]

Chaos::FConstraintHandle::FConstraintHandle ( FPBDConstraintContainer InContainer)
inline

◆ ~FConstraintHandle()

virtual Chaos::FConstraintHandle::~FConstraintHandle ( )
inlinevirtual

Member Function Documentation

◆ As() [1/2]

template<typename T >
T * Chaos::FConstraintHandle::As ( )
inline

◆ As() [2/2]

template<typename T >
const T * Chaos::FConstraintHandle::As ( ) const
inline

◆ AsUnsafe() [1/2]

template<typename T >
T * Chaos::FConstraintHandle::AsUnsafe ( )
inline

◆ AsUnsafe() [2/2]

template<typename T >
const T * Chaos::FConstraintHandle::AsUnsafe ( ) const
inline

◆ GetConstrainedParticles()

◆ GetConstraintGraphEdge()

Private::FPBDIslandConstraint * Chaos::FConstraintHandle::GetConstraintGraphEdge ( ) const
inline

◆ GetContainer() [1/2]

FPBDConstraintContainer * Chaos::FConstraintHandle::GetContainer ( )
inline

◆ GetContainer() [2/2]

const FPBDConstraintContainer * Chaos::FConstraintHandle::GetContainer ( ) const
inline

◆ GetContainerId()

int32 Chaos::FConstraintHandle::GetContainerId ( ) const
inline

◆ GetNetLinearImpulse()

virtual FVec3f Chaos::FConstraintHandle::GetNetLinearImpulse ( ) const
inlinevirtual

Reimplemented in Chaos::FPBDCollisionConstraint.

◆ GetType()

const FConstraintHandleTypeID & Chaos::FConstraintHandle::GetType ( ) const
inline

◆ InvalidType()

static const FConstraintHandleTypeID & Chaos::FConstraintHandle::InvalidType ( )
inlinestatic

◆ IsEnabled()

◆ IsInConstraintGraph()

bool Chaos::FConstraintHandle::IsInConstraintGraph ( ) const
inline

◆ IsProbe()

virtual bool Chaos::FConstraintHandle::IsProbe ( ) const
inlinevirtual

◆ IsSleeping()

virtual bool Chaos::FConstraintHandle::IsSleeping ( ) const
inlinevirtual

◆ IsValid()

virtual bool Chaos::FConstraintHandle::IsValid ( ) const
inlinevirtual

◆ SetConstraintGraphEdge()

void Chaos::FConstraintHandle::SetConstraintGraphEdge ( Private::FPBDIslandConstraint InEdge)
inline

◆ SetEnabled()

◆ SetIsSleeping()

virtual void Chaos::FConstraintHandle::SetIsSleeping ( const bool  bInIsSleeping)
inlinevirtual

◆ SetWasAwakened()

virtual void Chaos::FConstraintHandle::SetWasAwakened ( const bool  bInWasAwakened)
inlinevirtual

◆ StaticType()

static const FConstraintHandleTypeID & Chaos::FConstraintHandle::StaticType ( )
inlinestatic

◆ SupportsPartialIslandSleeping()

virtual bool Chaos::FConstraintHandle::SupportsPartialIslandSleeping ( ) const
inlinevirtual

Reimplemented in Chaos::FPBDCollisionConstraint.

◆ SupportsSleeping()

virtual bool Chaos::FConstraintHandle::SupportsSleeping ( ) const
inlinevirtual

Reimplemented in Chaos::FPBDCollisionConstraint.

◆ UE_DEPRECATED() [1/2]

Chaos::FConstraintHandle::UE_DEPRECATED ( 5.  3,
"Not supported"   
) const
inline

◆ UE_DEPRECATED() [2/2]

Chaos::FConstraintHandle::UE_DEPRECATED ( 5.  3,
"Use GetConstraintGraphEdge"   
) const
inline

◆ WasAwakened()

virtual bool Chaos::FConstraintHandle::WasAwakened ( ) const
inlinevirtual

Friends And Related Symbol Documentation

◆ FPBDConstraintContainer

Member Data Documentation

◆ ConstraintContainer

FPBDConstraintContainer* Chaos::FConstraintHandle::ConstraintContainer
protected

◆ GraphEdge

Private::FPBDIslandConstraint* Chaos::FConstraintHandle::GraphEdge
protected

The documentation for this class was generated from the following files: