UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TMeshUnboundedAttributeArraySet< AttributeType > Class Template Referencefinal

#include <MeshAttributeArray.h>

+ Inheritance diagram for TMeshUnboundedAttributeArraySet< AttributeType >:

Public Member Functions

 TMeshUnboundedAttributeArraySet ()
 
 TMeshUnboundedAttributeArraySet (const int32 NumberOfChannels, const AttributeType &InDefaultValue, const EMeshAttributeFlags InFlags, const int32 InNumberOfElements)
 
virtual TUniquePtr< FMeshAttributeArraySetBaseClone () const override
 
virtual void Insert (const int32 Index) override
 
virtual void Remove (const int32 Index) override
 
virtual void Initialize (const int32 Count) override
 
virtual void SetNumElements (const int32 Count) override
 
virtual uint32 GetHash () const override
 
virtual void Serialize (FArchive &Ar) override
 
virtual void Remap (const TSparseArray< int32 > &IndexRemap) override
 
virtual int32 GetNumIndices () const override
 
virtual int32 GetNumChannels () const override
 
virtual void SetNumIndices (const int32 NumIndices) override
 
virtual void SetNumChannels (const int32 NumChannels) override
 
virtual void InsertIndex (const int32 Index) override
 
virtual void InsertChannel (const int32 Index) override
 
virtual void RemoveIndex (const int32 Index) override
 
virtual void RemoveChannel (const int32 Index) override
 
const TAttributeArrayContainer< AttributeType > & GetArrayForChannel (const int32 Index) const
 
TAttributeArrayContainer< AttributeType > & GetArrayForChannel (const int32 Index)
 
AttributeType GetDefaultValue () const
 
- Public Member Functions inherited from FMeshAttributeArraySetBase
 FMeshAttributeArraySetBase (const uint32 InType, const EMeshAttributeFlags InFlags, const int32 InNumberOfElements, const uint32 InExtent)
 
virtual ~FMeshAttributeArraySetBase ()=default
 
template<typename T >
bool HasType () const
 
uint32 GetType () const
 
uint32 GetExtent () const
 
EMeshAttributeFlags GetFlags () const
 
void SetFlags (const EMeshAttributeFlags InFlags)
 
int32 GetNumElements () const
 

Protected Attributes

TArray< TAttributeArrayContainer< AttributeType >, TInlineAllocator< 1 > > ArrayForChannels
 
AttributeType DefaultValue
 
- Protected Attributes inherited from FMeshAttributeArraySetBase
uint32 Type
 
uint32 Extent
 
int32 NumElements
 
EMeshAttributeFlags Flags
 

Friends

FArchiveoperator<< (FArchive &Ar, TMeshUnboundedAttributeArraySet &AttributeArraySet)
 

Detailed Description

template<typename AttributeType>
class TMeshUnboundedAttributeArraySet< AttributeType >

This is a type-specific attribute array, which is actually instanced in the attribute set.

Constructor & Destructor Documentation

◆ TMeshUnboundedAttributeArraySet() [1/2]

template<typename AttributeType >
TMeshUnboundedAttributeArraySet< AttributeType >::TMeshUnboundedAttributeArraySet ( )
inline

Constructors

◆ TMeshUnboundedAttributeArraySet() [2/2]

template<typename AttributeType >
TMeshUnboundedAttributeArraySet< AttributeType >::TMeshUnboundedAttributeArraySet ( const int32  NumberOfChannels,
const AttributeType &  InDefaultValue,
const EMeshAttributeFlags  InFlags,
const int32  InNumberOfElements 
)
inlineexplicit

Member Function Documentation

◆ Clone()

template<typename AttributeType >
virtual TUniquePtr< FMeshAttributeArraySetBase > TMeshUnboundedAttributeArraySet< AttributeType >::Clone ( ) const
inlineoverridevirtual

Creates a copy of itself and returns a TUniquePtr to it

Implements FMeshAttributeArraySetBase.

◆ GetArrayForChannel() [1/2]

template<typename AttributeType >
TAttributeArrayContainer< AttributeType > & TMeshUnboundedAttributeArraySet< AttributeType >::GetArrayForChannel ( const int32  Index)
inline

◆ GetArrayForChannel() [2/2]

template<typename AttributeType >
const TAttributeArrayContainer< AttributeType > & TMeshUnboundedAttributeArraySet< AttributeType >::GetArrayForChannel ( const int32  Index) const
inline

Return the TMeshAttributeArrayBase corresponding to the given attribute channel

◆ GetDefaultValue()

template<typename AttributeType >
AttributeType TMeshUnboundedAttributeArraySet< AttributeType >::GetDefaultValue ( ) const
inline

Return default value for this attribute type

◆ GetHash()

template<typename AttributeType >
virtual uint32 TMeshUnboundedAttributeArraySet< AttributeType >::GetHash ( ) const
inlineoverridevirtual

◆ GetNumChannels()

template<typename AttributeType >
virtual int32 TMeshUnboundedAttributeArraySet< AttributeType >::GetNumChannels ( ) const
inlineoverridevirtual

Return number of channels this attribute has

Implements FMeshAttributeArraySetBase.

◆ GetNumIndices()

template<typename AttributeType >
virtual int32 TMeshUnboundedAttributeArraySet< AttributeType >::GetNumIndices ( ) const
inlineoverridevirtual

◆ Initialize()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::Initialize ( const int32  Count)
inlineoverridevirtual

Sets the number of elements to the exact number provided, and initializes them to the default value

Implements FMeshAttributeArraySetBase.

◆ Insert()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::Insert ( const int32  Index)
inlineoverridevirtual

Insert the element at the given index

Implements FMeshAttributeArraySetBase.

◆ InsertChannel()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::InsertChannel ( const int32  Index)
inlineoverridevirtual

Insert a new attribute channel

Implements FMeshAttributeArraySetBase.

◆ InsertIndex()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::InsertIndex ( const int32  Index)
inlineoverridevirtual

◆ Remap()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::Remap ( const TSparseArray< int32 > &  IndexRemap)
inlineoverridevirtual

Performs an element index remap according to the passed array

Implements FMeshAttributeArraySetBase.

◆ Remove()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::Remove ( const int32  Index)
inlineoverridevirtual

Remove the element at the given index, replacing it with a default value

Implements FMeshAttributeArraySetBase.

◆ RemoveChannel()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::RemoveChannel ( const int32  Index)
inlineoverridevirtual

Remove the channel at the given index

Implements FMeshAttributeArraySetBase.

◆ RemoveIndex()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::RemoveIndex ( const int32  Index)
inlineoverridevirtual

◆ Serialize()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::Serialize ( FArchive Ar)
inlineoverridevirtual

Polymorphic serialization

Implements FMeshAttributeArraySetBase.

◆ SetNumChannels()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::SetNumChannels ( const int32  NumChannels)
inlineoverridevirtual

Sets number of channels this attribute has

Implements FMeshAttributeArraySetBase.

◆ SetNumElements()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::SetNumElements ( const int32  Count)
inlineoverridevirtual

Sets the number of elements to the exact number provided, preserving existing elements if the number is bigger

Implements FMeshAttributeArraySetBase.

◆ SetNumIndices()

template<typename AttributeType >
virtual void TMeshUnboundedAttributeArraySet< AttributeType >::SetNumIndices ( const int32  NumIndices)
inlineoverridevirtual

Friends And Related Symbol Documentation

◆ operator<<

template<typename AttributeType >
FArchive & operator<< ( FArchive Ar,
TMeshUnboundedAttributeArraySet< AttributeType > &  AttributeArraySet 
)
friend

Serializer

Member Data Documentation

◆ ArrayForChannels

template<typename AttributeType >
TArray<TAttributeArrayContainer<AttributeType>, TInlineAllocator<1> > TMeshUnboundedAttributeArraySet< AttributeType >::ArrayForChannels
protected

An array of UnboundedArrays, one per channel

◆ DefaultValue

template<typename AttributeType >
AttributeType TMeshUnboundedAttributeArraySet< AttributeType >::DefaultValue
protected

The default value for an attribute of this name


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