Navigation
API > API/Plugins > API/Plugins/PCG > API/Plugins/PCG/Metadata
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UPCGMetadata
References
| Module | PCG |
| Header | /Engine/Plugins/Experimental/PCG/Source/PCG/Public/Metadata/PCGMetadata.h |
| Include | #include "Metadata/PCGMetadata.h" |
Syntax
UCLASS&40;BlueprintType&41;
class UPCGMetadata : public UObject
Variables
| Type | Name | Description | |
|---|---|---|---|
| FRWLock | AttributeLock | ||
| TMap< FName, FPCGMetadataAttributeBase * > | Attributes | ||
| TAtomic< int64 > | DelayedEntriesIndex | ||
| int64 | ItemKeyOffset | ||
| FRWLock | ItemLock | ||
| PCGMetadataAttributeKey | NextAttributeId | ||
| TSet< TWeakObjectPtr< const UPCGMetadata > > | OtherParents | Set of parents kept for streams relationship and GC collection But otherwise not used directly | |
| TObjectPtr< const UPCGMetadata > | Parent | ||
| TArray< PCGMetadataEntryKey > | ParentKeys |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AccumulatePointWeightedAttributes
(
const FPCGPoint& InPoint, |
||
| void | AccumulateWeightedAttributes
(
PCGMetadataEntryKey InKey, |
||
| void | AccumulateWeightedAttributesByKey
(
int64 Key, |
||
| void | AddAttribute
(
const UPCGMetadata* InOther, |
Creates missing attribute from another metadata if it is not currently present - note that this does not copy values | |
| void | AddAttributeInternal
(
FName AttributeName, |
||
| void | AddAttributes
(
const UPCGMetadata* InOther |
Creates missing attributes from another metadata if they are not currently present - note that this does not copy values | |
| void | AddAttributesFiltered
(
const UPCGMetadata* InOther, |
Creates missing attributes from another metadata if they are not currently present - note that this does not copy values. | |
| void | AddDelayedEntries
(
const TArray< TTuple< int64, int64 >>& AllEntries |
Advanced method. | |
| int64 | AddEntry
(
int64 ParentEntryKey |
Adds a unique entry key to the metadata | |
| int64 | Advanced method. | ||
| void | ClearAttribute
(
FName AttributeToClear |
Clear/Reinit attribute | |
| void | ComputePointWeightedAttribute
(
FPCGPoint& OutPoint, |
||
| void | ComputeWeightedAttribute
(
PCGMetadataEntryKey& OutKey, |
||
| FPCGMetadataAttributeBase * | CopyAttribute
(
FName AttributeToCopy, |
||
| FPCGMetadataAttributeBase * | CopyAttribute
(
const FPCGMetadataAttributeBase* OriginalAttribute, |
Copies another attribute, with options to keep its parent and copy entries/values | |
| void | CopyAttribute
(
const UPCGMetadata* InOther, |
Copies an attribute from another metadata, including entries & values. | |
| void | CopyAttributes
(
const UPCGMetadata* InOther |
Copies attributes from another metadata, including entries & values. | |
| bool | CopyExistingAttribute
(
FName AttributeToCopy, |
Copy attribute | |
| FPCGMetadataAttribute< T > * | CreateAttribute
(
FName AttributeName, |
Create a new attribute. | |
| bool | CreateAttributeFromDataProperty
(
FName AttributeName, |
Creates an attribute given a property. | |
| bool | CreateAttributeFromProperty
(
FName AttributeName, |
Creates an attribute given a property. | |
| void | CreateBoolAttribute
(
FName AttributeName, |
||
| void | CreateDoubleAttribute
(
FName AttributeName, |
||
| void | CreateFloatAttribute
(
FName AttributeName, |
||
| void | CreateInteger32Attribute
(
FName AttributeName, |
Create new streams | |
| void | CreateInteger64Attribute
(
FName AttributeName, |
||
| void | CreateNameAttribute
(
FName AttributeName, |
||
| void | CreateQuatAttribute
(
FName AttributeName, |
||
| void | CreateRotatorAttribute
(
FName AttributeName, |
||
| void | CreateStringAttribute
(
FName AttributeName, |
||
| void | CreateTransformAttribute
(
FName AttributeName, |
||
| void | CreateVector2Attribute
(
FName AttributeName, |
||
| void | CreateVector4Attribute
(
FName AttributeName, |
||
| void | CreateVectorAttribute
(
FName AttributeName, |
||
| void | DeleteAttribute
(
FName AttributeName |
Due to stream inheriting, we might want to consider "hiding" parent stream and deleting local streams only. | |
| FPCGMetadataAttribute< T > * | FindOrCreateAttribute
(
FName AttributeName, |
Find or create an attribute. | |
| void | Flatten () |
Unparents current metadata by flattening the attributes (values, entries, etc.) | |
| int32 | |||
| void | GetAttributes
(
TArray< FName >& AttributeNames, |
||
| const FPCGMetadataAttributeBase * | GetConstAttribute
(
FName AttributeName |
||
| const FPCGMetadataAttributeBase * | GetConstAttributeById
(
int32 AttributeId |
||
| const FPCGMetadataAttribute< T > * | GetConstTypedAttribute
(
FName AttributeName |
||
| int64 | |||
| int64 | |||
| FName | |||
| FPCGMetadataAttributeBase * | GetMutableAttribute
(
FName AttributeName |
Get attributes | |
| FPCGMetadataAttribute< T > * | GetMutableTypedAttribute
(
FName AttributeName |
||
| const UPCGMetadata * | GetParent () |
||
| PCGMetadataEntryKey | GetParentKey
(
PCGMetadataEntryKey LocalItemKey |
Metadata chaining mechanism | |
| TWeakObjectPtr< const UPCGMetadata > | GetParentPtr () |
Returns this metadata's parent | |
| const UPCGMetadata * | GetRoot () |
||
| bool | HasAttribute
(
FName AttributeName |
||
| bool | HasCommonAttributes
(
const UPCGMetadata* InMetadata |
||
| bool | HasParent
(
const UPCGMetadata* InTentativeParent |
||
| void | Initialize
(
const UPCGMetadata* InParent |
Initializes the metadata from a parent metadata, if any (can be null). | |
| void | Initialize
(
const UPCGMetadata* InParent, |
Initializes the metadata from a parent metadata, if any (can be null) with the option to not add attributes from the parent. | |
| void | InitializeAsCopy
(
const UPCGMetadata* InMetadataToCopy |
Initializes the metadata from a parent metadata by copying all attributes to it. | |
| void | InitializeAsCopyWithAttributeFilter
(
const UPCGMetadata* InMetadataToCopy, |
Initializes the metadata from a parent metadata by copy filtered attributes only to it | |
| bool | InitializeOnSet
(
PCGMetadataEntryKey& InKey, |
Initializes the metadata entry key. Returns true if key set from either parent | |
| void | InitializeWithAttributeFilter
(
const UPCGMetadata* InParent, |
Initializes the metadata from a parent metadata. Copies attributes and values. | |
| void | MergeAttributes
(
PCGMetadataEntryKey InKeyA, |
Attributes operations | |
| void | MergeAttributesByKey
(
int64 KeyA, |
Blueprint-friend versions | |
| void | MergeAttributesSubset
(
PCGMetadataEntryKey InKeyA, |
Attributes operations | |
| void | MergePointAttributes
(
const FPCGPoint& PointA, |
||
| void | MergePointAttributes
(
const FPCGPoint& InPointA, |
Attributes operations - shorthand for points | |
| void | MergePointAttributesSubset
(
const FPCGPoint& InPointA, |
Attributes operations - shorthand for points | |
| bool | ParentHasAttribute
(
FName AttributeName |
||
| void | RemoveAttributeInternal
(
FName AttributeName |
||
| bool | RenameAttribute
(
FName AttributeToRename, |
Rename attribute | |
| void | ResetPointWeightedAttributes
(
FPCGPoint& OutPoint |
||
| void | ResetWeightedAttributes
(
PCGMetadataEntryKey& OutKey |
||
| void | ResetWeightedAttributesByKey
(
int64 TargetKey, |
||
| bool | SetAttributeFromDataProperty
(
FName AttributeName, |
Set an attribute given a property and its value. | |
| bool | SetAttributeFromProperty
(
FName AttributeName, |
Set an attribute given a property and its value. | |
| void | SetAttributes
(
PCGMetadataEntryKey InKey, |
||
| void | SetAttributes
(
const TArrayView< PCGMetadataEntryKey >& InKeys, |
||
| void | SetAttributesByKey
(
int64 Key, |
||
| void | SetLastCachedSelectorOnOwner
(
FName AttributeName |
||
| void | SetPointAttributes
(
const TArrayView< const FPCGPoint >& InPoints, |
||
| void | SetPointAttributes
(
const FPCGPoint& Point, |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginDestroy () |
Called before destroying the object. | |
| void | Handles reading, writing, and reference collecting using FArchive. |