#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 () |
![]() | |
virtual | ~ComponentBus ()=default |
Static Public Attributes | |
static const EBusHandlerPolicy | HandlerPolicy = EBusHandlerPolicy::Single |
![]() | |
static const EBusAddressPolicy | AddressPolicy = EBusAddressPolicy::ById |
![]() | |
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 |
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.
Returns the entity ID of the entity's parent.