UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Geometry::TDynamicAttributeSetBase< ParentType > Class Template Reference

#include <DynamicAttribute.h>

+ Inheritance diagram for UE::Geometry::TDynamicAttributeSetBase< ParentType >:

Public Member Functions

virtual ~TDynamicAttributeSetBase ()
 
int NumRegisteredAttributes () const
 
TDynamicAttributeBase< ParentType > * GetRegisteredAttribute (int Idx) const
 
virtual void OnNewTriangle (int TriangleID, bool bInserted)
 
virtual void OnNewVertex (int VertexID, bool bInserted)
 
virtual void OnRemoveTriangle (int TriangleID)
 
virtual void OnRemoveVertex (int VertexID)
 
virtual void OnReverseTriOrientation (int TriangleID)
 
virtual bool CheckValidity (bool bAllowNonmanifold, EValidityCheckFailMode FailMode) const
 
virtual void OnSplitEdge (const DynamicMeshInfo::FEdgeSplitInfo &SplitInfo)
 
virtual void OnFlipEdge (const DynamicMeshInfo::FEdgeFlipInfo &FlipInfo)
 
virtual void OnCollapseEdge (const DynamicMeshInfo::FEdgeCollapseInfo &CollapseInfo)
 
virtual void OnPokeTriangle (const DynamicMeshInfo::FPokeTriangleInfo &PokeInfo)
 
virtual void OnMergeEdges (const DynamicMeshInfo::FMergeEdgesInfo &MergeInfo)
 
virtual void OnMergeVertices (const DynamicMeshInfo::FMergeVerticesInfo &MergeInfo)
 
virtual void OnSplitVertex (const DynamicMeshInfo::FVertexSplitInfo &SplitInfo, const TArrayView< const int > &TrianglesToUpdate)
 

Protected Member Functions

void RegisterExternalAttribute (TDynamicAttributeBase< ParentType > *Attribute)
 
void UnregisterExternalAttribute (TDynamicAttributeBase< ParentType > *Attribute)
 
void ResetRegisteredAttributes ()
 

Protected Attributes

TArray< TDynamicAttributeBase< ParentType > * > RegisteredAttributes
 

Detailed Description

template<typename ParentType>
class UE::Geometry::TDynamicAttributeSetBase< ParentType >

Generic base class for managing a set of registered attributes that must all be kept up to date

Constructor & Destructor Documentation

◆ ~TDynamicAttributeSetBase()

template<typename ParentType >
virtual UE::Geometry::TDynamicAttributeSetBase< ParentType >::~TDynamicAttributeSetBase ( )
inlinevirtual

Member Function Documentation

◆ CheckValidity()

template<typename ParentType >
virtual bool UE::Geometry::TDynamicAttributeSetBase< ParentType >::CheckValidity ( bool  bAllowNonmanifold,
EValidityCheckFailMode  FailMode 
) const
inlinevirtual

Check validity of attributes

Parameters
bAllowNonmanifoldAccept non-manifold topology as valid. Note that this should almost always be true for attributes; non-manifold overlays are generally valid.
FailModeDesired behavior if mesh is found invalid

Reimplemented in UE::Geometry::FDynamicMeshAttributeSet.

◆ GetRegisteredAttribute()

template<typename ParentType >
TDynamicAttributeBase< ParentType > * UE::Geometry::TDynamicAttributeSetBase< ParentType >::GetRegisteredAttribute ( int  Idx) const
inline

◆ NumRegisteredAttributes()

template<typename ParentType >
int UE::Geometry::TDynamicAttributeSetBase< ParentType >::NumRegisteredAttributes ( ) const
inline

◆ OnCollapseEdge()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnCollapseEdge ( const DynamicMeshInfo::FEdgeCollapseInfo CollapseInfo)
inlinevirtual

◆ OnFlipEdge()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnFlipEdge ( const DynamicMeshInfo::FEdgeFlipInfo FlipInfo)
inlinevirtual

◆ OnMergeEdges()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnMergeEdges ( const DynamicMeshInfo::FMergeEdgesInfo MergeInfo)
inlinevirtual

◆ OnMergeVertices()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnMergeVertices ( const DynamicMeshInfo::FMergeVerticesInfo MergeInfo)
inlinevirtual

◆ OnNewTriangle()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnNewTriangle ( int  TriangleID,
bool  bInserted 
)
inlinevirtual

◆ OnNewVertex()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnNewVertex ( int  VertexID,
bool  bInserted 
)
inlinevirtual

◆ OnPokeTriangle()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnPokeTriangle ( const DynamicMeshInfo::FPokeTriangleInfo PokeInfo)
inlinevirtual

◆ OnRemoveTriangle()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnRemoveTriangle ( int  TriangleID)
inlinevirtual

◆ OnRemoveVertex()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnRemoveVertex ( int  VertexID)
inlinevirtual

◆ OnReverseTriOrientation()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnReverseTriOrientation ( int  TriangleID)
inlinevirtual

◆ OnSplitEdge()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnSplitEdge ( const DynamicMeshInfo::FEdgeSplitInfo SplitInfo)
inlinevirtual

◆ OnSplitVertex()

template<typename ParentType >
virtual void UE::Geometry::TDynamicAttributeSetBase< ParentType >::OnSplitVertex ( const DynamicMeshInfo::FVertexSplitInfo SplitInfo,
const TArrayView< const int > &  TrianglesToUpdate 
)
inlinevirtual

◆ RegisterExternalAttribute()

template<typename ParentType >
void UE::Geometry::TDynamicAttributeSetBase< ParentType >::RegisterExternalAttribute ( TDynamicAttributeBase< ParentType > *  Attribute)
inlineprotected

Stores the given attribute pointer in the attribute register, so that it will be updated with mesh changes, but does not take ownership of the attribute memory.

◆ ResetRegisteredAttributes()

template<typename ParentType >
void UE::Geometry::TDynamicAttributeSetBase< ParentType >::ResetRegisteredAttributes ( )
inlineprotected

◆ UnregisterExternalAttribute()

template<typename ParentType >
void UE::Geometry::TDynamicAttributeSetBase< ParentType >::UnregisterExternalAttribute ( TDynamicAttributeBase< ParentType > *  Attribute)
inlineprotected

Member Data Documentation

◆ RegisteredAttributes

template<typename ParentType >
TArray<TDynamicAttributeBase<ParentType>*> UE::Geometry::TDynamicAttributeSetBase< ParentType >::RegisteredAttributes
protected

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