Open 3D Engine AzCore 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.
AZ::SliceAssetSerializationNotifications Class Reference

#include <SliceBus.h>

Inherits AZ::EBusTraits.

Public Types

using MutexType = AZStd::recursive_mutex
 
- Public Types inherited from AZ::EBusTraits
using AllocatorType = AZ::Internal::EBusEnvironmentAllocator
 
using BusIdType = NullBusId
 
using BusIdOrderCompare = NullBusIdCompare
 
using BusHandlerOrderCompare = BusHandlerCompareDefault
 
using MutexType = NullMutex
 
using EventQueueMutexType = NullMutex
 
template<class Bus >
using ConnectionPolicy = EBusConnectionPolicy< Bus >
 
template<class Context >
using StoragePolicy = EBusEnvironmentStoragePolicy< Context >
 
template<class Bus >
using RouterPolicy = EBusRouterPolicy< Bus >
 
using EventProcessingPolicy = EBusEventProcessingPolicy
 
template<typename DispatchMutex , bool IsLocklessDispatch>
using DispatchLockGuard = AZStd::conditional_t< IsLocklessDispatch, AZ::Internal::NullLockGuard< DispatchMutex >, AZStd::scoped_lock< DispatchMutex > >
 
template<typename ContextMutex >
using ConnectLockGuard = AZStd::conditional_t< AZStd::is_same_v< ContextMutex, AZ::NullMutex >, AZ::Internal::NullLockGuard< ContextMutex >, AZStd::unique_lock< ContextMutex > >
 
template<typename ContextMutex >
using BindLockGuard = AZStd::scoped_lock< ContextMutex >
 
template<typename ContextMutex >
using CallstackTrackerLockGuard = AZStd::conditional_t< AZStd::is_same_v< ContextMutex, AZ::NullMutex >, AZ::Internal::NullLockGuard< ContextMutex >, AZStd::unique_lock< ContextMutex > >
 

Public Member Functions

virtual void OnWriteDataToSliceAssetEnd (AZ::SliceComponent &)
 
virtual void OnSliceEntitiesLoaded (const AZStd::vector< AZ::Entity * > &)
 
virtual void OnBeginSlicePush (const AZ::Data::AssetId &)
 Fired at the very beginning of a slice push transaction.
 
virtual void OnEndSlicePush (const AZ::Data::AssetId &, const AZ::Data::AssetId &)
 Fired at the very end of a slice push transaction.
 

Additional Inherited Members

- Static Public Attributes inherited from AZ::EBusTraits
static constexpr EBusHandlerPolicy HandlerPolicy = EBusHandlerPolicy::Multiple
 
static constexpr EBusAddressPolicy AddressPolicy = EBusAddressPolicy::Single
 
static constexpr bool EnableEventQueue = false
 
static constexpr bool EventQueueingActiveByDefault = true
 
static constexpr bool EnableQueuedReferences = false
 
static constexpr bool LocklessDispatch = false
 
- Protected Member Functions inherited from AZ::EBusTraits
 ~EBusTraits ()=default
 

Detailed Description

Dispatches events at key points of SliceAsset serialization.

Member Function Documentation

◆ OnSliceEntitiesLoaded()

virtual void AZ::SliceAssetSerializationNotifications::OnSliceEntitiesLoaded ( const AZStd::vector< AZ::Entity * > &  )
inlinevirtual

Called each time a slice loads entities from serialized data. This event can be used to "fix up" loaded entities before they are used anywhere else. Note that this event may be sent multiple times from a single slice:

  • for entities that are "new" to a slice, this event is sent as soon as the slice is loaded.
  • for "instanced" entities, this event is sent while the slice is being instantiated.

◆ OnWriteDataToSliceAssetEnd()

virtual void AZ::SliceAssetSerializationNotifications::OnWriteDataToSliceAssetEnd ( AZ::SliceComponent )
inlinevirtual

Called after a slice is loaded from serialized data. This event can be used to "fix up" a loaded slice before it is used. If you wish to "fix up" entities, use OnSliceEntitiesLoaded instead.


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