Open 3D Engine AzToolsFramework API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AzToolsFramework::Prefab::InstanceUpdateExecutor Class Reference

Inherits AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.

Public Member Functions

 AZ_RTTI (InstanceUpdateExecutor, "{E21DB0D4-0478-4DA9-9011-31BC96F55837}", InstanceUpdateExecutorInterface)
 
 AZ_CLASS_ALLOCATOR (InstanceUpdateExecutor, AZ::SystemAllocator)
 
 InstanceUpdateExecutor (int instanceCountToUpdateInBatch=0)
 
void AddInstanceToQueue (InstanceOptionalReference instance) override
 
void AddTemplateInstancesToQueue (TemplateId instanceTemplateId, InstanceOptionalConstReference instanceToExclude=AZStd::nullopt) override
 
bool UpdateTemplateInstancesInQueue () override
 
void RemoveTemplateInstanceFromQueue (Instance *instance) override
 
void QueueRootPrefabLoadedNotificationForNextPropagation () override
 
void SetShouldPauseInstancePropagation (bool shouldPausePropagation) override
 
void RegisterInstanceUpdateExecutorInterface ()
 
void UnregisterInstanceUpdateExecutorInterface ()
 
- Public Member Functions inherited from AzToolsFramework::Prefab::InstanceUpdateExecutorInterface
 AZ_RTTI (InstanceUpdateExecutorInterface, "{26BB4ACF-6EA5-4668-84E7-AB75B90BA449}")
 
virtual void AddInstanceToQueue (InstanceOptionalReference instance)=0
 
virtual void AddTemplateInstancesToQueue (TemplateId instanceTemplateId, InstanceOptionalConstReference instanceToExclude=AZStd::nullopt)=0
 
virtual bool UpdateTemplateInstancesInQueue ()=0
 
virtual void RemoveTemplateInstanceFromQueue (Instance *instance)=0
 
virtual void QueueRootPrefabLoadedNotificationForNextPropagation ()=0
 
virtual void SetShouldPauseInstancePropagation (bool shouldPausePropagation)=0
 

Member Function Documentation

◆ AddInstanceToQueue()

void AzToolsFramework::Prefab::InstanceUpdateExecutor::AddInstanceToQueue ( InstanceOptionalReference  instance)
overridevirtual

Adds an instance into queue for updating it later.

Parameters
instanceThe instance to be added to queue.

Implements AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.

◆ AddTemplateInstancesToQueue()

void AzToolsFramework::Prefab::InstanceUpdateExecutor::AddTemplateInstancesToQueue ( TemplateId  instanceTemplateId,
InstanceOptionalConstReference  instanceToExclude = AZStd::nullopt 
)
overridevirtual

Adds all instances of template with given id into queue for updating them later.

Parameters
instanceTemplateIdThe template id used to retrieve all instances.
instanceToExcludeThe instance to be excluded. It is nullopt by default.

Implements AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.

◆ QueueRootPrefabLoadedNotificationForNextPropagation()

void AzToolsFramework::Prefab::InstanceUpdateExecutor::QueueRootPrefabLoadedNotificationForNextPropagation ( )
overridevirtual

Sets the flag that tells whether root prefab instance is loaded to false. A notification OnRootPrefabInstanceLoaded will fire during the propagation if root prefab instance is loaded for the first time after this function is called.

Implements AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.

◆ RemoveTemplateInstanceFromQueue()

void AzToolsFramework::Prefab::InstanceUpdateExecutor::RemoveTemplateInstanceFromQueue ( Instance instance)
overridevirtual

Removes an instance from the waiting queue.

Parameters
instanceThe instance to be removed from queue.

Implements AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.

◆ SetShouldPauseInstancePropagation()

void AzToolsFramework::Prefab::InstanceUpdateExecutor::SetShouldPauseInstancePropagation ( bool  shouldPausePropagation)
overridevirtual

Sets whether to pause instance propagation or not. When making property changes in the entity editor, pausing propagation during editing will prevent the user from losing control of the properties they are editing.

Parameters
shouldPausePropagationFlag that decides whether to pause propagation.

Implements AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.

◆ UpdateTemplateInstancesInQueue()

bool AzToolsFramework::Prefab::InstanceUpdateExecutor::UpdateTemplateInstancesInQueue ( )
overridevirtual

Updates instances in the waiting queue.

Returns
bool on whether the operation succeeds.

Implements AzToolsFramework::Prefab::InstanceUpdateExecutorInterface.


The documentation for this class was generated from the following file: