#include <SliceBus.h>
Inherits AZ::ComponentBus.
Public Member Functions | |
AZ_RTTI (SliceEntityHierarchyInterface, "{E5D09F26-217F-4182-8B1D-BB08E4859F12}") | |
virtual | ~SliceEntityHierarchyInterface () |
virtual EntityId | GetSliceEntityParentId () |
virtual AZStd::vector< AZ::EntityId > | GetSliceEntityChildren () |
Public Member Functions inherited from AZ::ComponentBus | |
virtual | ~ComponentBus ()=default |
Static Public Attributes | |
static const EBusHandlerPolicy | HandlerPolicy = EBusHandlerPolicy::Single |
Static Public Attributes inherited from AZ::ComponentBus | |
static const EBusAddressPolicy | AddressPolicy = EBusAddressPolicy::ById |
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 |
Additional Inherited Members | |
Public Types inherited from AZ::ComponentBus | |
typedef EntityId | BusIdType |
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 > > |
Protected Member Functions inherited from AZ::EBusTraits | |
~EBusTraits ()=default | |
Interface for AZ::SliceEntityHierarchyRequestBus, which is an EBus that provides hierarchical entity information for use in slice tools.
This is necessary because different types of entities can have different ways of implementing who their parent or children are - for example, normal world entities use the TransformComponent for tracking parent/child relationships, while UI entities use UiElementComponent (which is separate from the 2D transform component for UI entities). For different entity types, the component keeping parent/child hierarchy information should implement the AZ::SliceEntityHierarchyRequestBus so things like Slice Save widget and SliceTransactions work.
Hierarchy information is used for internal logic like "if I'm adding an entity to a slice, its parent also needs to be added/already in the slice".
|
inlinevirtual |
Destroys the instance of the class.
|
inlinevirtual |
Returns the entity IDs of the entity's immediate children.
|
inlinevirtual |
Returns the entity ID of the entity's parent.