ISequenceUpdater

Interface for an object that will update a sequence based on the current context.

Windows
MacOS
Linux

References

Module

MovieScene

Header

/Engine/Source/Runtime/MovieScene/Public/EntitySystem/MovieSceneSequenceUpdaters.h

Include

#include "EntitySystem/MovieSceneSequenceUpdaters.h"

Syntax

struct ISequenceUpdater

Remarks

Interface for an object that will update a sequence based on the current context. It holds several responsibilities:

Handle dissection of evaluation contexts based on determinism fences

To add pending instantiations to FInstanceRegistry for newly-evaluated source entities

To add the Unlink tag for any linker entities that are now longer required for evaluation (ie, have just finished evaluating)

To handle 1 and 2 for any sub sequences that may or may not be required for the context

To handle legacy track template evaluation

Destructors

Name Description

Public function Virtual

~ISequenceUpdater()

Virtual destructor

Functions

Name Description

Public function

void

 

Destroy

Called right before this updater's sequence instance is about to be destroyed completely

Public function

void

 

DissectContext

(
    UMovieSceneEntitySystemLinker*...,
    IMovieScenePlayer* InPlayer,
    const FMovieSceneContext& InContex...,
    TArray< TRange< FFrameTime >>& Out...
)

Called before any updates to the sequence to allow this updater to dissect the context into smaller ranges that should be evaluated independently for the purpose of ensuring determinism.

Public function Static

void

 

FactoryInstance

(
    TUniquePtr< ISequenceUpdater >& Ou...,
    UMovieSceneCompiledDataManager*...,
    FMovieSceneCompiledDataID CompiledD...
)

Entry-point for creating or updating a new ISequenceUpdater interface based on the requirements of the compiled data.

Public function Const

FInstanceHan...

 

FindSubInstance

(
    FMovieSceneSequenceID SubSequenceID
)

Find a sub sequence instance from its ID (if it exists)

Public function

void

 

Finish

(
    UMovieSceneEntitySystemLinker*...,
    FInstanceHandle InInstanceHandle,
    IMovieScenePlayer* InPlayer
)

Called before evaluation when this updater's sequence is no longer required to be evaluated

Public function

void

 

InvalidateCachedData

Invalidate any cached information that depends on the compiled sequence data due to the compiled data changing

Public function

TUniquePtr< ...

 

MigrateToHierarchical()

Migrate this updater to one that can represent hierarchical data.

Public function

void

 

OverrideRootSequence

(
    UMovieSceneEntitySystemLinker*...,
    FInstanceHandle InstanceHandle,
    FMovieSceneSequenceID NewRootOverri...
)

Override the sequence ID that should be considered the root sequence for this updater

Public function

void

 

Start

(
    UMovieSceneEntitySystemLinker*...,
    FInstanceHandle InInstanceHandle,
    IMovieScenePlayer* InPlayer,
    const FMovieSceneContext& InContex...
)

Called if this updater has not been evaluated before, or has since been Finished.

Public function

void

 

Update

(
    UMovieSceneEntitySystemLinker*...,
    FInstanceHandle InInstanceHandle,
    IMovieScenePlayer* InPlayer,
    const FMovieSceneContext& InContex...
)

Called in order that this updater may make any changes to the linker's environment before its sequence is evaluated (ie, initialize or unlink any entity instantiations)

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss