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

#include <NavigationSystem.h>

Public Member Functions

NAVIGATIONSYSTEM_API void SetupTimeSlice (double SliceDuration)
 
NAVIGATIONSYSTEM_API void StartTimeSlice ()
 
NAVIGATIONSYSTEM_API void EndTimeSliceAndAdjustDuration ()
 
double GetStartTime () const
 
NAVIGATIONSYSTEM_API bool TestTimeSliceFinished () const
 
bool IsTimeSliceFinishedCached () const
 
double GetRemainingDuration () const
 
double GetRemainingDurationFraction () const
 
NAVIGATIONSYSTEM_API void DebugSetLongTimeSliceData (TFunction< void(FName, double)> LongTimeSliceFunction, double LongTimeSliceDuration) const
 
NAVIGATIONSYSTEM_API void DebugResetLongTimeSliceFunction () const
 
void DebugSetSectionName (FName InDebugSectionName) const
 

Protected Attributes

double OriginalDuration = 0.
 
double RemainingDuration = 0.
 
double StartTime = 0.
 
double TimeLastTested = 0.
 
bool bTimeSliceFinishedCached = false
 
TFunction< void(FName, double)> DebugLongTimeSliceFunction
 
double DebugLongTimeSliceDuration = 0.
 
FName DebugSectionName = FNavigationSystem::DebugTimeSliceDefaultSectionName
 

Member Function Documentation

◆ DebugResetLongTimeSliceFunction()

NAVIGATIONSYSTEM_API void FNavRegenTimeSlicer::DebugResetLongTimeSliceFunction ( ) const

◆ DebugSetLongTimeSliceData()

NAVIGATIONSYSTEM_API void FNavRegenTimeSlicer::DebugSetLongTimeSliceData ( TFunction< void(FName, double)>  LongTimeSliceFunction,
double  LongTimeSliceDuration 
) const

◆ DebugSetSectionName()

void FNavRegenTimeSlicer::DebugSetSectionName ( FName  InDebugSectionName) const
inline

Sets the debug name for a time sliced section of code. Do not call this directly use MARK_TIMESLICE_SECTION_DEBUG

◆ EndTimeSliceAndAdjustDuration()

void FNavRegenTimeSlicer::EndTimeSliceAndAdjustDuration ( )

Useful when multiple sections of code need to be timesliced per frame using the same time slice duration that do not necessarily occur concurrently. This ends the time sliced code section and adjusts the RemainingDuration based on the time used between calls to StartTimeSlice and the last call to TestTimeSliceFinished. Note the actual time slice is not tested in this function. Thats done in TestTimeSliceFinished! This can be called multiple times as long as StartTimeSlice() is called before EndTimeSliceAndAdjustDuration(). EndTimeSliceAndAdjustDuration can be called after TestTimeSliceFinished() has returned true in this case the RemainingDuration will just be zero

◆ GetRemainingDuration()

double FNavRegenTimeSlicer::GetRemainingDuration ( ) const
inline

◆ GetRemainingDurationFraction()

double FNavRegenTimeSlicer::GetRemainingDurationFraction ( ) const
inline

◆ GetStartTime()

double FNavRegenTimeSlicer::GetStartTime ( ) const
inline

◆ IsTimeSliceFinishedCached()

bool FNavRegenTimeSlicer::IsTimeSliceFinishedCached ( ) const
inline

◆ SetupTimeSlice()

void FNavRegenTimeSlicer::SetupTimeSlice ( double  SliceDuration)

Setup the initial values for a time slice. This can be called on an instance after TestTimeSliceFinished() has returned true and EndTimeSliceAndAdjustDuration() has been called

◆ StartTimeSlice()

void FNavRegenTimeSlicer::StartTimeSlice ( )

Starts the time slice, this can be called multiple times as long as EndTimeSliceAndAdjustDuration() is called between each call. StartTimeSlice should not be called after TestTimeSliceFinished() has returned true

◆ TestTimeSliceFinished()

bool FNavRegenTimeSlicer::TestTimeSliceFinished ( ) const

Member Data Documentation

◆ bTimeSliceFinishedCached

bool FNavRegenTimeSlicer::bTimeSliceFinishedCached = false
mutableprotected

◆ DebugLongTimeSliceDuration

double FNavRegenTimeSlicer::DebugLongTimeSliceDuration = 0.
mutableprotected

◆ DebugLongTimeSliceFunction

TFunction<void(FName, double)> FNavRegenTimeSlicer::DebugLongTimeSliceFunction
mutableprotected

◆ DebugSectionName

FName FNavRegenTimeSlicer::DebugSectionName = FNavigationSystem::DebugTimeSliceDefaultSectionName
mutableprotected

◆ OriginalDuration

double FNavRegenTimeSlicer::OriginalDuration = 0.
protected

◆ RemainingDuration

double FNavRegenTimeSlicer::RemainingDuration = 0.
protected

◆ StartTime

double FNavRegenTimeSlicer::StartTime = 0.
protected

◆ TimeLastTested

double FNavRegenTimeSlicer::TimeLastTested = 0.
mutableprotected

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