Navigation
API > API/Runtime > API/Runtime/Chaos
Provides an API to read and manipulate hierarchy in a managed array collection
| Name | FCollectionHierarchyFacade |
| Type | class |
| Header File | /Engine/Source/Runtime/Experimental/Chaos/Public/GeometryCollection/Facades/CollectionHierarchyFacade.h |
| Include Path | #include "GeometryCollection/Facades/CollectionHierarchyFacade.h" |
Syntax
class FCollectionHierarchyFacade
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FCollectionHierarchyFacade
(
const FManagedArrayCollection& InCollection |
GeometryCollection/Facades/CollectionHierarchyFacade.h | ||
FCollectionHierarchyFacade
(
FManagedArrayCollection& InCollection |
GeometryCollection/Facades/CollectionHierarchyFacade.h |
Enums
Public
| Name | Remarks |
|---|---|
| EPersistencePolicy |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ChildrenAttribute | TManagedArrayAccessor< TSet< int32 > > | GeometryCollection/Facades/CollectionHierarchyFacade.h | ||
| LevelAttribute | TManagedArrayAccessor< int32 > | GeometryCollection/Facades/CollectionHierarchyFacade.h | ||
| ParentAttribute | TManagedArrayAccessor< int32 > | GeometryCollection/Facades/CollectionHierarchyFacade.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
TArray< int32 > ComputeTransformIndicesInBreadthFirstOrder() |
Compute transform indices in a breadth first order ( root to leaves ) | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
TArray< int32 > ComputeTransformIndicesInDepthFirstOrder() |
Compute transform indices in a depth first order | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
void DefineSchema() |
Create the facade attributes. | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
void EnumerateChildTransforms
(
int32 TransformIndex, |
Enumerate transforms at or under TransformIndex where ShouldProcess returns true, stopping recursion and calling ProcessTransformFunc on such transforms. | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
const TSet< int32 > * FindChildren
(
int32 TransformIndex |
Get set of children from a transform index, or nullptr if not available | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
void GenerateBreadthFirstOrderIndicesAttribute() |
Generate a non serialize array that stores the indices of the transforms in a breath first order | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
void GenerateLevelAttribute() |
Update level attribute for all elements (and create it if it is missing ) @Param PersistencePolicy whether to make the attribute persistent or keep the existing state | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
const TArray< int32 > & GetBreadthFirstOrderIndicesFromAttribute() |
Get the breadth first ordered transform indices from the stored attribute if any may return empty array if the attribute does not exists | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
TArray< int32 > GetChildrenAsArray
(
int32 TransformIndex |
Get direct children from a specific transform index. Assumes parent attribute is valid. | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
int32 GetInitialLevel
(
int32 TransformIndex |
Get initial level of a specific transform index If the attribute is missing return INDEX_NONE | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
int32 GetParent
(
int32 TransformIndex |
Get parent of a specific transform index | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
int32 GetRootIndex() |
Get the root index | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
TArray< int32 > GetRootIndices () |
Get the root indicies | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
TArray< int32 > GetTransformArrayInDepthFirstOrder() |
Get transform indices in a depth first order | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
bool HasLevelAttribute() |
Whether the level attribute is available | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
bool IsConst() |
Is this facade const access | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
bool IsLevelAttributePersistent() |
Whether the level attribute is persistent | GeometryCollection/Facades/CollectionHierarchyFacade.h | |
bool IsValid() |
Valid if parent and children arrays are available | GeometryCollection/Facades/CollectionHierarchyFacade.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static TArray< int32 > GetRootIndices
(
const TManagedArrayAccessor< int32 >& ParentAttribute |
Get the root indicies | GeometryCollection/Facades/CollectionHierarchyFacade.h |