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

#include <MovieScenePlaybackCapabilities.h>

+ Inheritance diagram for UE::MovieScene::FPlaybackCapabilities:

Public Member Functions

 FPlaybackCapabilities ()=default
 
 FPlaybackCapabilities (const FPlaybackCapabilities &)=delete
 
FPlaybackCapabilitiesoperator= (const FPlaybackCapabilities &)=delete
 
MOVIESCENE_API FPlaybackCapabilities (FPlaybackCapabilities &&)
 
MOVIESCENE_API FPlaybackCapabilitiesoperator= (FPlaybackCapabilities &&)
 
MOVIESCENE_API ~FPlaybackCapabilities ()
 
template<typename T >
bool HasCapability () const
 
template<typename T >
T * FindCapability () const
 
template<typename T >
T & GetCapabilityChecked () const
 
template<typename T , typename ... ArgTypes>
T & AddCapability (ArgTypes &&... InArgs)
 
template<typename T , typename U , typename ... ArgTypes>
T & AddCapability (const TPlaybackCapabilityID< U > CapabilityID, ArgTypes &&... InArgs)
 
template<typename T >
T & AddCapabilityRaw (T *InPointer)
 
template<typename T >
T & AddCapabilityShared (TSharedRef< T > InSharedRef)
 
template<typename T , typename ... ArgTypes>
T & OverwriteCapability (ArgTypes &&... InArgs)
 
template<typename T >
T & OverwriteCapabilityRaw (T *InPointer)
 
template<typename T >
T & OverwriteCapabilityShared (TSharedRef< T > InSharedRef)
 
void OnSubInstanceCreated (TSharedRef< const FSharedPlaybackState > Owner, const FInstanceHandle InstanceHandle)
 
void InvalidateCachedData (UMovieSceneEntitySystemLinker *Linker)
 

Additional Inherited Members

- Protected Member Functions inherited from UE::MovieScene::FPlaybackCapabilitiesImpl
 FPlaybackCapabilitiesImpl ()=default
 
 FPlaybackCapabilitiesImpl (const FPlaybackCapabilitiesImpl &)=delete
 
FPlaybackCapabilitiesImploperator= (const FPlaybackCapabilitiesImpl &)=delete
 
 FPlaybackCapabilitiesImpl (FPlaybackCapabilitiesImpl &&)=delete
 
FPlaybackCapabilitiesImploperator= (FPlaybackCapabilitiesImpl &&)=delete
 
bool HasCapability (uint32 CapabilityBit) const
 
FPlaybackCapabilityPtr FindCapability (uint32 CapabilityBit) const
 
FPlaybackCapabilityPtr GetCapabilityChecked (uint32 CapabilityBit) const
 
template<typename StorageType , typename CapabilityType , typename ... ArgTypes>
FPlaybackCapabilityPtr AddCapability (uint32 CapabilityBit, ArgTypes &&... InArgs)
 
template<typename StorageType , typename CapabilityType , typename ... ArgTypes>
bool OverwriteCapability (uint32 CapabilityBit, ArgTypes &&... InArgs)
 
const FPlaybackCapabilityHeaderGetHeader (uint8 Index) const
 
FPlaybackCapabilityHeaderGetHeader (uint8 Index)
 
TArrayView< const FPlaybackCapabilityHeaderGetHeaders () const
 
int32 GetCapabilityIndex (uint32 CapabilityBit) const
 
- Protected Attributes inherited from UE::MovieScene::FPlaybackCapabilitiesImpl
uint8Memory = nullptr
 
uint16 Alignment = 0u
 
uint16 Capacity = 0u
 
uint8 Num = 0u
 
uint32 AllCapabilities = 0u
 
TArray< FPlaybackCapabilityHelpersHelpers
 

Detailed Description

Actual playback capabilities container.

Constructor & Destructor Documentation

◆ FPlaybackCapabilities() [1/3]

UE::MovieScene::FPlaybackCapabilities::FPlaybackCapabilities ( )
default

◆ FPlaybackCapabilities() [2/3]

UE::MovieScene::FPlaybackCapabilities::FPlaybackCapabilities ( const FPlaybackCapabilities )
delete

◆ FPlaybackCapabilities() [3/3]

UE::MovieScene::FPlaybackCapabilities::FPlaybackCapabilities ( FPlaybackCapabilities &&  RHS)

◆ ~FPlaybackCapabilities()

UE::MovieScene::FPlaybackCapabilities::~FPlaybackCapabilities ( )

Member Function Documentation

◆ AddCapability() [1/2]

template<typename T , typename ... ArgTypes>
T & UE::MovieScene::FPlaybackCapabilities::AddCapability ( ArgTypes &&...  InArgs)
inline

Adds the specified capability to the container, using the supplied arguments to construct it. The capability object will be stored inline and owned by this container. It will be destroyed when the container itself is destroyed. If the template parameter is a sub-class of the playback capability class, that sub-class will be created and stored inline.

◆ AddCapability() [2/2]

template<typename T , typename U , typename ... ArgTypes>
T & UE::MovieScene::FPlaybackCapabilities::AddCapability ( const TPlaybackCapabilityID< U >  CapabilityID,
ArgTypes &&...  InArgs 
)
inline

As per AsCapability, but with an explicit capability ID. This is useful when the first template parameter doesn't have a single static member called ID providing the capability ID.

◆ AddCapabilityRaw()

template<typename T >
T & UE::MovieScene::FPlaybackCapabilities::AddCapabilityRaw ( T *  InPointer)
inline

Adds the specified capability to the container, as a simple raw pointer Ownership of the capability object being pointed to is the caller's responsability. This container will only store a raw pointer.

◆ AddCapabilityShared()

template<typename T >
T & UE::MovieScene::FPlaybackCapabilities::AddCapabilityShared ( TSharedRef< T >  InSharedRef)
inline

Adds the specified capability to the container, as a shared pointer Ownership of the capability object being pointed to respects classic shared pointer semantics. This container only maintains one such shared pointer until the container is destroyed.

◆ FindCapability()

template<typename T >
T * UE::MovieScene::FPlaybackCapabilities::FindCapability ( ) const
inline

Finds the specified capability within the container, if present

◆ GetCapabilityChecked()

template<typename T >
T & UE::MovieScene::FPlaybackCapabilities::GetCapabilityChecked ( ) const
inline

Returns the specified capability within the container, asserts if not found

◆ HasCapability()

template<typename T >
bool UE::MovieScene::FPlaybackCapabilities::HasCapability ( ) const
inline

Checks whether this container has the given capability

◆ InvalidateCachedData()

void UE::MovieScene::FPlaybackCapabilities::InvalidateCachedData ( UMovieSceneEntitySystemLinker Linker)

Calls InvalidateCacheData on any capability that implements the IPlaybackCapability interface.

◆ OnSubInstanceCreated()

void UE::MovieScene::FPlaybackCapabilities::OnSubInstanceCreated ( TSharedRef< const FSharedPlaybackState Owner,
const FInstanceHandle  InstanceHandle 
)

Calls OnSubInstanceCreated on any capability that implements the IPlaybackCapability interface.

◆ operator=() [1/2]

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

◆ operator=() [2/2]

FPlaybackCapabilities & UE::MovieScene::FPlaybackCapabilities::operator= ( FPlaybackCapabilities &&  RHS)

◆ OverwriteCapability()

template<typename T , typename ... ArgTypes>
T & UE::MovieScene::FPlaybackCapabilities::OverwriteCapability ( ArgTypes &&...  InArgs)
inline

Overwrites an existing capability, stored inline and owned by this container. The previous storage mode of the capability must also be inline. If the template parameter is a sub-class of the playback capability, the previously stored playback capability must not only have been stored inline, but must have been of the same sub-class (or a sub-class with the exact same size and alignment).

◆ OverwriteCapabilityRaw()

template<typename T >
T & UE::MovieScene::FPlaybackCapabilities::OverwriteCapabilityRaw ( T *  InPointer)
inline

Overwrites an existing capability, stored as a raw pointer on the container. The previous storage mode of the capability must also be a raw pointer.

◆ OverwriteCapabilityShared()

template<typename T >
T & UE::MovieScene::FPlaybackCapabilities::OverwriteCapabilityShared ( TSharedRef< T >  InSharedRef)
inline

Overwrites an existing capability, stored as a shared pointer on the container. The previous storage mode of the capability must also be a shared pointer.


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