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

#include <Timeout.h>

Public Member Functions

 operator bool () const
 
bool IsExpired () const
 
UE_FORCEINLINE_HINT bool WillNeverExpire () const
 
UE_FORCEINLINE_HINT bool IsAlwaysExpired () const
 
void SetToExpired ()
 
 FTimeout (double TimeoutSeconds)
 
 FTimeout (const FTimeout &BaseTimeout, double TimeoutSeconds)
 
double GetElapsedSeconds () const
 
double GetRemainingSeconds () const
 
double GetTimeoutSeconds () const
 
void SetTimeoutSeconds (double TimeoutSeconds)
 
void ModifyTimeoutSeconds (double DeltaTimeoutSeconds)
 
 FTimeout (FTimespan TimeoutValue)
 
FTimespan GetElapsedTime () const
 
FTimespan GetRemainingTime () const
 
FTimespan GetTimeoutValue () const
 
uint32 GetRemainingRoundedUpMilliseconds () const
 

Static Public Member Functions

static FTimeout Never ()
 
static FTimeout AlwaysExpired ()
 

Friends

bool operator== (FTimeout Left, FTimeout Right)
 
bool operator!= (FTimeout Left, FTimeout Right)
 

Detailed Description

Utility class to create a timeout that will expire at a point in the future. Example usage:

FTimeout TimeoutFromTimespan(FTimespan::FromMilliseconds(2)); FTimeout TimeoutFromSeconds(0.002); while (!TimeoutFromSeconds.IsExpired()) { ... }

Constructor & Destructor Documentation

◆ FTimeout() [1/3]

UE::FTimeout::FTimeout ( double  TimeoutSeconds)
inlineexplicit

Construct a timeout that starts right now and will end after the passed in time in seconds

◆ FTimeout() [2/3]

UE::FTimeout::FTimeout ( const FTimeout BaseTimeout,
double  TimeoutSeconds 
)
inlineexplicit

Construct a timeout that started at the same time as BaseTimeout, but with a new duration

◆ FTimeout() [3/3]

UE::FTimeout::FTimeout ( FTimespan  TimeoutValue)
inlineexplicit

Construct a timeout that starts right now and will end after the passed in timespan

Member Function Documentation

◆ AlwaysExpired()

static FTimeout UE::FTimeout::AlwaysExpired ( )
inlinestatic

Create a timeout that will always return true for IsExpired

◆ GetElapsedSeconds()

double UE::FTimeout::GetElapsedSeconds ( ) const
inline

Returns time since the timeout was created, in seconds

◆ GetElapsedTime()

FTimespan UE::FTimeout::GetElapsedTime ( ) const
inline

Returns time since the timeout was created, as a timespan

◆ GetRemainingRoundedUpMilliseconds()

uint32 UE::FTimeout::GetRemainingRoundedUpMilliseconds ( ) const
inline

Intended for use in waiting functions, e.g. FEvent::Wait() returns the whole number (rounded up) of remaining milliseconds, clamped into [0, MAX_uint32] range

◆ GetRemainingSeconds()

double UE::FTimeout::GetRemainingSeconds ( ) const
inline

Returns time left until the timeout expires (which can be negative) in seconds

◆ GetRemainingTime()

FTimespan UE::FTimeout::GetRemainingTime ( ) const
inline

Returns time left until the timeout expires (which can be negative) as a timespan

◆ GetTimeoutSeconds()

double UE::FTimeout::GetTimeoutSeconds ( ) const
inline

Returns duration of timeout in seconds

◆ GetTimeoutValue()

FTimespan UE::FTimeout::GetTimeoutValue ( ) const
inline

Returns duration of timeout as a timespan

◆ IsAlwaysExpired()

UE_FORCEINLINE_HINT bool UE::FTimeout::IsAlwaysExpired ( ) const
inline

Returns true if this was created from AlwaysExpired and does not need to be repeatedly checked

◆ IsExpired()

bool UE::FTimeout::IsExpired ( ) const
inline

Return true if elapsed time is greater than the initially requested timeout

◆ ModifyTimeoutSeconds()

void UE::FTimeout::ModifyTimeoutSeconds ( double  DeltaTimeoutSeconds)
inline

Safely modify the remaining time by adding the delta time in seconds to the timeout

◆ Never()

static FTimeout UE::FTimeout::Never ( )
inlinestatic

Create a timeout that will never return true for IsExpired

◆ operator bool()

UE::FTimeout::operator bool ( ) const
inlineexplicit

◆ SetTimeoutSeconds()

void UE::FTimeout::SetTimeoutSeconds ( double  TimeoutSeconds)
inline

Sets the timeout to new value in seconds

◆ SetToExpired()

void UE::FTimeout::SetToExpired ( )
inline

Set this timeout to explicitly expired without recalculating start time

◆ WillNeverExpire()

UE_FORCEINLINE_HINT bool UE::FTimeout::WillNeverExpire ( ) const
inline

Returns true if this was created from Never and does not need to be repeatedly checked

Friends And Related Symbol Documentation

◆ operator!=

bool operator!= ( FTimeout  Left,
FTimeout  Right 
)
friend

◆ operator==

bool operator== ( FTimeout  Left,
FTimeout  Right 
)
friend

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