UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CollectionSelectionFacade.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
5#include "Containers/Array.h"
7
9{
10
41 {
42 CHAOS_API void InitUnboundedGroup(FName GroupName, FName DependencyGroup);
43 CHAOS_API void InitWeightedUnboundedGroup(FName GroupName, FName DependencyGroup);
44 CHAOS_API void InitBoundedGroup(FName GroupName, FName DependencyGroup, FName BoneDependencyGroup);
45 CHAOS_API void InitWeightedBoundedGroup(FName GroupName, FName DependencyGroup, FName BoneDependencyGroup);
46
47 public:
48
49 // groups
54
55 // Attributes
59
66
72
74 bool IsConst() const { return Collection==nullptr; }
75
79 CHAOS_API FSelectionKey AddSelection(const TArray<int32>& Indices, FName DependencyGroup);
80
84 CHAOS_API FSelectionKey AddSelection(const TArray<int32>& Indices, const TArray<float>& Weights, FName DependencyGroup);
85
89 CHAOS_API FSelectionKey AddSelection(const int32 BoneIndex, const TArray<int32>& Indices, FName DependencyGroup, FName BoneDependencyGroup = FName(""));
90
94 CHAOS_API FSelectionKey AddSelection(const int32 BoneIndex, const TArray<int32>& Indices, const TArray<float>& Weights, FName DependencyGroup, FName BoneDependencyGroup = FName(""));
95
101 CHAOS_API void GetSelection(const FSelectionKey& Key, TArray<int32>& Indices) const;
102
110 CHAOS_API void GetSelection(const FSelectionKey& Key, TArray<int32>& Indices, TArray<float>& Weights) const;
111
118 CHAOS_API void GetSelection(const FSelectionKey& Key, int32& BoneIndex, TArray<int32>& Indices) const;
119
127 CHAOS_API void GetSelection(const FSelectionKey& Key, int32& BoneIndex, TArray<int32>& Indices, TArray<float>& Weights) const;
128
129 private:
130
131 // const collection will be a null pointer,
132 // while non-const will be valid.
133 const FManagedArrayCollection& ConstCollection;
134 FManagedArrayCollection* Collection = nullptr;
135 };
136
137}
@ INDEX_NONE
Definition CoreMiscDefines.h:150
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition NameTypes.h:617
Definition CollectionSelectionFacade.h:41
static CHAOS_API const FName BoneIndexAttribute
Definition CollectionSelectionFacade.h:58
static CHAOS_API const FName UnboundGroup
Definition CollectionSelectionFacade.h:50
static CHAOS_API const FName IndexAttribute
Definition CollectionSelectionFacade.h:56
bool IsConst() const
Definition CollectionSelectionFacade.h:74
static CHAOS_API const FName WeightedUnboundGroup
Definition CollectionSelectionFacade.h:51
CHAOS_API void GetSelection(const FSelectionKey &Key, TArray< int32 > &Indices) const
Definition CollectionSelectionFacade.cpp:149
static CHAOS_API const FName WeightAttribute
Definition CollectionSelectionFacade.h:57
static CHAOS_API const FName BoundGroup
Definition CollectionSelectionFacade.h:52
CHAOS_API FSelectionKey AddSelection(const TArray< int32 > &Indices, FName DependencyGroup)
Definition CollectionSelectionFacade.cpp:94
static CHAOS_API const FName WeightedBoundGroup
Definition CollectionSelectionFacade.h:53
Definition Array.h:670
Definition CollectionBoundsFacade.cpp:13
U16 Index
Definition radfft.cpp:71
Definition ManagedArrayCollection.h:56
Definition CollectionSelectionFacade.h:60
FSelectionKey(int32 InIndex=INDEX_NONE, FName InGroupName="")
Definition CollectionSelectionFacade.h:61
FName GroupName
Definition CollectionSelectionFacade.h:64
int32 Index
Definition CollectionSelectionFacade.h:63