UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TAttributeInterpolator< NumericType > Class Template Referenceabstract

#include <AttributeInterpolator.h>

+ Inheritance diagram for TAttributeInterpolator< NumericType >:

Public Member Functions

 DECLARE_MULTICAST_DELEGATE_OneParam (FInterpolatorEvent, TOptional< NumericType >)
 
 TAttributeInterpolator ()
 
virtual ~TAttributeInterpolator ()
 
virtual bool IsTypeOf (EAttributeInterpolatorType InType) const =0
 
virtual bool IdenticalTo (const TAttributeInterpolator *InOther) const =0
 
bool IsSet () const
 
void Reset () const
 
bool IsEnabled () const
 
void SetEnabled (bool InEnabled=true)
 
void SetValue (const NumericType &InValue) const
 
void SetValueAndStop (const NumericType &InValue) const
 
const NumericType & Get () const
 
void Tick (float InDeltaTime)
 
double GetOverAllDeltaTime () const
 
void SetDelayOneShot (float InDelay) const
 
void SetTolerance (float InTolerance)
 
FInterpolatorEventOnInterpolationStarted ()
 
FInterpolatorEventOnInterpolationStopped ()
 
bool Equals (const float &InA, const float &InB, double InTolerance)
 
bool Equals (const double &InA, const double &InB, double InTolerance)
 

Static Public Member Functions

static bool Equals (const NumericType &InA, const NumericType &InB, double InTolerance=0.001)
 

Protected Member Functions

virtual void Interpolate () const =0
 
bool IsPlaying () const
 
virtual bool Start () const
 
virtual bool PlayIfStopped () const
 
virtual bool Stop () const
 
virtual bool Restart () const
 

Protected Attributes

bool bEnabled
 
float Tolerance
 
TOptional< floatDelay
 
TOptional< floatOverallDeltaTime
 
TOptional< NumericType > InterpolatedValue
 
TOptional< NumericType > LastValue
 
TOptional< NumericType > DesiredValue
 
FInterpolatorEvent InterpolationStarted
 
FInterpolatorEvent InterpolationStopped
 

Friends

template<typename >
class TAnimatedAttribute
 

Detailed Description

template<typename NumericType>
class TAttributeInterpolator< NumericType >

Attribute Interpolator Base Class

Constructor & Destructor Documentation

◆ TAttributeInterpolator()

template<typename NumericType >
TAttributeInterpolator< NumericType >::TAttributeInterpolator ( )
inline

◆ ~TAttributeInterpolator()

template<typename NumericType >
virtual TAttributeInterpolator< NumericType >::~TAttributeInterpolator ( )
inlinevirtual

Member Function Documentation

◆ DECLARE_MULTICAST_DELEGATE_OneParam()

template<typename NumericType >
TAttributeInterpolator< NumericType >::DECLARE_MULTICAST_DELEGATE_OneParam ( FInterpolatorEvent  ,
TOptional< NumericType >   
)

◆ Equals() [1/3]

bool TAttributeInterpolator< double >::Equals ( const double InA,
const double InB,
double  InTolerance 
)
inline

◆ Equals() [2/3]

bool TAttributeInterpolator< float >::Equals ( const float InA,
const float InB,
double  InTolerance 
)
inline

◆ Equals() [3/3]

template<typename NumericType >
static bool TAttributeInterpolator< NumericType >::Equals ( const NumericType &  InA,
const NumericType &  InB,
double  InTolerance = 0.001 
)
inlinestatic

Helper function to compare to values - to allow to specialize per type as needed

Parameters
InAThe first value to compare
InBThe second value to compare
Returns
True if the two values are considered "equal"

◆ Get()

template<typename NumericType >
const NumericType & TAttributeInterpolator< NumericType >::Get ( ) const
inline

Returns the interpolated value

Returns
The interpolated value

◆ GetOverAllDeltaTime()

template<typename NumericType >
double TAttributeInterpolator< NumericType >::GetOverAllDeltaTime ( ) const
inline

Returns the delta time between the start of the animation and now

◆ IdenticalTo()

template<typename NumericType >
virtual bool TAttributeInterpolator< NumericType >::IdenticalTo ( const TAttributeInterpolator< NumericType > *  InOther) const
pure virtual

Compares this interpolator to another one

Parameters
InOtherThe interpolator to compare this one to
Returns
True if the this interpolator is considered identical to the passed one

Implemented in TEasingAttributeInterpolator< NumericType >, TArriveAttributeInterpolator< NumericType >, and TVerletAttributeInterpolator< NumericType >.

◆ Interpolate()

◆ IsEnabled()

template<typename NumericType >
bool TAttributeInterpolator< NumericType >::IsEnabled ( ) const
inline

◆ IsPlaying()

template<typename NumericType >
bool TAttributeInterpolator< NumericType >::IsPlaying ( ) const
inlineprotected

◆ IsSet()

template<typename NumericType >
bool TAttributeInterpolator< NumericType >::IsSet ( ) const
inline

Returns true if this interpolator's value has even been set

Returns
True if this interpolator's value has even been set

◆ IsTypeOf()

template<typename NumericType >
virtual bool TAttributeInterpolator< NumericType >::IsTypeOf ( EAttributeInterpolatorType  InType) const
pure virtual

Returns true if the interpolator is of a given type

Parameters
InTypeThe type to compare agains
Returns
True if the interpolator matches the type

Implemented in TEasingAttributeInterpolator< NumericType >, TArriveAttributeInterpolator< NumericType >, and TVerletAttributeInterpolator< NumericType >.

◆ OnInterpolationStarted()

template<typename NumericType >
FInterpolatorEvent & TAttributeInterpolator< NumericType >::OnInterpolationStarted ( )
inline

◆ OnInterpolationStopped()

template<typename NumericType >
FInterpolatorEvent & TAttributeInterpolator< NumericType >::OnInterpolationStopped ( )
inline

◆ PlayIfStopped()

template<typename NumericType >
virtual bool TAttributeInterpolator< NumericType >::PlayIfStopped ( ) const
inlineprotectedvirtual

◆ Reset()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::Reset ( ) const
inline

Resets the interpolator

◆ Restart()

template<typename NumericType >
virtual bool TAttributeInterpolator< NumericType >::Restart ( ) const
inlineprotectedvirtual

◆ SetDelayOneShot()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::SetDelayOneShot ( float  InDelay) const
inline

Sets the delay for the next shot - delays are consumed and only used once

◆ SetEnabled()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::SetEnabled ( bool  InEnabled = true)
inline

◆ SetTolerance()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::SetTolerance ( float  InTolerance)
inline

Sets the tolerance on this interpolator

◆ SetValue()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::SetValue ( const NumericType &  InValue) const
inline

Set the internal state of the interpolator

Parameters
InValueThe value to be set on the interpolator

◆ SetValueAndStop()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::SetValueAndStop ( const NumericType &  InValue) const
inline

Set the internal state of the interpolator and disables animation

Parameters
InValueThe value to be set on the interpolator

◆ Start()

template<typename NumericType >
virtual bool TAttributeInterpolator< NumericType >::Start ( ) const
inlineprotectedvirtual

◆ Stop()

template<typename NumericType >
virtual bool TAttributeInterpolator< NumericType >::Stop ( ) const
inlineprotectedvirtual

◆ Tick()

template<typename NumericType >
void TAttributeInterpolator< NumericType >::Tick ( float  InDeltaTime)
inline

Updates the interpolator

Friends And Related Symbol Documentation

◆ TAnimatedAttribute

template<typename NumericType >
template<typename >
friend class TAnimatedAttribute
friend

Member Data Documentation

◆ bEnabled

template<typename NumericType >
bool TAttributeInterpolator< NumericType >::bEnabled
protected

◆ Delay

template<typename NumericType >
TOptional<float> TAttributeInterpolator< NumericType >::Delay
mutableprotected

◆ DesiredValue

template<typename NumericType >
TOptional<NumericType> TAttributeInterpolator< NumericType >::DesiredValue
mutableprotected

◆ InterpolatedValue

template<typename NumericType >
TOptional<NumericType> TAttributeInterpolator< NumericType >::InterpolatedValue
mutableprotected

◆ InterpolationStarted

template<typename NumericType >
FInterpolatorEvent TAttributeInterpolator< NumericType >::InterpolationStarted
protected

◆ InterpolationStopped

template<typename NumericType >
FInterpolatorEvent TAttributeInterpolator< NumericType >::InterpolationStopped
protected

◆ LastValue

template<typename NumericType >
TOptional<NumericType> TAttributeInterpolator< NumericType >::LastValue
mutableprotected

◆ OverallDeltaTime

template<typename NumericType >
TOptional<float> TAttributeInterpolator< NumericType >::OverallDeltaTime
mutableprotected

◆ Tolerance

template<typename NumericType >
float TAttributeInterpolator< NumericType >::Tolerance
protected

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