UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::MovieScene::FComponentRegistry Struct Reference

#include <MovieSceneComponentRegistry.h>

Public Member Functions

 FComponentRegistry ()=default
 
 FComponentRegistry (const FComponentRegistry &)=delete
 
FComponentRegistryoperator= (const FComponentRegistry &)=delete
 
 FComponentRegistry (FComponentRegistry &&)=delete
 
FComponentRegistryoperator= (FComponentRegistry &&)=delete
 
MOVIESCENE_API FComponentTypeID NewTag (const TCHAR *const DebugName, EComponentTypeFlags Flags=EComponentTypeFlags::None)
 
template<typename T >
TComponentTypeID< T > NewComponentType (const TCHAR *const DebugName, const FNewComponentTypeParams &Params=FNewComponentTypeParams())
 
template<typename T >
TComponentTypeID< T > NewComponentTypeNoAddReferencedObjects (const TCHAR *const DebugName, const FNewComponentTypeParams &Params=FNewComponentTypeParams())
 
template<typename T >
void NewComponentType (TComponentTypeID< T > *Ref, const TCHAR *const DebugName, const FNewComponentTypeParams &Params=FNewComponentTypeParams())
 
template<typename T >
void NewComponentTypeNoAddReferencedObjects (TComponentTypeID< T > *Ref, const TCHAR *const DebugName, const FNewComponentTypeParams &Params=FNewComponentTypeParams())
 
template<typename PropertyTraits >
void NewPropertyType (TPropertyComponents< PropertyTraits > &OutComponents, const TCHAR *DebugName)
 
MOVIESCENE_API const FComponentTypeInfoGetComponentTypeChecked (FComponentTypeID ComponentTypeID) const
 
MOVIESCENE_API void DestroyComponentTypeSafe (FComponentTypeID ComponentTypeID)
 
MOVIESCENE_API void DestroyComponentUnsafeFast (FComponentTypeID ComponentTypeID)
 
const FComponentMaskGetDataComponentTypes () const
 
const FComponentMaskGetPreservationMask () const
 
const FComponentMaskGetMigrationMask () const
 
const FComponentMaskGetCopyAndMigrationMask () const
 

Public Attributes

FEntityFactories Factories
 

Constructor & Destructor Documentation

◆ FComponentRegistry() [1/3]

UE::MovieScene::FComponentRegistry::FComponentRegistry ( )
default

◆ FComponentRegistry() [2/3]

UE::MovieScene::FComponentRegistry::FComponentRegistry ( const FComponentRegistry )
delete

◆ FComponentRegistry() [3/3]

UE::MovieScene::FComponentRegistry::FComponentRegistry ( FComponentRegistry &&  )
delete

Member Function Documentation

◆ DestroyComponentTypeSafe()

MOVIESCENE_API void UE::MovieScene::FComponentRegistry::DestroyComponentTypeSafe ( FComponentTypeID  ComponentTypeID)

Destroy a component type by first removing it from all existing entities

Note
Will not invalidate any cached FComponentTypeID or TComponentTypeID structures
Parameters
ComponentTypeIDThe component type to destroy

◆ DestroyComponentUnsafeFast()

MOVIESCENE_API void UE::MovieScene::FComponentRegistry::DestroyComponentUnsafeFast ( FComponentTypeID  ComponentTypeID)

Destroy a component type that definitely does not exist on any entities or is cached elsewhere

Note
Will not invalidate any cached FComponentTypeID or TComponentTypeID structures
Parameters
ComponentTypeIDThe component type to destroy

◆ GetComponentTypeChecked()

const FComponentTypeInfo & UE::MovieScene::FComponentRegistry::GetComponentTypeChecked ( FComponentTypeID  ComponentTypeID) const

◆ GetCopyAndMigrationMask()

const FComponentMask & UE::MovieScene::FComponentRegistry::GetCopyAndMigrationMask ( ) const
inline

Retrive a mask of all components to be copied or migrated to outputs

◆ GetDataComponentTypes()

const FComponentMask & UE::MovieScene::FComponentRegistry::GetDataComponentTypes ( ) const
inline

Retrieve a mask of all data component types (ie all components that are not tags).

◆ GetMigrationMask()

const FComponentMask & UE::MovieScene::FComponentRegistry::GetMigrationMask ( ) const
inline

Retrieve a mask of all components that are to be migrated to outputs if there are multiple entities animating the same thing

◆ GetPreservationMask()

const FComponentMask & UE::MovieScene::FComponentRegistry::GetPreservationMask ( ) const
inline

Retrieve a mask of all components that are to be preserved

◆ NewComponentType() [1/2]

template<typename T >
TComponentTypeID< T > UE::MovieScene::FComponentRegistry::NewComponentType ( const TCHAR *const  DebugName,
const FNewComponentTypeParams Params = FNewComponentTypeParams() 
)

Define a new transient tag type using the specified information. Tags have 0 memory overhead.

Note
Transitory tag types must be unregistered when no longer required by calling DestroyComponentTypeSafe or Unsafe to prevent leaking component type IDs
Parameters
DebugNameA developer friendly name that accompanies this component type for debugging purposes
Params(Optional) Parameters for the type including component flags
Returns
A new component type identifier for the tag

◆ NewComponentType() [2/2]

template<typename T >
void UE::MovieScene::FComponentRegistry::NewComponentType ( TComponentTypeID< T > *  Ref,
const TCHAR *const  DebugName,
const FNewComponentTypeParams Params = FNewComponentTypeParams() 
)
inline

◆ NewComponentTypeNoAddReferencedObjects() [1/2]

template<typename T >
TComponentTypeID< T > UE::MovieScene::FComponentRegistry::NewComponentTypeNoAddReferencedObjects ( const TCHAR *const  DebugName,
const FNewComponentTypeParams Params = FNewComponentTypeParams() 
)

Same as NewComponentType but specifically does not expose the component type to the reference graph. Use with caution!

◆ NewComponentTypeNoAddReferencedObjects() [2/2]

template<typename T >
void UE::MovieScene::FComponentRegistry::NewComponentTypeNoAddReferencedObjects ( TComponentTypeID< T > *  Ref,
const TCHAR *const  DebugName,
const FNewComponentTypeParams Params = FNewComponentTypeParams() 
)
inline

◆ NewPropertyType()

template<typename PropertyTraits >
void UE::MovieScene::FComponentRegistry::NewPropertyType ( TPropertyComponents< PropertyTraits > &  OutComponents,
const TCHAR DebugName 
)
inline

◆ NewTag()

FComponentTypeID UE::MovieScene::FComponentRegistry::NewTag ( const TCHAR *const  DebugName,
EComponentTypeFlags  Flags = EComponentTypeFlags::None 
)

Define a new tag type using the specified information. Tags have 0 memory overhead.

Note
Transitory tag types must be unregistered when no longer required by calling DestroyComponentTypeSafe or Unsafe to prevent leaking component type IDs
Parameters
DebugNameA developer friendly name that accompanies this component type for debugging purposes
FlagsFlags relating to the new component type
Returns
A new component type identifier for the tag

◆ operator=() [1/2]

FComponentRegistry & UE::MovieScene::FComponentRegistry::operator= ( const FComponentRegistry )
delete

◆ operator=() [2/2]

FComponentRegistry & UE::MovieScene::FComponentRegistry::operator= ( FComponentRegistry &&  )
delete

Member Data Documentation

◆ Factories

FEntityFactories UE::MovieScene::FComponentRegistry::Factories

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