UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FConstraintsManagerController Class Reference

#include <ConstraintsManager.h>

Public Member Functions

template<typename TConstraint >
TConstraintAllocateConstraintT (const FName &InBaseName, const bool bUseDefault=false) const
 
CONSTRAINTS_API bool AddConstraint (UTickableConstraint *InConstraint) const
 
CONSTRAINTS_API UTickableConstraintAddConstraintFromCopy (UTickableConstraint *CopyOfConstraint) const
 
CONSTRAINTS_API int32 GetConstraintIndex (const FGuid &InGuid) const
 
CONSTRAINTS_API bool RemoveConstraint (const int32 InConstraintIndex, bool bDoNotCompensate=false)
 
CONSTRAINTS_API bool RemoveConstraint (UTickableConstraint *InConstraint, bool bDoNotCompensate=false)
 
CONSTRAINTS_API bool UnregisterConstraint (UTickableConstraint *InConstraint)
 
CONSTRAINTS_API bool RemoveAllConstraints (bool bDoNotCompensate=false)
 
CONSTRAINTS_API UTickableConstraintGetConstraint (const FGuid &InGuid) const
 
CONSTRAINTS_API UTickableConstraintGetConstraint (const int32 InConstraintIndex) const
 
CONSTRAINTS_API const TArray< TWeakObjectPtr< UTickableConstraint > > & GetConstraintsArray () const
 
CONSTRAINTS_API TArray< TWeakObjectPtr< UTickableConstraint > > GetAllConstraints (const bool bSorted=false) const
 
CONSTRAINTS_API TArray< TWeakObjectPtr< UTickableConstraint > > GetStaticConstraints (const bool bSorted=false) const
 
template<typename Predicate >
TArray< TWeakObjectPtr< UTickableConstraint > > GetConstraintsByPredicate (Predicate Pred, const bool bSorted=false) const
 
CONSTRAINTS_API TArray< TWeakObjectPtr< UTickableConstraint > > GetParentConstraints (const uint32 InTargetHash, const bool bSorted=false) const
 
CONSTRAINTS_API void SetConstraintsDependencies (const FName &InNameToTickBefore, const FName &InNameToTickAfter) const
 
CONSTRAINTS_API void SetConstraintsDependencies (const FGuid &InGuidToTickBefore, const FGuid &InGuidToTickAfter) const
 
CONSTRAINTS_API void EvaluateAllConstraints () const
 
CONSTRAINTS_API bool DoesExistInAnyWorld (UTickableConstraint *InConstraint)
 
CONSTRAINTS_API void StaticConstraintCreated (UWorld *InWorld, UTickableConstraint *InConstraint)
 
CONSTRAINTS_API void StaticConstraintCreated (UTickableConstraint *InConstraint)
 
 DECLARE_MULTICAST_DELEGATE_OneParam (FOnSceneComponentConstrained, USceneComponent *)
 
CONSTRAINTS_API void MarkConstraintForEvaluation (UTickableConstraint *InConstraint) const
 
CONSTRAINTS_API void InvalidateEvaluationGraph () const
 
CONSTRAINTS_API void FlushEvaluationGraph () const
 

Static Public Member Functions

static CONSTRAINTS_API FConstraintsManagerControllerGet (UWorld *InWorld)
 
static CONSTRAINTS_API FOnSceneComponentConstrainedOnSceneComponentConstrained ()
 
static CONSTRAINTS_API FConstraintsManagerNotifyDelegateGetNotifyDelegate ()
 
static CONSTRAINTS_API void Notify (EConstraintsManagerNotifyType InNotifyType, UObject *InObject)
 

Static Public Attributes

static CONSTRAINTS_API bool bDoNotRemoveConstraint = false
 

Member Function Documentation

◆ AddConstraint()

bool FConstraintsManagerController::AddConstraint ( UTickableConstraint InConstraint) const

Add this constraint to the manager

◆ AddConstraintFromCopy()

CONSTRAINTS_API UTickableConstraint * FConstraintsManagerController::AddConstraintFromCopy ( UTickableConstraint CopyOfConstraint) const

Make a copy of this constraint and add it to the manager, returns the copy mode if it was added

◆ AllocateConstraintT()

template<typename TConstraint >
TConstraint * FConstraintsManagerController::AllocateConstraintT ( const FName InBaseName,
const bool  bUseDefault = false 
) const

Allocates a new constraint with the constraints manager as the owner.

◆ DECLARE_MULTICAST_DELEGATE_OneParam()

FConstraintsManagerController::DECLARE_MULTICAST_DELEGATE_OneParam ( FOnSceneComponentConstrained  ,
USceneComponent *   
)

Delegate that's fired when a scene component is constrained, this is needed to make sure things like gizmo's get updated after the constraint tick happens

◆ DoesExistInAnyWorld()

bool FConstraintsManagerController::DoesExistInAnyWorld ( UTickableConstraint InConstraint)

when PIEing/Simulating it's possible that the constraint isn't in the active manager but still lives

◆ EvaluateAllConstraints()

void FConstraintsManagerController::EvaluateAllConstraints ( ) const

Go through each constraint in order and evaluate and tick them

◆ FlushEvaluationGraph()

void FConstraintsManagerController::FlushEvaluationGraph ( ) const

◆ Get()

FConstraintsManagerController & FConstraintsManagerController::Get ( UWorld InWorld)
static

Get and Set Controller acive in this world

◆ GetAllConstraints()

TArray< TWeakObjectPtr< UTickableConstraint > > FConstraintsManagerController::GetAllConstraints ( const bool  bSorted = false) const

Returns systems' constraints array (sorted if needed).

◆ GetConstraint() [1/2]

UTickableConstraint * FConstraintsManagerController::GetConstraint ( const FGuid InGuid) const

Returns the constraint based on it's ID within the manager's constraints array.

◆ GetConstraint() [2/2]

UTickableConstraint * FConstraintsManagerController::GetConstraint ( const int32  InConstraintIndex) const

Returns the constraint based on it's index within the manager's constraints array.

◆ GetConstraintIndex()

CONSTRAINTS_API int32 FConstraintsManagerController::GetConstraintIndex ( const FGuid InGuid) const

Get the index of the given constraint's ID.

◆ GetConstraintsArray()

const TArray< TWeakObjectPtr< UTickableConstraint > > & FConstraintsManagerController::GetConstraintsArray ( ) const

Get read-only access to the array of constraints.

◆ GetConstraintsByPredicate()

template<typename Predicate >
TArray< TWeakObjectPtr< UTickableConstraint > > FConstraintsManagerController::GetConstraintsByPredicate ( Predicate  Pred,
const bool  bSorted = false 
) const

Returns a filtered constraints array checking if the predicate for each element is true.

◆ GetNotifyDelegate()

FConstraintsManagerNotifyDelegate & FConstraintsManagerController::GetNotifyDelegate ( )
static

Delegate to trigger changes in the constraints manager.

◆ GetParentConstraints()

TArray< TWeakObjectPtr< UTickableConstraint > > FConstraintsManagerController::GetParentConstraints ( const uint32  InTargetHash,
const bool  bSorted = false 
) const

Get parent constraints of the specified child. If bSorted is true, then the constraints will be sorted by dependency.

◆ GetStaticConstraints()

TArray< TWeakObjectPtr< UTickableConstraint > > FConstraintsManagerController::GetStaticConstraints ( const bool  bSorted = false) const

Returns the static/non-animated constraints

◆ InvalidateEvaluationGraph()

void FConstraintsManagerController::InvalidateEvaluationGraph ( ) const

◆ MarkConstraintForEvaluation()

void FConstraintsManagerController::MarkConstraintForEvaluation ( UTickableConstraint InConstraint) const

Evaluation graph API.

◆ Notify()

void FConstraintsManagerController::Notify ( EConstraintsManagerNotifyType  InNotifyType,
UObject InObject 
)
static

Notify from changes in the constraints manager.

◆ OnSceneComponentConstrained()

FConstraintsManagerController::FOnSceneComponentConstrained & FConstraintsManagerController::OnSceneComponentConstrained ( )
static

◆ RemoveAllConstraints()

bool FConstraintsManagerController::RemoveAllConstraints ( bool  bDoNotCompensate = false)

Remove All Constraints

◆ RemoveConstraint() [1/2]

bool FConstraintsManagerController::RemoveConstraint ( const int32  InConstraintIndex,
bool  bDoNotCompensate = false 
)

Remove the constraint at the given index.

◆ RemoveConstraint() [2/2]

bool FConstraintsManagerController::RemoveConstraint ( UTickableConstraint InConstraint,
bool  bDoNotCompensate = false 
)

Remove constraint by ptr

◆ SetConstraintsDependencies() [1/2]

void FConstraintsManagerController::SetConstraintsDependencies ( const FGuid InGuidToTickBefore,
const FGuid InGuidToTickAfter 
) const

◆ SetConstraintsDependencies() [2/2]

void FConstraintsManagerController::SetConstraintsDependencies ( const FName InNameToTickBefore,
const FName InNameToTickAfter 
) const

Set dependencies between two constraints.

◆ StaticConstraintCreated() [1/2]

void FConstraintsManagerController::StaticConstraintCreated ( UTickableConstraint InConstraint)

If a static constraint is created, we call this, which stores it to the manager/actor

◆ StaticConstraintCreated() [2/2]

void FConstraintsManagerController::StaticConstraintCreated ( UWorld InWorld,
UTickableConstraint InConstraint 
)

◆ UnregisterConstraint()

bool FConstraintsManagerController::UnregisterConstraint ( UTickableConstraint InConstraint)

Disable a constraint and remove it from the subsystem.

Member Data Documentation

◆ bDoNotRemoveConstraint

bool FConstraintsManagerController::bDoNotRemoveConstraint = false
static

Static to control if we should remove constraints or not, may not want to do some when compensating since we may be deleting spawnables while doing so


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