UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FMovieSceneObjectCache Struct Reference

#include <MovieSceneEvaluationState.h>

Public Types

using FSharedPlaybackState = UE::MovieScene::FSharedPlaybackState
 

Public Member Functions

 DECLARE_MULTICAST_DELEGATE_OneParam (FOnBindingInvalidated, const FGuid &)
 
MOVIESCENE_API TArrayView< TWeakObjectPtr<> > FindBoundObjects (const FGuid &InBindingID, TSharedRef< const FSharedPlaybackState > InSharedPlaybackState)
 
MOVIESCENE_API TArrayView< const TWeakObjectPtr<> > IterateBoundObjects (const FGuid &InBindingID) const
 
MOVIESCENE_API void SetSequence (UMovieSceneSequence &InSequence, FMovieSceneSequenceIDRef InSequenceID, TSharedRef< const FSharedPlaybackState > SharedPlaybackState)
 
MOVIESCENE_API FGuid FindObjectId (UObject &InObject, TSharedRef< const FSharedPlaybackState > SharedPlaybackState)
 
MOVIESCENE_API FGuid FindCachedObjectId (UObject &InObject, TSharedRef< const FSharedPlaybackState > SharedPlaybackState)
 
MOVIESCENE_API void InvalidateExpiredObjects ()
 
MOVIESCENE_API void Invalidate (const FGuid &InGuid)
 
MOVIESCENE_API void Invalidate (const FGuid &InGuid, FMovieSceneSequenceIDRef InSequenceID)
 
MOVIESCENE_API void InvalidateIfValid (const FGuid &InGuid)
 
MOVIESCENE_API bool GetBindingActivation (const FGuid &InGuid) const
 
MOVIESCENE_API void SetBindingActivation (const FGuid &InGuid, bool bActive)
 
void Clear (TSharedRef< const FSharedPlaybackState > SharedPlaybackState)
 
UMovieSceneSequenceGetSequence () const
 
uint32 GetSerialNumber () const
 
void FilterObjectBindings (UObject *PredicateObject, TSharedRef< const FSharedPlaybackState > SharedPlaybackState, TArray< FMovieSceneObjectBindingID > *OutBindings)
 
MOVIESCENE_API TArrayView< TWeakObjectPtr<> > FindBoundObjects (const FGuid &InBindingID, IMovieScenePlayer &Player)
 
MOVIESCENE_API void SetSequence (UMovieSceneSequence &InSequence, FMovieSceneSequenceIDRef InSequenceID, IMovieScenePlayer &Player)
 
MOVIESCENE_API FGuid FindObjectId (UObject &InObject, IMovieScenePlayer &Player)
 
MOVIESCENE_API FGuid FindCachedObjectId (UObject &InObject, IMovieScenePlayer &Player)
 
MOVIESCENE_API void Clear (IMovieScenePlayer &Player)
 
MOVIESCENE_API void FilterObjectBindings (UObject *PredicateObject, IMovieScenePlayer &Player, TArray< FMovieSceneObjectBindingID > *OutBindings)
 

Public Attributes

FOnBindingInvalidated OnBindingInvalidated
 

Detailed Description

Object cache that looks up, resolves, and caches object bindings for a specific sequence

Member Typedef Documentation

◆ FSharedPlaybackState

Member Function Documentation

◆ Clear() [1/2]

void FMovieSceneObjectCache::Clear ( IMovieScenePlayer Player)

◆ Clear() [2/2]

void FMovieSceneObjectCache::Clear ( TSharedRef< const FSharedPlaybackState SharedPlaybackState)

Completely erase all knowledge of, anc caches for all object bindings

◆ DECLARE_MULTICAST_DELEGATE_OneParam()

FMovieSceneObjectCache::DECLARE_MULTICAST_DELEGATE_OneParam ( FOnBindingInvalidated  ,
const FGuid  
)

◆ FilterObjectBindings() [1/2]

void FMovieSceneObjectCache::FilterObjectBindings ( UObject PredicateObject,
IMovieScenePlayer Player,
TArray< FMovieSceneObjectBindingID > *  OutBindings 
)

◆ FilterObjectBindings() [2/2]

void FMovieSceneObjectCache::FilterObjectBindings ( UObject PredicateObject,
TSharedRef< const FSharedPlaybackState SharedPlaybackState,
TArray< FMovieSceneObjectBindingID > *  OutBindings 
)

Filter all the object bindings in this object cache that contain the specified predicate object

Parameters
PredicateObjectThe object to filter by. Any bindings referencing this object will be added to the output array.
PlayerThe movie scene player that is playing back the sequence
OutBindings(mandatory) Array to populate with bindings that relate to the object

◆ FindBoundObjects() [1/2]

TArrayView< TWeakObjectPtr<> > FMovieSceneObjectCache::FindBoundObjects ( const FGuid InBindingID,
IMovieScenePlayer Player 
)

◆ FindBoundObjects() [2/2]

TArrayView< TWeakObjectPtr<> > FMovieSceneObjectCache::FindBoundObjects ( const FGuid InBindingID,
TSharedRef< const FSharedPlaybackState InSharedPlaybackState 
)

Find all objects that are bound to the specified binding ID

Note
Will look up, and cache any objects if the cache has been invalidated
Parameters
InBindingIDThe object binding GUID for a spawnable or posessable in a UMovieScene
PlayerThe movie scene player that is playing back the sequence
Returns
An iterable type of all objects bound to the specified ID.

◆ FindCachedObjectId() [1/2]

FGuid FMovieSceneObjectCache::FindCachedObjectId ( UObject InObject,
IMovieScenePlayer Player 
)

◆ FindCachedObjectId() [2/2]

FGuid FMovieSceneObjectCache::FindCachedObjectId ( UObject InObject,
TSharedRef< const FSharedPlaybackState SharedPlaybackState 
)

Attempt deduce the posessable or spawnable that relates to the specified object

Note
Does not clear the existing cache
Parameters
InObjectThe object whose binding ID is to be find
PlayerThe movie scene player that is playing back the sequence
Returns
The object's spawnable or possessable GUID, or a zero GUID if it was not found

◆ FindObjectId() [1/2]

FGuid FMovieSceneObjectCache::FindObjectId ( UObject InObject,
IMovieScenePlayer Player 
)

◆ FindObjectId() [2/2]

FGuid FMovieSceneObjectCache::FindObjectId ( UObject InObject,
TSharedRef< const FSharedPlaybackState SharedPlaybackState 
)

Attempt deduce the posessable or spawnable that relates to the specified object

Note
Will forcably resolve any out of date bindings in the entire sequence
Parameters
InObjectThe object whose binding ID is to be find
PlayerThe movie scene player that is playing back the sequence
Returns
The object's spawnable or possessable GUID, or a zero GUID if it was not found

◆ GetBindingActivation()

bool FMovieSceneObjectCache::GetBindingActivation ( const FGuid InGuid) const

◆ GetSequence()

UMovieSceneSequence * FMovieSceneObjectCache::GetSequence ( ) const
inline

Get the sequence that this cache relates to

◆ GetSerialNumber()

uint32 FMovieSceneObjectCache::GetSerialNumber ( ) const
inline

Get the current serial number of this cache

◆ Invalidate() [1/2]

void FMovieSceneObjectCache::Invalidate ( const FGuid InGuid)

Invalidate the object bindings for a specific object binding ID in this sequence

Parameters
InGuidThe object binding ID to invalidate bindings for

◆ Invalidate() [2/2]

void FMovieSceneObjectCache::Invalidate ( const FGuid InGuid,
FMovieSceneSequenceIDRef  InSequenceID 
)

Invalidate the object bindings for a specific object binding ID in the specified sequence ID. If the sequence ID matches this one, then we will look for the guid in this sequence. If it does not, then we will see if any of our object bindings reference that one, and if so, they will be invalidated.

Parameters
InGuidThe object binding ID to invalidate bindings for

◆ InvalidateExpiredObjects()

void FMovieSceneObjectCache::InvalidateExpiredObjects ( )

Invalidate any object bindings for objects that have been destroyed

◆ InvalidateIfValid()

void FMovieSceneObjectCache::InvalidateIfValid ( const FGuid InGuid)

Invalidate the object bindings for a specific object binding ID if they are not already invalidated

Parameters
InGuidThe object binding ID to invalidate bindings for

◆ IterateBoundObjects()

TArrayView< const TWeakObjectPtr<> > FMovieSceneObjectCache::IterateBoundObjects ( const FGuid InBindingID) const

Find all objects that are bound to the specified binding ID

Note
Does not update bindings if they are out of date, or invalid
Parameters
InBindingIDThe object binding GUID for a spawnable or posessable in a UMovieScene
Returns
An iterable type of all objects bound to the specified ID.

◆ SetBindingActivation()

void FMovieSceneObjectCache::SetBindingActivation ( const FGuid InGuid,
bool  bActive 
)

◆ SetSequence() [1/2]

void FMovieSceneObjectCache::SetSequence ( UMovieSceneSequence InSequence,
FMovieSceneSequenceIDRef  InSequenceID,
IMovieScenePlayer Player 
)

◆ SetSequence() [2/2]

void FMovieSceneObjectCache::SetSequence ( UMovieSceneSequence InSequence,
FMovieSceneSequenceIDRef  InSequenceID,
TSharedRef< const FSharedPlaybackState SharedPlaybackState 
)

Set the sequence that this cache applies to

Parameters
InSequenceThe sequence that this cache applies to
InSequenceIDThe ID of the sequence within the root sequence

Member Data Documentation

◆ OnBindingInvalidated

FOnBindingInvalidated FMovieSceneObjectCache::OnBindingInvalidated

Invoked when a binding is either explicitly invalidated (as a result of a spawnable being spawned, or a binding override being added) or when a previously resolved binding becomes invalid


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