description: Sets the initial/expected number of references per key

code: void SetInitialNumReferences ( int InInitialSize )


description: Configures the indexer not to use chunks. This is desirable if there are very few keys with a lot of references, e.g. polygon groups to polygons

module: MeshDescription

code: void SetUnchunked()


description: Suspend indexing until the next rebuild

code: void Suspend()


description: Copying not allowed as they reference elements of a MeshDescription of which they are normally a part.

code: FMeshElementIndexer ( const [FMeshElementIndexer](API\Runtime\MeshDescription\FMeshElementIndexer) & )


description: Moving OK.

code: FMeshElementIndexer ( [FMeshElementIndexer](API\Runtime\MeshDescription\FMeshElementIndexer) && )


code: FMeshElementIndexer ( const [FMeshElementChannels](API\Runtime\MeshDescription\FMeshElementChannels) * Key, const [FMeshElementChannels](API\Runtime\MeshDescription\FMeshElementChannels) * Referencer, [FName](API\Runtime\Core\UObject\FName) AttributeName, int32 ReferencerChannelIndex )


className: FMeshElementIndexer

description: Some element relationships don't lend themselves to chunking, for example polygon groups to triangles. In this case, there are generally few polygon groups compared to many triangles. Chunking can be turned off for such indexers, resulting in a more simple array representation which can be arbitrarily grown without requiring elements to be inserted.

code: class FMeshElementIndexer


description: Transparent access through theTUniquePtr

code: const [FMeshElementChannels](API\Runtime\MeshDescription\FMeshElementChannels) * Get() const


code: const [FMeshElementChannels](API\Runtime\MeshDescription\FMeshElementChannels) * operator->() const


description: Copy assignment

code: [FMeshElementTypeWrapper](API\Runtime\MeshDescription\FMeshElementTypeWrapper) & operator= ( const [FMeshElementTypeWrapper](API\Runtime\MeshDescription\FMeshElementTypeWrapper) & Other )


description: Default move assignment

code: [FMeshElementTypeWrapper](API\Runtime\MeshDescription\FMeshElementTypeWrapper) & operator= ( [FMeshElementTypeWrapper](API\Runtime\MeshDescription\FMeshElementTypeWrapper) && )


code: const [FMeshElementChannels](API\Runtime\MeshDescription\FMeshElementChannels) & operator*() const


description: Default constructor - construct a MeshElementType, optionally with more than one channel

code: FMeshElementTypeWrapper ( const int32 NumberOfChannels )


description: Copy constructor - make a deep copy of the MeshElementType through theTUniquePtr

code: FMeshElementTypeWrapper ( const [FMeshElementTypeWrapper](API\Runtime\MeshDescription\FMeshElementTypeWrapper) & Other )


description: Default move constructor

code: FMeshElementTypeWrapper ( [FMeshElementTypeWrapper](API\Runtime\MeshDescription\FMeshElementTypeWrapper) && )


className: FMeshElementTypeWrapper

description: This is a wrapper for aFMeshElementChannels. It holds aTUniquePtrpointing to the actualFMeshElementChannels, so that its address is constant and can be cached.

code: class FMeshElementTypeWrapper


description: Define dispatch function.

code: namespace ForEachConstImpl { template<typename ElementIDType, typename ForEachFunc, uint32 I> static void ForEachConstImpl::Dispatch ( [FName](API\Runtime\Core\UObject\FName) Name, ForEachFunc Fn, const [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) * Attributes ) }


description: Build ForEach jump table at compile time, a separate instantiation of Dispatch for each attribute type.

code: namespace ForEachConstImpl { template<typename ElementIDType, typename ForEachFunc, uint32... Is> static constexpr [JumpTableType](API\Runtime\MeshDescription\JumpTableType_1)< ElementIDType, ForEachFunc > ForEachConstImpl::MakeJumpTable ( [TIntegerSequence](API\Runtime\Core\Delegates\TIntegerSequence)< uint32, Is... > ) }


description: Define dispatch function.

code: namespace ForEachImpl { template<typename ElementIDType, typename ForEachFunc, uint32 I> static void ForEachImpl::Dispatch ( [FName](API\Runtime\Core\UObject\FName) Name, ForEachFunc Fn, [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) * Attributes ) }


code: namespace ForEachImpl { template<typename ElementIDType, typename ForEachFunc, uint32... Is> static constexpr [JumpTableType](API\Runtime\MeshDescription\JumpTableType_2)< ElementIDType, ForEachFunc > ForEachImpl::MakeJumpTable ( [TIntegerSequence](API\Runtime\Core\Delegates\TIntegerSequence)< uint32, Is... > ) }


className: Invalid

description: Invalid section ID

code: static const [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) Invalid;


code: FPolygonGroupID ( const [FElementID](API\Runtime\MeshDescription\FElementID) InitElementID )


code: FPolygonGroupID ( const int32 InitIDValue )


className: FPolygonGroupID

code: struct FPolygonGroupID : public [FElementID](API\Runtime\MeshDescription\FElementID)


description: Invalid polygon ID

code: static const [FPolygonID](API\Runtime\MeshDescription\FPolygonID) Invalid;


code: FPolygonID ( const [FElementID](API\Runtime\MeshDescription\FElementID) InitElementID )


code: FPolygonID ( const int32 InitIDValue )


className: FPolygonID

code: struct FPolygonID : public [FElementID](API\Runtime\MeshDescription\FElementID)


description: Invalid edge ID

code: static const [FTriangleID](API\Runtime\MeshDescription\FTriangleID) Invalid;


code: FTriangleID ( const [FElementID](API\Runtime\MeshDescription\FElementID) InitElementID )


code: FTriangleID ( const int32 InitIDValue )


className: FTriangleID

code: struct FTriangleID : public [FElementID](API\Runtime\MeshDescription\FElementID)


code: FUVID ( const [FElementID](API\Runtime\MeshDescription\FElementID) InitElementID )


code: FUVID ( const int32 InitIDValue )


className: FUVID

code: struct FUVID : public [FElementID](API\Runtime\MeshDescription\FElementID)


description: Invalid vertex ID

code: static const [FVertexID](API\Runtime\MeshDescription\FVertexID) Invalid;


code: FVertexID ( const [FElementID](API\Runtime\MeshDescription\FElementID) InitElementID )


code: FVertexID ( const int32 InitIDValue )


className: FVertexID

code: struct FVertexID : public [FElementID](API\Runtime\MeshDescription\FElementID)


description: Invalid rendering vertex ID

code: static const [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) Invalid;


code: FVertexInstanceID ( const [FElementID](API\Runtime\MeshDescription\FElementID) InitElementID )


code: FVertexInstanceID ( const int32 InitIDValue )


className: FVertexInstanceID

code: struct FVertexInstanceID : public [FElementID](API\Runtime\MeshDescription\FElementID)


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IMeshDescriptionModule](API\Runtime\MeshDescription\IMeshDescriptionModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


className: IMeshDescriptionModule

code: class IMeshDescriptionModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: JumpTableType

description: Declare type of jump table used to dispatch functions.

code: typedef [TJumpTable](API\Runtime\MeshDescription\TJumpTable)< [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) >(uint32), [TTupleArity](API\Runtime\Core\Templates\TTupleArity)< AttributeTypes >::Value > JumpTableType


code: typedef [TJumpTable](API\Runtime\MeshDescription\TJumpTable)< void([FName](API\Runtime\Core\UObject\FName), ForEachFunc, const [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) *), [TTupleArity](API\Runtime\Core\Templates\TTupleArity)< AttributeTypes >::Value > JumpTableType


code: typedef [TJumpTable](API\Runtime\MeshDescription\TJumpTable)< void([FName](API\Runtime\Core\UObject\FName), ForEachFunc, [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) *), [TTupleArity](API\Runtime\Core\Templates\TTupleArity)< AttributeTypes >::Value > JumpTableType


description: Adds the given value to the end of the array attribute, reserving extra space if necessary.

code: int32 Add ( const AttributeType & Value )


code: int32 AddUnique ( const AttributeType & Value )


className: ArrayType

code: typedef typename [TCopyQualifiersFromTo](API\Runtime\Core\Templates\TCopyQualifiersFromTo)< AttributeType, [TAttributeArrayContainer](API\Runtime\MeshDescription\TAttributeArrayContainer)< std::remove_cv_t< AttributeType >>>::Type ArrayType


description: Determines whether the array attribute contains a particular value

code: bool Contains ( const AttributeType & Value ) const


description: DO NOT USE DIRECTLY STL-like iterators to enable range-based for loop support.

code: AttributeType * begin() const


description:
Checks if this array contains element for which the predicate is true.
True if found. False otherwise.

code: template<typename Predicate> bool ContainsByPredicate ( Predicate Pred ) const


code: AttributeType * end() const


description: Finds the given value in the array attribute and returns its index

code: int32 Find ( const AttributeType & Value ) const


description:
Finds an element which matches a predicate functor.
Pointer to the first element for which the predicate returns true, or nullptr if none is found.

code: template<typename Predicate> AttributeType * FindByPredicate ( Predicate Pred ) const


description: Helper function for returning a typed pointer to the first array attribute entry.

code: AttributeType * GetData() const


description: Finds an item by predicate.Indexto the first matching element, or INDEX_NONE if none is found.

code: template<typename Predicate> int32 IndexOfByPredicate ( Predicate Pred ) const


description: Inserts an element into the given index in the array attribute

code: void Insert ( const AttributeType & Value, int32 StartIndex )


description: Inserts a number of default-constructed elements in the array attribute

code: void InsertDefaulted ( int32 StartIndex, int32 Count )


description:
Returns true if the array attribute is empty and contains no elements.
True if the array attribute is empty.

code: bool IsEmpty() const


description:
Returns n-th last element from the array attribute.
Reference to n-th last element from the array.

code: AttributeType & Last ( int32 IndexFromTheEnd ) const


description:
Tests if index is valid, i.e. than or equal to zero, and less than the number of elements in the array attribute.
True if index is valid. False otherwise.

code: bool IsValidIndex ( int32 ArrayAttributeIndex ) const


description:
Returns number of elements in the array attribute.
Number of elements in array attribute.

code: int32 Num() const


description:
Array bracket operator. Returns reference to array attribute element at given index.
Reference to indexed element.

code: AttributeType & operator[] ( int32 ArrayAttributeIndex ) const


code: int32 Remove ( const AttributeType & Value )


className: TArrayAttribute::operator TArrayView< AttributeType >

description: Implicitly coerce an array attribute to aTArrayView.

code: operator TArrayView< AttributeType >()


description: Removes all elements which match the predicate

code: template<typename Predicate> int32 RemoveAll ( Predicate Pred )


description: Reserves the number of elements in the array attribute.

code: void Reserve ( int32 Num )


description: Removes a number of elements from the array attribute

code: void RemoveAt ( int32 StartIndex, int32 Count )


description: Sets the number of elements in the array attribute.

code: void SetNum ( int32 Num )


description: Sorts the array assuming < operator is defined for the item type.

code: void Sort()


description: Sorts the array using the given predicate.

code: template<typename Predicate> void SortByPredicate ( Predicate Pred )


description: Stable sorts the array assuming < operator is defined for the item type.

code: void StableSort()


description: Return aTArrayViewrepresenting this array attribute.

code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > ToArrayView()


code: template<typename Predicate> void StableSortByPredicate ( Predicate Pred )


description: Construct a TArrayAttributefrom a TArrayAttribute.

code: template<typename T, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< std::is_same_v< T, const T >, int >::Type> TArrayAttribute ( [TArrayAttribute](API\Runtime\MeshDescription\TArrayAttribute)< std::remove_cv_t< T >> InValue )


code: TArrayAttribute ( ArrayType & InArray, int32 InIndex )


description: Sets the number of elements in the array attribute without initializing any new elements. It is the responsibility of the caller to do so after this function returns.

code: void SetNumUninitialized ( int32 Num )


className: TArrayAttribute

description: Proxy object which fields access to an unbounded array attribute container.

code: template<typename AttributeType> class TArrayAttribute


className: ChunkBits

code: static const int32 ChunkBits = 8;


className: ChunkSize

code: static const int32 ChunkSize = (1 << ChunkBits);


className: ChunkMask

code: static const int32 ChunkMask = ChunkSize - 1;


description: Gets the array attribute at the given index as aTArrayView

code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > Get ( int32 Index )


code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< const AttributeType > Get ( int32 Index ) const


code: AttributeType GetDefault() const


code: uint32 GetHash ( uint32 Crc ) const


description: Gets the element count of the array attribute at the given index

code: int32 GetElementCount ( int32 Index ) const


description: Gets the reserved element count of the array attribute at the given index

code: int32 GetReservedElementCount ( int32 Index ) const


description: Initializes the array to the given size with the default value

code: void Initialize ( const int32 ElementCount, const AttributeType & Default )


description: Expands the array if necessary so that the passed element index is valid. Newly created elements will be assigned the default value.

code: void Insert ( const int32 Index, const AttributeType & Default )


code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > InsertIntoElement ( int32 Index, int32 SubArrayIndex, int32 InsertCount )


description: Return size of container

code: int32 Num() const


description: Remaps elements according to the passed remapping table

code: void Remap ( const [TSparseArray](API\Runtime\Core\Containers\TSparseArray)< int32 > & IndexRemap, const AttributeType & Default )


code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > RemoveFromElement ( int32 Index, int32 SubArrayIndex, int32 Count )


description: Sets the attribute array at the given index to the givenTArrayView

code: void Set ( int32 Index, [TArrayView](API\Runtime\Core\Containers\TArrayView)< const AttributeType > Value )


description: Sets the number of elements, each element itself being a subarray of items of type AttributeType.

code: void SetNum ( const int32 ElementCount, const AttributeType & Default )


description: Sets the given attribute array element to have the given number of subarray elements.

code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > SetElementSize ( int32 Index, int32 Size, bool bSetCount, bool bSetDefault )


description: Fills the index with the default value

code: void SetToDefault ( const int32 Index, const AttributeType & Default )


code: TAttributeArrayContainer()


code: TAttributeArrayContainer ( const AttributeType & InDefaultValue )


description: Call the supplied function on each attribute. The prototype should be Func( const FName AttributeName, auto AttributesRef );

code: template<typename ForEachFunc> void ForEach ( ForEachFunc Func )


className: TAttributeArrayContainer

code: template<typename AttributeType> class TAttributeArrayContainer


description: Call the supplied function on each attribute. The prototype should be Func( const FName AttributeName, auto AttributesConstRef );

code: template<typename ForEachFunc> void ForEach ( ForEachFunc Func ) const


description: Call the supplied function on each attribute that matches the given type. The type can be given as either a plain type T,TArrayViewor TArrayAttribute. The prototype should be Func( const FName AttributeName, auto AttributesRef );

code: template<typename AttributeType, typename ForEachFunc> void ForEachByType ( ForEachFunc Func )


description: Call the supplied function on each attribute that matches the given type. The type can be given as either a plain type T,TArrayViewor TArrayAttribute. The prototype should be Func( const FName AttributeName, auto AttributesConstRef );

code: template<typename AttributeType, typename ForEachFunc> void ForEachByType ( ForEachFunc Func ) const


description: Get an attribute value for the given element ID. Note: it is generally preferable to get aTMeshAttributesRefand access elements through that, if you wish to access more than one.

code: template<typename T> T GetAttribute ( const ElementIDType ElementID, const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 AttributeChannel ) const


description: Returns the number of indices for the attribute with the given name

code: int32 GetAttributeChannelCount ( const [FName](API\Runtime\Core\UObject\FName) AttributeName ) const


description: Deprecated* Please useGetAttributeChannelCount()instead.

code: int32 GetAttributeIndexCount ( const [FName](API\Runtime\Core\UObject\FName) AttributeName ) const


code: template<typename AttributeType> int32 GetAttributeIndexCount ( const [FName](API\Runtime\Core\UObject\FName) AttributeName ) const


description: Note that the returned object is a value type which should be assigned and passed by value, not reference. It is valid for as long as thisTAttributesSetobject exists.

code: template<typename T> TMeshAttributesConstRef< ElementIDType, typename [TMeshAttributesRefType](API\Runtime\MeshDescription\TMeshAttributesRefType)< T >::ConstRefType > GetAttributesRef ( const [FName](API\Runtime\Core\UObject\FName) AttributeName ) const


description: Non-const version.

code: template<typename T> [TMeshAttributesRef](API\Runtime\MeshDescription\TMeshAttributesRef)< ElementIDType, typename [TMeshAttributesRefType](API\Runtime\MeshDescription\TMeshAttributesRefType)< T >::RefType > GetAttributesRef ( const [FName](API\Runtime\Core\UObject\FName) AttributeName )


description: Insert a new index for the attribute with the given name

code: void InsertAttributeChannel ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 Index )


description: Inserts a default-initialized value for all attributes of the given ID

code: void Insert ( const ElementIDType ElementID )


description: Deprecated* Please useInsertAttributeChannel()instead.

code: void InsertAttributeIndex ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 Index )


description: Deprecated* Please use untemplated InsertAttributeIndexCount() instead.

code: template<typename AttributeType> void InsertAttributeIndex ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 Index )


description: Removes all attributes with the given ID

code: void Remove ( const ElementIDType ElementID )


description: Deprecated* Please useRemoveAttributeChannel()instead.

code: void RemoveAttributeIndex ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 Index )


description: Remove an existing index from the attribute with the given name

code: void RemoveAttributeChannel ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 Index )


description: Set an attribute value for the given element ID. Note: it is generally preferable to get aTMeshAttributesRefand set multiple elements through that.

code: template<typename T> void SetAttribute ( const ElementIDType ElementID, const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 AttributeChannel, const T & AttributeValue )


description: Deprecated* Please use untemplated RemoveAttributeIndexCount() instead.

code: template<typename AttributeType> void RemoveAttributeIndex ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 Index )


description: Sets the number of indices for the attribute with the given name

code: void SetAttributeChannelCount ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 NumChannels )


description: Deprecated* Please useSetAttributeChannelCount()instead.

code: void SetAttributeIndexCount ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 NumChannels )


description: Deprecated* Please use untemplatedSetAttributeChannelCount()instead.

code: template<typename AttributeType> void SetAttributeIndexCount ( const [FName](API\Runtime\Core\UObject\FName) AttributeName, const int32 NumIndices )


className: Value

code: static const bool Value = true;


className: TAttributesSet

description: This is a version of the attributes set container which accesses elements by typesafe IDs. This prevents access of (for example) vertex instance attributes by vertex IDs.

code: template<typename ElementIDType> class TAttributesSet : public [FAttributesSetBase](API\Runtime\MeshDescription\FAttributesSetBase)


className: TIsBulkSerializable

description: TIsBulkSerializable< FName >

code: template<typename T> struct TIsBulkSerializable


code: static Value = false;


code: template<typename... T> constexpr TJumpTable ( T... Ts )


className: TIsBulkSerializable< FName >

code: template<> struct TIsBulkSerializable< FName >


className: TJumpTable

description: The approach taken here is to generate a jump table at compile time, one entry per possible attribute type. The function Dispatch(...) is the actual function which gets called. MakeJumpTable() is the constexpr function which creates a static jump table at compile time. Class which implements a function jump table to be automatically generated at compile time. This is used byTAttributesSetto provide O(1) dispatch by attribute type at runtime.

code: template<typename FnType, uint32 Size> struct TJumpTable

Fns

type: FnType *[Si...


code: const AttributeType * GetElementBase ( const int32 Index ) const


description: Return base of data

code: const AttributeType * GetData() const


code: AttributeType * GetElementBase ( const int32 Index )


code: uint32 GetHash ( uint32 Crc ) const


description: We have to manually implement this or else the default behavior will just hashFNameComparisonIndex and Number, which aren't deterministic

code: template<> uint32 GetHash ( uint32 Crc ) const


description: Initializes the array to the given size with the default value

code: void Initialize ( const int32 ElementCount, const AttributeType & Default )


description: Expands the array if necessary so that the passed element index is valid. Newly created elements will be assigned the default value.

code: void Insert ( const int32 Index, const AttributeType & Default )


description: Return size of container

code: int32 Num() const


description: Element accessors

code: const AttributeType & operator[] ( const int32 Index ) const


description: Deprecated* Please useGetElementBase()instead.

code: AttributeType & operator[] ( const int32 Index )


description: Remaps elements according to the passed remapping table

code: void Remap ( const [TSparseArray](API\Runtime\Core\Containers\TSparseArray)< int32 > & IndexRemap, const AttributeType & Default )


code: void SetNum ( const int32 ElementCount, const AttributeType & Default )


description: Fills the index with the default value

code: void SetToDefault ( const int32 Index, const AttributeType & Default )


code: TMeshAttributeArrayBase ( uint32 InExtent )


className: TMeshAttributeArrayBase

description: Note that the container may grow arbitrarily as new elements are inserted, but it will never be shrunk as elements are removed. The only operations that will shrink the container areInitialize()andRemap().

code: template<typename AttributeType> class TMeshAttributeArrayBase

Container

type: TArray< Attribu...

description: The actual container, represented by a regular array

Extent

description: Number of array elements in this attribute type


code: [TMeshAttributeArrayBase](API\Runtime\MeshDescription\TMeshAttributeArrayBase)< AttributeType > & GetArrayForChannel ( const int32 Index )


description: Return theTMeshAttributeArrayBasecorresponding to the given attribute channel

code: const [TMeshAttributeArrayBase](API\Runtime\MeshDescription\TMeshAttributeArrayBase)< AttributeType > & GetArrayForChannel ( const int32 Index ) const


description: Deprecated* Please useGetArrayForChannel().

code: const [TMeshAttributeArrayBase](API\Runtime\MeshDescription\TMeshAttributeArrayBase)< AttributeType > & GetArrayForIndex ( const int32 Index ) const


code: [TMeshAttributeArrayBase](API\Runtime\MeshDescription\TMeshAttributeArrayBase)< AttributeType > & GetArrayForIndex ( const int32 Index )


description: Creates a copy of itself and returns aTUniquePtrto it

code: virtual [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) > Clone() const


description: Return default value for this attribute type

code: AttributeType GetDefaultValue() const


code: virtual uint32 GetHash() const


description: Return number of channels this attribute has

code: virtual int32 GetNumChannels() const


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

code: virtual void Initialize ( const int32 Count )


description: Deprecated* Please useGetNumChannels().

code: virtual int32 GetNumIndices() const


description: Insert the element at the given index

code: virtual void Insert ( const int32 Index )


description: Insert a new attribute channel

code: virtual void InsertChannel ( const int32 Index )


description: Deprecated* Please useInsertChannel().

code: virtual void InsertIndex ( const int32 Index )


description: Performs an element index remap according to the passed array

code: virtual void Remap ( const [TSparseArray](API\Runtime\Core\Containers\TSparseArray)< int32 > & IndexRemap )


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

code: virtual void Remove ( const int32 Index )


description: Remove the channel at the given index

code: virtual void RemoveChannel ( const int32 Index )


description: Deprecated* Please useRemoveChannel().

code: virtual void RemoveIndex ( const int32 Index )


description: Polymorphic serialization

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Sets number of channels this attribute has

code: virtual void SetNumChannels ( const int32 NumChannels )


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

code: virtual void SetNumElements ( const int32 Count )


description: Deprecated* Please useSetNumChannels().

code: virtual void SetNumIndices ( const int32 NumIndices )


description: Constructors

code: TMeshAttributeArraySet ( const int32 Extent )


code: TMeshAttributeArraySet ( const int32 NumberOfChannels, const AttributeType & InDefaultValue, const EMeshAttributeFlags InFlags, const int32 InNumberOfElements, const uint32 Extent )


className: TMeshAttributeArraySet

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

code: template<typename AttributeType> class TMeshAttributeArraySet : public [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase)

ArrayForChannels

type: TArray<TMeshAt...

description: An array of MeshAttributeArrays, one per channel

DefaultValue

type: AttributeType

description: The default value for an attribute of this name


code: typedef typename [TCopyQualifiersFromTo](API\Runtime\Core\Templates\TCopyQualifiersFromTo)< AttributeType, [TMeshAttributeArraySet](API\Runtime\MeshDescription\TMeshAttributeArraySet)< std::remove_cv_t< AttributeType >>>::Type ArrayType


className: BaseArrayType

code: typedef typename [TCopyQualifiersFromTo](API\Runtime\Core\Templates\TCopyQualifiersFromTo)< AttributeType, [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) >::Type BaseArrayType


description: Copies the given attribute array and channel to this channel

code: void Copy ( [TMeshAttributesRef](API\Runtime\MeshDescription\TMeshAttributesRef)< ElementIDType, const AttributeType > Src, const int32 DestChannel, const int32 SrcChannel )


description: Get the element with the given ID and channel

code: template<typename T, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< [TIsDerivedFrom](API\Runtime\Core\Templates\TIsDerivedFrom)< T, [FElementID](API\Runtime\MeshDescription\FElementID) >::Value, int >::Type> AttributeType Get ( const ElementIDType ElementID, const int32 Channel ) const


code: AttributeType Get ( int32 ElementIndex, const int32 Channel ) const


code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > GetArrayView ( int32 ElementIndex, const int32 Channel ) const


code: AttributeType GetDefaultValue() const


description: Get the extent for this attribute type

code: uint32 GetExtent() const


description: Get the flags for this attribute array set

code: EMeshAttributeFlags GetFlags() const


description: Return number of indices this attribute has

code: int32 GetNumChannels() const


description: Get the number of elements in this attribute array

code: int32 GetNumElements() const


code: [TArrayView](API\Runtime\Core\Containers\TArrayView)< AttributeType > GetRawArray ( const int32 AttributeChannel ) const


description: Inserts an attribute channel

code: void InsertChannel ( const int32 Channel ) const


description: Deprecated* Please useInsertChannel().

code: void InsertIndex ( const int32 Index ) const


description: Deprecated* Please useGetNumChannels().

code: int32 GetNumIndices() const


description: Return whether the reference is valid or not

code: bool IsValid() const


description: Access elements from attribute channel 0

code: template<typename T, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< [TIsDerivedFrom](API\Runtime\Core\Templates\TIsDerivedFrom)< T, [FElementID](API\Runtime\MeshDescription\FElementID) >::Value, int >::Type> AttributeType & operator[] ( const ElementIDType ElementID ) const


code: AttributeType & operator[] ( int32 ElementIndex ) const


description: Removes an attribute channel

code: void RemoveChannel ( const int32 Channel ) const


description: Deprecated* Please useRemoveChannel().

code: void RemoveIndex ( const int32 Index ) const


description: Set the element with the given ID and index 0 to the provided value

code: template<typename T, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< [TIsDerivedFrom](API\Runtime\Core\Templates\TIsDerivedFrom)< T, [FElementID](API\Runtime\MeshDescription\FElementID) >::Value, int >::Type> void Set ( const ElementIDType ElementID, const AttributeType & Value ) const


code: void Set ( int32 ElementIndex, const AttributeType & Value ) const


description: Set the element with the given ID and channel to the provided value

code: template<typename T, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< [TIsDerivedFrom](API\Runtime\Core\Templates\TIsDerivedFrom)< T, [FElementID](API\Runtime\MeshDescription\FElementID) >::Value, int >::Type> void Set ( const ElementIDType ElementID, const int32 Channel, const AttributeType & Value ) const


code: void Set ( int32 ElementIndex, const int32 Channel, const AttributeType & Value ) const


code: void SetArrayView ( int32 ElementIndex, [TArrayView](API\Runtime\Core\Containers\TArrayView)< const AttributeType > Value ) const


code: void SetArrayView ( int32 ElementIndex, const int32 Channel, [TArrayView](API\Runtime\Core\Containers\TArrayView)< const AttributeType > Value ) const


code: void SetNumChannels ( const int32 NumChannels ) const


description: Deprecated* Please useSetNumChannels().

code: void SetNumIndices ( const int32 NumChannels ) const


description: Implicitly construct aTMeshAttributesReffrom a TMeshAttributesArray

code: template<typename IDType, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)<!std::is_same_v< IDType, int32 >, int >::Type> TMeshAttributesRef ( const [TMeshAttributesRef](API\Runtime\MeshDescription\TMeshAttributesRef)< int32, AttributeType > & InRef )


description: Implicitly construct a TMeshAttributesRef-to-const from a regular one

code: template<typename SrcAttributeType, typename DestAttributeType, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< std::is_const_v< DestAttributeType >, int >::Type, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)<!std::is_const_v< SrcAttributeType >, int >::Type> TMeshAttributesRef ( const [TMeshAttributesRef](API\Runtime\MeshDescription\TMeshAttributesRef)< ElementIDType, SrcAttributeType > & InRef )


description: Implicitly construct a TMeshAttributesRef-to-const from a TMeshAttributesArray

code: template<typename SrcAttributeType, typename DestAttributeType, typename IDType, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)<!std::is_same_v< IDType, int32 >, int >::Type, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)< std::is_const_v< DestAttributeType >, int >::Type, typename [TEnableIf](API\Runtime\Core\Templates\TEnableIf)<!std::is_const_v< SrcAttributeType >, int >::Type> TMeshAttributesRef ( const [TMeshAttributesRef](API\Runtime\MeshDescription\TMeshAttributesRef)< int32, SrcAttributeType > & InRef )


description: Constructor taking a pointer to aFMeshAttributeArraySetBase

code: TMeshAttributesRef ( [BaseArrayType](API\Runtime\MeshDescription\TMeshAttributesRef\BaseArrayType) * InArrayPtr, uint32 InExtent )


className: TMeshAttributesRef

description: This is the default implementation which handles simple attributes, i.e. those of a simple type T. There are partial specializations which handle compound attributes below, i.e. those accessed viaTArrayViewor TAttributeArray

code: template<typename ElementIDType, typename AttributeType> class TMeshAttributesRef


className: ConstRefType

code: typedef const T ConstRefType


className: MaxExpectedExtent

code: static const uint32 MaxExpectedExtent = 1;


className: NonConstRefType

code: typedef std::remove_cv_t< T > NonConstRefType


className: MinExpectedExtent

code: static const uint32 MinExpectedExtent = 1;


className: TMeshAttributesRefType

code: template<typename T> struct TMeshAttributesRefType : public [TMeshAttributesRefTypeBase< T >](API\Runtime\MeshDescription\TMeshAttributesRefTypeBase)


className: AttributeType

code: typedef T AttributeType


className: TMeshAttributesRefTypeBase

description: Each of these corresponds to a different type ofTMeshAttributesRefandTMeshAttributeArraySet.

code: template<typename T> struct TMeshAttributesRefTypeBase


className: Extent

code: static const uint32 Extent = 1;


className: TMeshAttributesRegisterType

description: TMeshAttributesRegisterType< T[]>TMeshAttributesRegisterType< T[N]>

code: template<typename T> struct TMeshAttributesRegisterType : public [TMeshAttributesRefType< T >](API\Runtime\MeshDescription\TMeshAttributesRefType)


className: TMeshAttributesRegisterType< T[]>

code: template<typename T> struct TMeshAttributesRegisterType< T[]> : public [TMeshAttributesRefType< TArrayAttribute< T > >](API\Runtime\MeshDescription\TMeshAttributesRefType_TArrayAtt-)


className: TMeshAttributesRegisterType< T[N]>

code: template<typename T, SIZE_T N> struct TMeshAttributesRegisterType< T[N]> : public [TMeshAttributesRefType< TArrayView< T > >](API\Runtime\MeshDescription\TMeshAttributesRefType_TArrayVie-)


description: Add a new element at the next available index, and return the new ID

code: ElementIDType Add()


description: Add the provided element at the next available index, and return the new ID

code: ElementIDType Add ( typename [TTypeTraits](API\Runtime\Core\Templates\TTypeTraits)< ElementType >::ConstInitType Element )


description: Add the provided element at the next available index, and return the ID

code: ElementIDType Add ( ElementType && Element )


description: Returns the index after the last valid element

code: int32 GetArraySize() const


description: Return iterable proxy object from container


description: Returns the first valid ID

code: ElementIDType GetFirstValidID() const


description: Inserts a new element with the given ID

code: ElementType & Insert ( const ElementIDType ID )


description: Inserts the provided element with the given ID

code: ElementType & Insert ( const ElementIDType ID, typename [TTypeTraits](API\Runtime\Core\Templates\TTypeTraits)< ElementType >::ConstInitType Element )


code: ElementType & Insert ( const ElementIDType ID, ElementType && Element )


description: Returns whether the given ID is valid or not

code: bool IsValid ( const ElementIDType ID ) const


description: Returns the number of elements in the container

code: int32 Num() const


description: Returns the element with the given ID

code: ElementType & operator[] ( const ElementIDType ID )


code: const ElementType & operator[] ( const ElementIDType ID ) const


description: Reserves space for the specified total number of elements

code: void Reserve ( const int32 Elements )


description: Removes the element with the given ID

code: void Remove ( const ElementIDType ID )


description: Resets the container, optionally reserving space for elements to be added

code: void Reset ( const int32 Elements )


code: TConstIterator begin&40;&41; const


code: TConstIterator end&40;&41; const


className: TConstIterator

description: operator++()

code: class TConstIterator


code: TConstIterator &40; typename TSparseArray< ElementType >::TConstIterator && It &41;


code: TElementIDs &40; const TSparseArray< ElementType > & InArray &41;


className: TMeshElementArray

description: We prefer to access elements of the container via strongly-typed IDs. This derived class imposes this type safety.

code: template<typename ElementType, typename ElementIDType> class TMeshElementArray : public [TMeshElementArrayBase< ElementType >](API\Runtime\MeshDescription\TMeshElementArrayBase)


className: TElementIDs

description:
This is a special type of iterator which returns successive IDs of valid elements, rather than the elements themselves. It is designed to be used with a range-for: for( const FVertexID VertexID : GetVertices().GetElementIDs() )
{
    DoSomethingWith( VertexID );
}

code: class TElementIDs


description: Compacts elements and returns a remapping table

code: void Compact ( [TSparseArray](API\Runtime\Core\Containers\TSparseArray)< int32 > & OutIndexRemap )


description: Remaps elements according to the passed remapping table

code: void Remap ( const [TSparseArray](API\Runtime\Core\Containers\TSparseArray)< int32 > & IndexRemap )


code: ElementIDType Add()


className: TMeshElementArrayBase

description: This defines the container used to hold mesh elements. Its important properties are that it acts as an associative container (i.e. an element can be obtained from a given index), and that insert/delete/find are cheap. The current implementation is as aTSparseArray, but we abstract it so that this can be changed later if required, e.g. aTMapmight be desirable if we wished to maintain unique indices for the lifetime of the container.

code: template<typename ElementType> class TMeshElementArrayBase

Container

type: TSparseArray< E...

description: The actual container, represented by a sparse array


description: Accessor for attributes

code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< ElementIDType > & GetAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< ElementIDType > & GetAttributes() const


description: Inserts a new element with the given index

code: void Insert ( const ElementIDType Index )


description: Returns the first valid ID

code: ElementIDType GetFirstValidID() const


code: bool IsValid ( const ElementIDType Index ) const


description: Removes the element with the given ID

code: void Remove ( const ElementIDType Index )


code: TConstIterator begin&40;&41; const


code: TConstIterator end&40;&41; const


code: TConstIterator &40; TConstSetBitIterator<> && It &41;


description: operator++()

code: class TConstIterator


code: TElementIDs &40; const TBitArray<> & InArray &41;


description:
This is a special type of iterator which returns successive IDs of valid elements, rather than the elements themselves. It is designed to be used with a range-for: for (const int32 VertexIndex : GetVertices().GetElementIDs())
{
    DoSomethingWith(VertexIndex);
}


className: TMeshElementContainer

description: Templated specialization for type-safety.

code: template<typename ElementIDType> class TMeshElementContainer : public [FMeshElementContainer](API\Runtime\MeshDescription\FMeshElementContainer)


description: Return theTMeshAttributeArrayBasecorresponding to the given attribute channel

code: const [TAttributeArrayContainer](API\Runtime\MeshDescription\TAttributeArrayContainer)< AttributeType > & GetArrayForChannel ( const int32 Index ) const


description: Creates a copy of itself and returns aTUniquePtrto it

code: virtual [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase) > Clone() const


code: [TAttributeArrayContainer](API\Runtime\MeshDescription\TAttributeArrayContainer)< AttributeType > & GetArrayForChannel ( const int32 Index )


description: Return default value for this attribute type

code: AttributeType GetDefaultValue() const


code: virtual uint32 GetHash() const


description: Return number of channels this attribute has

code: virtual int32 GetNumChannels() const


description: Deprecated* Please useGetNumChannels().

code: virtual int32 GetNumIndices() const


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

code: virtual void Initialize ( const int32 Count )


description: Insert the element at the given index

code: virtual void Insert ( const int32 Index )


description: Insert a new attribute channel

code: virtual void InsertChannel ( const int32 Index )


description: Deprecated* Please useInsertChannel().

code: virtual void InsertIndex ( const int32 Index )


description: Performs an element index remap according to the passed array

code: virtual void Remap ( const [TSparseArray](API\Runtime\Core\Containers\TSparseArray)< int32 > & IndexRemap )


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

code: virtual void Remove ( const int32 Index )


description: Deprecated* Please useRemoveChannel().

code: virtual void RemoveIndex ( const int32 Index )


description: Remove the channel at the given index

code: virtual void RemoveChannel ( const int32 Index )


description: Sets number of channels this attribute has

code: virtual void SetNumChannels ( const int32 NumChannels )


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

code: virtual void SetNumElements ( const int32 Count )


description: Polymorphic serialization

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Deprecated* Please useSetNumChannels().

code: virtual void SetNumIndices ( const int32 NumIndices )


description: Constructors

code: TMeshUnboundedAttributeArraySet()


code: TMeshUnboundedAttributeArraySet ( const int32 NumberOfChannels, const AttributeType & InDefaultValue, const EMeshAttributeFlags InFlags, const int32 InNumberOfElements )


className: TVariantFromTuple

description: Helper template which generates aTVariantof all supported attribute types.

code: template<typename [Tuple](API\Plugins\MLAdapter\EMLAdapterSpaceType)> struct TVariantFromTuple


description: Generates triangles and internal edges for the given polygon

code: void ComputePolygonTriangulation ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID )


description: Adds a new edge to the mesh and returns its ID

code: [FEdgeID](API\Runtime\MeshDescription\FEdgeID) CreateEdge ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID0, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID1 )


description: Adds a new edge to the mesh with the given ID

code: void CreateEdgeWithID ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID0, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID1 )


description: Adds a new polygon to the mesh and returns its ID. This will also make any missing edges, and all constituent triangles.

code: [FPolygonID](API\Runtime\MeshDescription\FPolygonID) CreatePolygon ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceIDs, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & NewEdgeIDs )


description: Adds a new polygon group to the mesh and returns its ID


description: Adds a new polygon group to the mesh with the given ID

code: void CreatePolygonGroupWithID ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID )


description: Adds a new polygon to the mesh with the given ID. This will also make any missing edges, and all constituent triangles.

code: void CreatePolygonWithID ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceIDs, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & NewEdgeIDs )


description: Adds a new triangle to the mesh and returns its ID. This will also make an encapsulating polygon, and any missing edges.

code: [FTriangleID](API\Runtime\MeshDescription\FTriangleID) CreateTriangle ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID, const [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceIDs, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & NewEdgeIDs )


description: Adds a new triangle to the mesh with the given ID. This will also make an encapsulating polygon, and any missing edges.

code: void CreateTriangleWithID ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID, const [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceIDs, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & NewEdgeIDs )


description: Adds a new vertex to the mesh and returns its ID


description: Adds a new vertex instance to the mesh and returns its ID

code: [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) CreateVertexInstance ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID )


description: Adds a new vertex to the mesh with the given ID

code: void CreateVertexWithID ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID )


className: TMeshUnboundedAttributeArraySet

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

code: template<typename AttributeType> class TMeshUnboundedAttributeArraySet : public [FMeshAttributeArraySetBase](API\Runtime\MeshDescription\FMeshAttributeArraySetBase)

ArrayForChannels

type: TArray<TAttrib...

description: An array of UnboundedArrays, one per channel

DefaultValue

description: The default value for an attribute of this name


description: Adds a new vertex instance to the mesh with the given ID

code: void CreateVertexInstanceWithID ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID )


description: Deletes an edge from a mesh

code: void DeleteEdge ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & OrphanedVertices )


description: Deletes a polygon from the mesh

code: void DeletePolygon ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & OrphanedEdges, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & OrphanedVertexInstances, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) > & OrphanedPolygonGroups )


description: Deletes a polygon group from the mesh

code: void DeletePolygonGroup ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID )


description: Deletes a triangle from the mesh

code: void DeleteTriangle ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & OrphanedEdges, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & OrphanedVertexInstances, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) > & OrphanedPolygonGroupsPtr )


description: Deletes a vertex from the mesh

code: void DeleteVertex ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID )


description: Deletes a vertex instance from a mesh

code: void DeleteVertexInstance ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & OrphanedVertices )


code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & EdgeAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & EdgeAttributes() const


code: const FEdgeArray & Edges() const


description: Empty the mesh description

code: void Empty()


description: Returns the polygons connected to this edge

code: void GetEdgeConnectedPolygons ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & OutConnectedPolygonIDs ) const


description: Returns reference to an array of triangle IDs connected to this edge

code: void GetEdgeConnectedTriangles ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, [TArray](API\Runtime\Core\Containers\TArray)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & OutConnectedTriangleIDs ) const


description: Returns the number of edges

code: int32 GetEdgeCount() const


description: Returns the vertex ID corresponding to one of the edge endpoints

code: [FVertexID](API\Runtime\MeshDescription\FVertexID) GetEdgeVertex ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, int32 VertexNumber ) const


description: Returns a pair of vertex IDs defining the edge

code: void GetEdgeVertices ( const [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & OutVertexIDs ) const


code: const [FMeshDescription](API\Runtime\MeshDescription\FMeshDescription) & GetMeshDescription() const


description: Get a reference to the actual mesh description


description: Returns the number of polygons connected to this edge

code: int32 GetNumEdgeConnectedPolygons ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID ) const


description: Returns the number of triangles connected to this edge

code: int32 GetNumEdgeConnectedTriangles ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID ) const


description: Returns the number of polygons in this polygon group

code: int32 GetNumPolygonGroupPolygons ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID ) const


description: Return the number of internal edges in this polygon

code: int32 GetNumPolygonInternalEdges ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID ) const


description: Return the number of triangles which comprise this polygon

code: int32 GetNumPolygonTriangles ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID ) const


description: Returns the number of vertices this polygon has

code: int32 GetNumPolygonVertices ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID ) const


description: Returns number of edges connected to this vertex

code: int32 GetNumVertexConnectedEdges ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


description: Returns the number of polygons connected to this vertex

code: int32 GetNumVertexConnectedPolygons ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


description: Returns number of triangles connected to this vertex

code: int32 GetNumVertexConnectedTriangles ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


description: Returns the number of triangles connected to this vertex instance

code: int32 GetNumVertexInstanceConnectedTriangles ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID ) const


description: Returns the number of polygons connected to this vertex instance.

code: int32 GetNumVertexInstanceConnectedPolygons ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID ) const


description: Returns number of vertex instances created from this vertex

code: int32 GetNumVertexVertexInstances ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


description: Populates the passed array with adjacent polygons

code: void GetPolygonAdjacentPolygons ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & OutPolygonIDs ) const


description: Returns the number of polygons

code: int32 GetPolygonCount() const


description: Returns the number of polygon groups

code: int32 GetPolygonGroupCount() const


description: Returns the polygons associated with the given polygon group

code: void GetPolygonGroupPolygons ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & OutPolygonIDs ) const


description: Populate the provided array with a list of edges which are internal to the polygon, i.e. those which separate constituent triangles.

code: void GetPolygonInternalEdges ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & OutEdgeIDs ) const


description: Returns the edges which form the polygon perimeter

code: void GetPolygonPerimeterEdges ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & OutEdgeIDs ) const


description: Return the polygon group associated with a polygon

code: [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) GetPolygonPolygonGroup ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID ) const


description: Return reference to an array of triangle IDs which comprise this polygon

code: void GetPolygonTriangles ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & OutTriangleIDs ) const


description: Returns the vertices which form the polygon perimeter

code: void GetPolygonVertices ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & OutVertexIDs ) const


code: virtual [FMeshAttributes](API\Runtime\MeshDescription\FMeshAttributes) & GetRequiredAttributes()


description: Returns reference to an array of VertexInstance IDs forming the perimeter of this polygon

code: void GetPolygonVertexInstances ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & OutVertexInstanceIDs ) const


code: virtual const [FMeshAttributes](API\Runtime\MeshDescription\FMeshAttributes) & GetRequiredAttributes() const


description: Returns the adjacent triangles to this triangle

code: void GetTriangleAdjacentTriangles ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [TArray](API\Runtime\Core\Containers\TArray)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & OutTriangleIDs ) const


description: Returns the number of triangles

code: int32 GetTriangleCount() const


description: Returns the edges which define this triangle

code: void GetTriangleEdges ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & OutEdgeIDs ) const


description: Get the polygon which contains this triangle

code: [FPolygonID](API\Runtime\MeshDescription\FPolygonID) GetTrianglePolygon ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID ) const


description: Get the polygon group which contains this triangle

code: [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) GetTrianglePolygonGroup ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID ) const


description: Get the specified vertex instance by index

code: [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) GetTriangleVertexInstance ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, int32 Index ) const


description: Get the vertex instances which define this triangle

code: void GetTriangleVertexInstances ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & OutVertexInstanceIDs ) const


description: Returns the vertices which define this triangle

code: void GetTriangleVertices ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & OutVertexIDs ) const


description: Returns reference to an array of Edge IDs connected to this vertex

code: void GetVertexConnectedEdges ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID, [TArray](API\Runtime\Core\Containers\TArray)< [FEdgeID](API\Runtime\MeshDescription\FEdgeID) > & OutEdgeIDs ) const


description: Returns the vertices adjacent to this vertex

code: void GetVertexAdjacentVertices ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & OutAdjacentVertexIDs ) const


description: Returns the polygons connected to this vertex

code: void GetVertexConnectedPolygons ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & OutConnectedPolygonIDs ) const


description: Returns the number of vertices

code: int32 GetVertexCount() const


description: Returns the triangles connected to this vertex

code: void GetVertexConnectedTriangles ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID, [TArray](API\Runtime\Core\Containers\TArray)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & OutConnectedTriangleIDs ) const


description: Returns reference to an array of Triangle IDs connected to this vertex instance

code: void GetVertexInstanceConnectedTriangles ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID, [TArray](API\Runtime\Core\Containers\TArray)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & OutConnectedTriangleIDs ) const


description: Returns the polygons connected to this vertex instance

code: void GetVertexInstanceConnectedPolygons ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID, [TArray](API\Runtime\Core\Containers\TArray)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & OutConnectedPolygonIDs ) const


description: Return the vertex instance which corresponds to the given vertex on the given triangle, or INDEX_NONE

code: [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) GetVertexInstanceForTriangleVertex ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


description: Return the vertex instance which corresponds to the given vertex on the given polygon, or INDEX_NONE

code: [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) GetVertexInstanceForPolygonVertex ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


description: Returns the number of vertex instances

code: int32 GetVertexInstanceCount() const


description: Returns the edge ID defined by the two given vertex instance IDs, if there is one; otherwise INDEX_NONE

code: [FEdgeID](API\Runtime\MeshDescription\FEdgeID) GetVertexInstancePairEdge ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID0, [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID1 ) const


description: Returns the vertex ID associated with the given vertex instance

code: [FVertexID](API\Runtime\MeshDescription\FVertexID) GetVertexInstanceVertex ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID ) const


description: Returns the edge ID defined by the two given vertex IDs, if there is one; otherwise INDEX_NONE

code: [FEdgeID](API\Runtime\MeshDescription\FEdgeID) GetVertexPairEdge ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID0, [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID1 ) const


description: Accessors for cached vertex position array

code: TVertexAttributesRef< FVector3f > GetVertexPositions()


description: Gets a vertex position

code: FVector GetVertexPosition ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


code: TVertexAttributesConstRef< FVector3f > GetVertexPositions() const


description: Returns reference to an array of VertexInstance IDs instanced from this vertex

code: void GetVertexVertexInstances ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID, [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & OutVertexInstanceIDs ) const


description: Determine whether a given edge is an internal edge between triangles of a specific polygon

code: bool IsEdgeInternalToPolygon ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID, [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID ) const


description: Returns whether the passed edge ID is valid

code: bool IsEdgeValid ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID ) const


description: Determine whether a given edge is an internal edge between triangles of a polygon

code: bool IsEdgeInternal ( [FEdgeID](API\Runtime\MeshDescription\FEdgeID) EdgeID ) const


description: Return whether the mesh description is empty

code: bool IsEmpty() const


description: Returns whether the passed polygon group ID is valid

code: bool IsPolygonGroupValid ( [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID ) const


description: Returns whether the passed polygon ID is valid

code: bool IsPolygonValid ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID ) const


description: Determines if this triangle is part of an n-gon

code: bool IsTrianglePartOfNgon ( [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID ) const


description: Returns whether the passed triangle ID is valid

code: bool IsTriangleValid ( const [FTriangleID](API\Runtime\MeshDescription\FTriangleID) TriangleID ) const


description: Returns whether the passed vertex instance ID is valid

code: bool IsVertexInstanceValid ( [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) VertexInstanceID ) const


description: Returns whether the passed vertex ID is valid

code: bool IsVertexValid ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & PolygonAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FPolygonID](API\Runtime\MeshDescription\FPolygonID) > & PolygonAttributes() const


code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) > & PolygonGroupAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) > & PolygonGroupAttributes() const


description: Returns whether a given vertex is orphaned, i.e. it doesn't form part of any polygon

code: bool IsVertexOrphaned ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID ) const


code: FPolygonGroupArray & PolygonGroups()


code: const FPolygonGroupArray & PolygonGroups() const


code: FPolygonArray & Polygons()


code: const FPolygonArray & Polygons() const


code: virtual void RegisterAttributes()


description: Reserves space for this number of new edges

code: void ReserveNewEdges ( int32 NumberOfNewEdges )


description: Reserves space for this number of new polygon groups

code: void ReserveNewPolygonGroups ( int32 NumberOfNewPolygonGroups )


description: Reserves space for this number of new polygons

code: void ReserveNewPolygons ( const int32 NumberOfNewPolygons )


description: Reserves space for this number of new triangles

code: void ReserveNewTriangles ( int32 NumberOfNewTriangles )


description: Reserves space for this number of new vertex instances

code: void ReserveNewVertexInstances ( int32 NumberOfNewVertexInstances )


description: Reserves space for this number of new vertices

code: void ReserveNewVertices ( int32 NumberOfNewVertices )


description: Reset the contained mesh description

code: void Reset()


description: Reverse the winding order of the vertices of this polygon

code: void ReversePolygonFacing ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID )


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


description: Sets the polygon group associated with a polygon

code: void SetPolygonPolygonGroup ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, [FPolygonGroupID](API\Runtime\MeshDescription\FPolygonGroupID) PolygonGroupID )


description: Set the mesh description

code: void SetMeshDescription ( [FMeshDescription](API\Runtime\MeshDescription\FMeshDescription) InMeshDescription )


description: Sets a vertex position

code: void SetVertexPosition ( [FVertexID](API\Runtime\MeshDescription\FVertexID) VertexID, const FVector & Position )


description: Set the vertex instance at the given index around the polygon to the new value

code: void SetPolygonVertexInstances ( [FPolygonID](API\Runtime\MeshDescription\FPolygonID) PolygonID, const [TArray](API\Runtime\Core\Containers\TArray)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceIDs )


code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & TriangleAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FTriangleID](API\Runtime\MeshDescription\FTriangleID) > & TriangleAttributes() const


code: FTriangleArray & Triangles()


code: const FTriangleArray & Triangles() const


description: Accessors for mesh element attributes

code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & VertexAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FVertexID](API\Runtime\MeshDescription\FVertexID) > & VertexAttributes() const


code: [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceAttributes()


code: const [TAttributesSet](API\Runtime\MeshDescription\TAttributesSet)< [FVertexInstanceID](API\Runtime\MeshDescription\FVertexInstanceID) > & VertexInstanceAttributes() const


code: const FVertexInstanceArray & VertexInstances() const


description: Accessors for mesh element arrays

code: FVertexArray & Vertices()


code: const FVertexArray & Vertices() const


className: UMeshDescriptionBase

code: class UMeshDescriptionBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

OwnedMeshDescription

type: FMeshDescriptio...

RequiredAttributes

type: TUniquePtr<FMe...


code: bool CacheMeshDescription()


code: void CommitMeshDescription ( bool bUseHashAsGuid )


code: const [FMeshDescriptionBulkData](API\Runtime\MeshDescription\FMeshDescriptionBulkData) & GetBulkData() const


code: [UMeshDescriptionBase](API\Runtime\MeshDescription\UMeshDescriptionBase) * GetMeshDescription() const


code: bool HasCachedMeshDescription() const


code: bool IsBulkDataValid() const


description:
Called during saving to determine if the object is forced to be editor only or not
true if this object should never be loaded outside the editor

code: virtual bool IsEditorOnly() const


description:
Called during saving to determine the load flags to save with the object. If false, this object will be discarded on clients
true if this object should be loaded on clients

code: virtual bool NeedsLoadForClient() const


description:
Called during saving to include this object in client/servers running in editor builds, even if they wouldn't normally be. If false, this object will still get loaded if NeedsLoadForServer/Client are true
true if this object should always be loaded for games running in editor builds

code: virtual bool NeedsLoadForEditorGame() const


description:
Called during saving to determine the load flags to save with the object. If false, this object will be discarded on servers
true if this object should be loaded on servers

code: virtual bool NeedsLoadForServer() const


code: void RemoveMeshDescription()


code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


code: UMeshDescriptionBaseBulkData()


className: UMeshDescriptionBaseBulkData

description: UObjectwrapper forFMeshDescriptionBulkData

code: class UMeshDescriptionBaseBulkData : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

BulkData

type: TPimplPtr<FMes...

MeshDescription

type: TObjectPtr<UMe...


module: MeshUtilitiesCommon

code: void AddUsedSegment ( [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) & Run, uint32 StartPos, uint32 Length )


code: void Alloc ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) Rect )


code: void Alloc ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other )


code: void ClearBit ( uint32 x, uint32 y )


description: Must clear before using.

code: void Clear()


code: void CreateUsedSegments()


code: void CopyRuns ( [TArray](API\Runtime\Core\Containers\TArray)< [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) > & Runs, const [TArray](API\Runtime\Core\Containers\TArray)< [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) > & OtherRuns, int32 MaxSize )


className: EMode

code: enum EMode { FreeSegments, UsedSegments, }


code: bool Find ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect )


code: bool FindBitByBit ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other )


code: bool FindWithSegments ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(const [FAllocator2D::FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) &)> IsBestRect ) const


code: void FlipX ( const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect )


code: void FlipY ( const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect )


className: FRun

code: struct FRun

FreeSegmentsLookup

type: TArray< uint16 ...

description: Contains mapping from pixel position to first segment index in search range.

Segments

type: TArray<FSegmen...


code: bool operator< &40; const FSegment & Other &41; const


className: FSegment

code: struct FSegment


description: Returns non-zero if set.

code: uint64 GetBit ( uint32 x, uint32 y ) const


code: uint32 GetRasterHeight() const


description: Get the MD5 hash of the rasterized content.


code: uint32 GetRasterWidth() const


code: uint32 GetUsedTexels() const


code: void InitRuns ( [TArray](API\Runtime\Core\Containers\TArray)< [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) > & Runs, uint32 PrimaryResolution, uint32 PerpendicularRasterSize )


code: void MergeRun ( [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) & Run, const [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) & OtherRun, uint32 RectOffset, uint32 RectLength, uint32 PrimaryResolution, uint32 PerpendicularResolution )


code: void MergeSegments ( const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other )


code: [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & operator= ( const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other )


code: void PublishStats ( int32 ChartIndex, int32 Orientation, bool bFound, const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect, const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & BestRect, const [FMD5Hash](API\Runtime\Core\Misc\FMD5Hash) & ChartMD5, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< bool(const [FAllocator2D::FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) &)> IsBestRect )


code: void SetBit ( uint32 x, uint32 y )


code: bool Test ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other )


code: bool Test ( [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) Rect )


code: bool TestAllColumns ( const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other, uint32 & FailedLength ) const


code: bool TestAllRows ( const [FRect](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRect) & Rect, const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other, uint32 & FailedLength ) const


code: bool TestOneRun ( const [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) & Run, const [FRun](API\Runtime\MeshUtilitiesCommon\FAllocator2D\FRun) & OtherRun, uint32 RectOffset, uint32 RectLength, uint32 PrimaryResolution, uint32 & OutFailedLength ) const


description: Allow to visualize the content in ascii for debugging purpose. (i.e Watch or Immediate window).


description: Take control of the copy assignment to reduce the amount of data movement to the strict minimum.

code: FAllocator2D ( const [FAllocator2D](API\Runtime\MeshUtilitiesCommon\FAllocator2D) & Other )


code: FAllocator2D ( [EMode](API\Runtime\MeshUtilitiesCommon\FAllocator2D\EMode) Mode, uint32 Width, uint32 Height, ELightmapUVVersion LayoutVersion )


code: class FAllocator2D

Bits

type: TArray< uint64 ...

Columns

type: TArray<FRun>

Height

type: const uint32

LayoutVersion

type: const ELightmap...

Mode

type: constEMode

description: Enforce that those cannot be changed in flight.

SortedColumnsIndex

description: Indexinside columns that will be sorted by columns with longest used segment first.

SortedRowsIndex

description: Indexinside rows that will be sorted by rows with longest used segment first.


className: FBoneVertInfo

description: Contains the vertices that are most dominated by that bone. Vertices are in Bone space. Not used at runtime, but useful for fitting physics assets etc.

code: struct FBoneVertInfo

Normals

type: TArray< FVector...

Positions

description: Invariant: Arrays should be same length!


code: bool operator() ( [FIndexAndZ](API\Runtime\MeshUtilitiesCommon\FIndexAndZ) const & A, [FIndexAndZ](API\Runtime\MeshUtilitiesCommon\FIndexAndZ) const & B ) const


className: FCompareIndexAndZ

description: Sorting function for vertex Z/index pairs.

code: struct FCompareIndexAndZ


code: void AddDefaulted ( uint32 Num )


description: Find with path compression.

code: uint32 Find ( uint32 i )


code: void Init ( uint32 Size )


code: uint32 operator[] ( uint32 i ) const


description: Union with splicing.

code: void Union ( uint32 x, uint32 y )


code: void UnionSequential ( uint32 x, uint32 y )


code: FDisjointSet ( const uint32 Size )


className: FDisjointSet

code: class FDisjointSet


description: Default constructor.

code: FIndexAndZ()


description: Initialization constructor.

code: FIndexAndZ ( int32 InIndex, FVector3f V )


className: FIndexAndZ

description: Helper struct for building acceleration structures.

code: struct FIndexAndZ

Z

type: float


code: void CommitPackedUVs()


code: int32 FindCharts &40; const FOverlappingCorners & OverlappingCorners, TArray< FVector2f > & TexCoords, TArray< uint32 > & SortedTris, TArray< FMeshChart > & Charts &41;


code: FChartFinder &40; IMeshView & InMeshView, ELightmapUVVersion InLayoutVersion &41;


className: FChartFinder

description: FIRST PASS: Given a Mesh, build the associated set of charts

code: struct FChartFinder


code: bool FindBestPacking &40; const TArray< FVector2f > & TexCoords, const TArray< uint32 > & SortedTris, TArray< FMeshChart > & AllCharts &41;


code: FChartPacker &40; IMeshView & InMeshView, ELightmapUVVersion InLayoutVersion, uint32 TextureResolution &41;


className: FChartPacker

description: SECOND PASS: Given a set of charts, pack them in the UV space

code: struct FChartPacker


className: FindBestPackingCount

code: static [TAtomic](API\Runtime\Core\HAL\TAtomic)< uint64 > FindBestPackingCount;


code: bool FindBestPacking ( uint32 InTextureResolution )


className: FindBestPackingCycles

code: static [TAtomic](API\Runtime\Core\HAL\TAtomic)< uint64 > FindBestPackingCycles;


className: FindBestPackingEfficiency

code: static [TAtomic](API\Runtime\Core\HAL\TAtomic)< uint64 > FindBestPackingEfficiency;


code: FVector3f GetNormal &40; uint32 Index &41; const


code: FVector2f GetInputTexcoord &40; uint32 Index &41; const


code: uint32 GetNumIndices&40;&41; const


code: FVector3f GetPosition &40; uint32 Index &41; const


code: void InitOutputTexcoords &40; uint32 Num &41;


code: void SetOutputTexcoord &40; uint32 Index, const FVector2f & Value &41;


code: virtual &126;IMeshView&40;&41;


code: int32 FindCharts ( const [FOverlappingCorners](API\Runtime\MeshUtilitiesCommon\FOverlappingCorners) & OverlappingCorners )


className: IMeshView

description: Abstract triangle mesh view interface that may be used by any module without introducing a dependency on a concrete mesh type (and thus potentially circular module references). This abstraction results in a performance penalty due to virtual dispatch, however it is expected to be insignificant compared to the rest of work done byFLayoutUVand cache misses due to indexed vertex data access.

code: struct IMeshView


code: static void LogStats()


code: static void ResetStats()


code: void SetVersion ( ELightmapUVVersion Version )


className: FLayoutUV

code: class FLayoutUV


code: FLayoutUV ( [IMeshView](API\Runtime\MeshUtilitiesCommon\FLayoutUV\IMeshView) & InMeshView )


className: FMeshChart

code: struct FMeshChart


description: array of sorted overlapping indices including input 'Key', empty array for indices that have no overlaps.

code: const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & FindIfOverlapping ( int32 Key ) const


description: Estimate memory allocated

code: uint32 GetAllocatedSize() const


description: Sorts arrays, converts sets to arrays for sorting and to allow simple iterating code, prevents additional adding

code: void FinishAdding()


description: Resets, pre-allocates memory, marks all indices as not overlapping in preperation for calls toAdd()

code: void Init ( int32 NumIndices )


code: FOverlappingCorners()


code: FOverlappingCorners ( const [FLayoutUV::IMeshView](API\Runtime\MeshUtilitiesCommon\FLayoutUV\IMeshView) & MeshView, float ComparisonThreshold )


code: FOverlappingCorners ( const [TArray](API\Runtime\Core\Containers\TArray)< FVector3f > & InVertices, const [TArray](API\Runtime\Core\Containers\TArray)< uint32 > & InIndices, float ComparisonThreshold )


description: Add overlapping indices pair

code: void Add ( int32 Key, int32 Value )


className: FOverlappingCorners

description: Container to hold overlapping corners. For a vertex, lists all the overlapping vertices

code: struct FOverlappingCorners


description: This function compute the area of a triangle, it will return zero if the triangle is degenerated

code: namespace TriangleUtilities { static float TriangleUtilities::ComputeTriangleArea ( const FVector3f & PointA, const FVector3f & PointB, const FVector3f & PointC ) }


description: This function compute the angle of a triangle corner, it will return zero if the triangle is degenerated

code: namespace TriangleUtilities { static float TriangleUtilities::ComputeTriangleCornerAngle ( const FVector3f & PointA, const FVector3f & PointB, const FVector3f & PointC ) }


className: FInboundTransferStatistics

description: Per-node per-message transfer statistics.

module: Messaging

code: struct FInboundTransferStatistics

BytesReceived

description: Total bytes sent thus far.

BytesToReceive

description: Total bytes to send for the given MessageId

MessageId

description: Message Id that uniquely identifies the inbound message.

OriginId

type: FGuid

description: Unique Id for the target.


description: IsValid

code: void Invalidate()


description: Invalidate

code: bool IsValid() const


description:
Returns a new message address.
A new address.


description: ToString

code: static bool Parse ( const [FString](API\Runtime\Core\Containers\FString) & String, [FMessageAddress](API\Runtime\Messaging\FMessageAddress) & OutAddress )


description: Parse


description: Default constructor (no initialization).

code: FMessageAddress()


className: FMessageAddress

description: Structure for message endpoint addresses.

code: struct FMessageAddress


className: FMessageTracerAddressInfo

description: Structure for a recipient's address information.

code: struct FMessageTracerAddressInfo

Address

type: FMessageAddress

description: Holds a recipient's message address.

TimeRegistered

type: double

description: Holds the time at which this address was registered.

TimeUnregistered

description: Holds the time at which this address was unregistered.


className: FMessageTracerBreakpoint

description: Structure for tracer breakpoints.

code: struct FMessageTracerBreakpoint

BreakOnRecipient

description: Recipient address to break on.

BreakOnSender

description: Sender address to break on.

HitCount

description: How many times the breakpoint was hit.

State

type: EMessageTracerB...

description: The breakpoint's enabled state.


className: FMessageTracerDispatchState

description: Structure for message dispatch states.

code: struct FMessageTracerDispatchState

DispatchLatency

description: Holds the dispatch latency (in seconds).

DispatchType

type: EMessageTracerD...

description: Holds the message's dispatch type for the specified endpoint.

EndpointInfo

type: TSharedPtr<FMe...

description: Holds the endpoint to which the message was or is being dispatched.

RecipientThread

description: The thread on which the endpoint receives messages.

TimeDispatched

description: Holds the time at which the message was dispatched.

TimeHandled

description: Holds the time at which the message was actually handled (0.0 = not handled yet).


className: FMessageTracerEndpointInfo

description: Structure for message endpoint debug information.

code: struct FMessageTracerEndpointInfo

AddressInfos

type: TMap<FMessageA...

description: Holds the recipient's address information.

Name

type: FName

description: Holds the recipient's human readable name.

ReceivedMessages

type: TArray<TShared...

description: Holds the list of messages received by this recipient.

Remote

type: bool

description: Holds a flag indicating whether this is a remote recipient.

SentMessages

description: Holds the list of messages sent by this recipient.


className: FMessageTracerMessageInfo

description: Structure for message debug information.

code: struct FMessageTracerMessageInfo

Context

type: TSharedPtr<IMe...

description: Holds a pointer to the message context.

DispatchStates

type: TMap<TSharedPt...

description: Holds the message's dispatch states per endpoint.

Intercepted

description: Whether the message was intercepted.

SenderInfo

description: Pointer to the sender's endpoint information.

TimeRouted

description: Holds the time at which the message was routed (0.0 = pending).

TimeSent

description: Holds the time at which the message was sent.

TypeInfo

description: Pointer to the message's type information.


className: FMessageTracerInterceptorInfo

description: Structure for message interceptor debug information.

code: struct FMessageTracerInterceptorInfo

InterceptedMessages

description: Holds the list of messages intercepted by this interceptor.

Name

description: Holds the interceptor's human readable name.

TimeRegistered

description: Holds the time at which this interceptor was registered.

TimeUnregistered

description: Holds the time at which this interceptor was unregistered.


className: FMessageTracerTypeInfo

description: Structure for message type debug information.

code: struct FMessageTracerTypeInfo

Messages

description: Holds the collection of messages of this type.

TypePathName

type: FTopLevelAssetP...

description: Holds a path name of the message type.


className: FMessageTransportStatistics

description: General information on transport health per Node Id.

code: struct FMessageTransportStatistics

AverageRTT

type: FTimespan

description: Computed average Round-trip time to receive data from connected endpoint.

BytesInflight

description: Number of bytes currently in flight waiting for.

type: FString

description: IPv4 address as a string value.

PacketsAcked

description: Number of packets acknowledged.

PacketsInFlight

description: Current packets in flight waiting for

PacketsLost

description: Total number of packets lost to the destination.

PacketsReceived

description: Number of packets received from this endpoint.

PacketsSent

description: Total number of packets sent to the destination.

TotalBytesLost

description: Total number of bytes lost to the destination endpoint.

TotalBytesReceived

description: Total number of bytes received from endpoint.

TotalBytesSent

description: Total number of bytes sent to the destination endpoint.

WindowSize

description: The size of our sending window (as indicated by the transport).


className: FOutboundTransferStatistics

description: Per-node per-message transfer statistics.

code: struct FOutboundTransferStatistics

BytesAcknowledged

description: Total number of bytes acknowledge by the destination.

BytesSent

description: Total bytes sent thus far.

BytesToSend

description: Total bytes to send for the given MessageId

DestinationId

description: Unique Id for the target.

MessageId

description: Monotonically increasing ID for each message sent across the network.


description:
Authorizes a request to intercept messages of the specified type.
true if the request was authorized, false otherwise.

code: virtual bool AuthorizeInterceptor ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageInterceptor](API\Runtime\Messaging\IMessageInterceptor), ESPMode::ThreadSafe > & Interceptor, const [FName](API\Runtime\Core\UObject\FName) & MessageType )


code: bool AuthorizeInterceptor ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageInterceptor](API\Runtime\Messaging\IMessageInterceptor), ESPMode::ThreadSafe > & Interceptor, const [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) & MessageType )


description:
Authorizes a request to register the specified recipient.
true if the request was authorized, false otherwise.

code: bool AuthorizeRegistration ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Recipient, const [FMessageAddress](API\Runtime\Messaging\FMessageAddress) & Address )


description:
Authorizes a request to add a subscription for the specified topic pattern.
true if the request is authorized, false otherwise.

code: virtual bool AuthorizeSubscription ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Subscriber, const [FName](API\Runtime\Core\UObject\FName) & TopicPattern )


code: bool AuthorizeSubscription ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Subscriber, const [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) & TopicPattern )


description:
Authorizes a request to unregister the specified recipient.
true if the request was authorized, false otherwise.

code: bool AuthorizeUnregistration ( const [FMessageAddress](API\Runtime\Messaging\FMessageAddress) & Address )


description:
Authorizes a request to remove a subscription for the specified topic pattern.
true if the request is authorized, false otherwise.

code: virtual bool AuthorizeUnsubscription ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Subscriber, const [FName](API\Runtime\Core\UObject\FName) & TopicPattern )


code: bool AuthorizeUnsubscription ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Subscriber, const [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) & TopicPattern )


description: Virtual destructor.

code: virtual ~IAuthorizeMessageRecipients()


className: IAuthorizeMessageRecipients

description: Interface for classes that authorize message subscriptions.

code: class IAuthorizeMessageRecipients


description:
If the listener's Notify[*] methods are thread-safe, return ThreadAny for best performance.
Name of the listener thread.


className: IBusListener

description: IMessageBus

code: class IBusListener


description: Notify a registration event from the bus This is called when a receiver is registered or unregistered from the bus.

code: void NotifyRegistration ( const [FMessageAddress](API\Runtime\Messaging\FMessageAddress) & Address, EMessageBusNotification Notification )


description:
The caller is responsible for deleting the returned object.
An archive reader.


description: Virtual destructor.

code: virtual ~IMessageAttachment()


className: IMessageAttachment

description: IMessageContext

code: class IMessageAttachment


description: IsEnabled

code: void Disable()


description: IsEnabled

code: void Enable()


description: Enable

code: bool IsEnabled() const


description: Provides the endpoint guid for the given address.FGuidwhich may be invalid.

code: [FGuid](API\Runtime\Core\Misc\FGuid) LookupAddress ( const [FMessageAddress](API\Runtime\Messaging\FMessageAddress) & InAddress )


description: Virtual destructor.

code: virtual ~IMessageBridge()


className: IMessageBridge

description: Message bridge instances can be created with theIMessagingModule.CreateBridgemethod.

code: class IMessageBridge


description: Send

code: void Forward ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageContext](API\Runtime\Messaging\IMessageContext), ESPMode::ThreadSafe > & Context, const [TArray](API\Runtime\Core\Containers\TArray)< [FMessageAddress](API\Runtime\Messaging\FMessageAddress) > & Recipients, const [FTimespan](API\Runtime\Core\Misc\FTimespan) & Delay, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageSender](API\Runtime\Messaging\IMessageSender), ESPMode::ThreadSafe > & Forwarder )


description: Add a listener to the bus notifications

code: void AddNotificationListener ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IBusListener](API\Runtime\Messaging\IBusListener), ESPMode::ThreadSafe > & Listener )


description: The name of this message bus.

code: const [FString](API\Runtime\Core\Containers\FString) & GetName() const


description:
Gets the message bus tracer.
Weak pointer to the tracer object.

code: [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageTracer](API\Runtime\Messaging\IMessageTracer), ESPMode::ThreadSafe > GetTracer()


description: Unintercept

code: virtual void Intercept ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageInterceptor](API\Runtime\Messaging\IMessageInterceptor), ESPMode::ThreadSafe > & Interceptor, const [FName](API\Runtime\Core\UObject\FName) & MessageType )


description: Unintercept

code: void Intercept ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageInterceptor](API\Runtime\Messaging\IMessageInterceptor), ESPMode::ThreadSafe > & Interceptor, const [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) & MessageType )


description: Shutdown

code: FOnMessageBusShutdown & OnShutdown()


code: static const [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) PATHNAME_All;


description: Unregister

code: void Register ( const [FMessageAddress](API\Runtime\Messaging\FMessageAddress) & Address, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Recipient )


description: Send

code: void Publish ( void * Message, [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * TypeInfo, EMessageScope Scope, const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), [FString](API\Runtime\Core\Containers\FString) > & Annotations, const [FTimespan](API\Runtime\Core\Misc\FTimespan) & Delay, const [FDateTime](API\Runtime\Core\Misc\FDateTime) & Expiration, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageSender](API\Runtime\Messaging\IMessageSender), ESPMode::ThreadSafe > & Publisher )


description: Remove a listener to the bus notifications

code: void RemoveNotificationListener ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IBusListener](API\Runtime\Messaging\IBusListener), ESPMode::ThreadSafe > & Listener )


description: OnShutdown

code: void Shutdown()


description: Forward

code: void Send ( void * Message, [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * TypeInfo, EMessageFlags Flags, const [TMap](API\Runtime\Core\Containers\TMap)< [FName](API\Runtime\Core\UObject\FName), [FString](API\Runtime\Core\Containers\FString) > & Annotations, const [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IMessageAttachment](API\Runtime\Messaging\IMessageAttachment), ESPMode::ThreadSafe > & Attachment, const [TArray](API\Runtime\Core\Containers\TArray)< [FMessageAddress](API\Runtime\Messaging\FMessageAddress) > & Recipients, const [FTimespan](API\Runtime\Core\Misc\FTimespan) & Delay, const [FDateTime](API\Runtime\Core\Misc\FDateTime) & Expiration, const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageSender](API\Runtime\Messaging\IMessageSender), ESPMode::ThreadSafe > & Sender )


description: Unsubscribe

code: virtual [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IMessageSubscription](API\Runtime\Messaging\IMessageSubscription), ESPMode::ThreadSafe > Subscribe ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Subscriber, const [FName](API\Runtime\Core\UObject\FName) & MessageType, const [TRange](API\Runtime\Core\Math\TRange)< EMessageScope > & ScopeRange )


description: Unsubscribe

code: [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [IMessageSubscription](API\Runtime\Messaging\IMessageSubscription), ESPMode::ThreadSafe > Subscribe ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageReceiver](API\Runtime\Messaging\IMessageReceiver), ESPMode::ThreadSafe > & Subscriber, const [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) & MessageType, const [TRange](API\Runtime\Core\Math\TRange)< EMessageScope > & ScopeRange )


description: Intercept

code: virtual void Unintercept ( const [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [IMessageInterceptor](API\Runtime\Messaging\IMessageInterceptor), ESPMode::ThreadSafe > & Interceptor, const [FName](API\Runtime\Core\UObject\FName) & MessageType )