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

#include <MovieSceneEvaluationField.h>

Public Member Functions

MOVIESCENE_API FMovieSceneEntityComponentFieldBuilder (FMovieSceneEntityComponentField *InField)
 
MOVIESCENE_API ~FMovieSceneEntityComponentFieldBuilder ()
 
MOVIESCENE_API FMovieSceneEvaluationFieldSharedEntityMetaDataGetSharedMetaData ()
 
MOVIESCENE_API int32 GetSharedMetaDataIndex () const
 
MOVIESCENE_API int32 AddMetaData (const FMovieSceneEvaluationFieldEntityMetaData &InMetaData)
 
MOVIESCENE_API int32 FindOrAddEntity (UObject *EntityOwner, uint32 EntityID=0)
 
MOVIESCENE_API void AddPersistentEntity (const TRange< FFrameNumber > &Range, UObject *EntityOwner, uint32 EntityID=0, int32 InMetaDataIndex=INDEX_NONE)
 
MOVIESCENE_API void AddPersistentEntity (const TRange< FFrameNumber > &Range, int32 LocalIndex, int32 InMetaDataIndex=INDEX_NONE)
 
MOVIESCENE_API void AddOneShotEntity (const TRange< FFrameNumber > &OneShotRange, UObject *EntityOwner, uint32 EntityID=0, int32 InMetaDataIndex=INDEX_NONE)
 
MOVIESCENE_API void AddOneShotEntity (const TRange< FFrameNumber > &OneShotRange, int32 LocalIndex, int32 InMetaDataIndex=INDEX_NONE)
 

Static Public Attributes

static constexpr uint32 InvalidEntityID = ~0u
 

Detailed Description

Builder class used for populating an FMovieSceneEntityComponentField with data. Ensures that null or redundant entities or meta-data are not added to the field, and that all indices are valid and correct.

Constructor & Destructor Documentation

◆ FMovieSceneEntityComponentFieldBuilder()

FMovieSceneEntityComponentFieldBuilder::FMovieSceneEntityComponentFieldBuilder ( FMovieSceneEntityComponentField InField)

Construction from a field to populate

◆ ~FMovieSceneEntityComponentFieldBuilder()

FMovieSceneEntityComponentFieldBuilder::~FMovieSceneEntityComponentFieldBuilder ( )

Destructor that cleans up redundant data if necessary

Member Function Documentation

◆ AddMetaData()

int32 FMovieSceneEntityComponentFieldBuilder::AddMetaData ( const FMovieSceneEvaluationFieldEntityMetaData InMetaData)

Add meta-data to this tree returning its index within this builder

Parameters
InMetaDataThe meta-data to add.
Returns
A unique index for this meta-data within this builder, or INDEX_NONE if the meta-data is redundant

◆ AddOneShotEntity() [1/2]

void FMovieSceneEntityComponentFieldBuilder::AddOneShotEntity ( const TRange< FFrameNumber > &  OneShotRange,
int32  LocalIndex,
int32  InMetaDataIndex = INDEX_NONE 
)

Add a one-shot entity to the field for a given range

Note
: One-shot entities are only ever alive for a single evaluation, regardless of the range within the field. This makes them ideal for events or triggers.
Parameters
RangeThe range within which this entity should be alive
LocalIndexThe index to the entity retrieved from FindOrAddEntity.
MetaDataIndex(Optional) Meta-data to use for this entitiy within this range. See AddMetaData.

◆ AddOneShotEntity() [2/2]

void FMovieSceneEntityComponentFieldBuilder::AddOneShotEntity ( const TRange< FFrameNumber > &  OneShotRange,
UObject EntityOwner,
uint32  EntityID = 0,
int32  InMetaDataIndex = INDEX_NONE 
)

Add a one-shot entity to the field for a given range. Equivalent to AddOneShotEntity(Range, FindOrAddEntity(EntityOwner, EntityID)).

Note
: One-shot entities are only ever alive for a single evaluation, regardless of the range within the field. This makes them ideal for events or triggers.
Parameters
RangeThe range within which this entity should be alive
EntityOwnerThe owner that produces the entity at runtime. Must implement the IMovieSceneEntityProvider interface
EntityID(Optional) An identifier used to identify the entity inside IMovieSceneEntityProvider::ImportEntityImpl. Could be an index within an array or a set of flags.
MetaDataIndex(Optional) Meta-data to use for this entitiy within this range. See AddMetaData.

◆ AddPersistentEntity() [1/2]

void FMovieSceneEntityComponentFieldBuilder::AddPersistentEntity ( const TRange< FFrameNumber > &  Range,
int32  LocalIndex,
int32  InMetaDataIndex = INDEX_NONE 
)

Add a persistent entity to the field for a given range

Note
: Persistent entities remain alive for the entire duration of their applicable ranges.
Parameters
RangeThe range within which this entity should be alive
LocalIndexThe index to the entity retrieved from FindOrAddEntity.
MetaDataIndex(Optional) Meta-data to use for this entitiy within this range. See AddMetaData.

◆ AddPersistentEntity() [2/2]

void FMovieSceneEntityComponentFieldBuilder::AddPersistentEntity ( const TRange< FFrameNumber > &  Range,
UObject EntityOwner,
uint32  EntityID = 0,
int32  InMetaDataIndex = INDEX_NONE 
)

Add a persistent entity to the field for a given range. Equivalent to AddPersistentEntity(Range, FindOrAddEntity(EntityOwner, EntityID)).

Note
: Persistent entities remain alive for the entire duration of their applicable ranges.
Parameters
RangeThe range within which this entity should be alive
EntityOwnerThe owner that produces the entity at runtime. Must implement the IMovieSceneEntityProvider interface
EntityID(Optional) An identifier used to identify the entity inside IMovieSceneEntityProvider::ImportEntityImpl. Could be an index within an array or a set of flags.
MetaDataIndex(Optional) Meta-data to use for this entitiy within this range. See AddMetaData.

◆ FindOrAddEntity()

int32 FMovieSceneEntityComponentFieldBuilder::FindOrAddEntity ( UObject EntityOwner,
uint32  EntityID = 0 
)

Retrieve an index for the entity that is identified by the specified owner and ID

Parameters
EntityOwnerThe owner that produces the entity at runtime. Must implement the IMovieSceneEntityProvider interface
EntityID(Optional) An identifier used to identify the entity inside IMovieSceneEntityProvider::ImportEntityImpl. Could be an index within an array or a set of flags.
Returns
An index into this builder used to uniquely identify this entity.

◆ GetSharedMetaData()

FMovieSceneEvaluationFieldSharedEntityMetaData & FMovieSceneEntityComponentFieldBuilder::GetSharedMetaData ( )

Access the shared meta-data for all the entities created by this builder.

◆ GetSharedMetaDataIndex()

int32 FMovieSceneEntityComponentFieldBuilder::GetSharedMetaDataIndex ( ) const

Access the index of the shared meta-data of this builder.

Member Data Documentation

◆ InvalidEntityID

constexpr uint32 FMovieSceneEntityComponentFieldBuilder::InvalidEntityID = ~0u
staticconstexpr

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