Navigation
API > API/Plugins > API/Plugins/PCG
Acts as a type-erasing abstraction wrapper around other PCG Data types, as well as allowing for a limited selection of attributes or properties to be defined for performing an operation on later. I.e. Specified attributes or properties can be selectively serialized into another format, supported by implemented interfaces.
Ex. A PCG Data View Data could point to a PCG Point Data, where only the $Position property is selected. Because the point data implements the IPCGDataViewJson interface, the selection of Positions for each point in the data may be serialized to/from a Json object/string form.
Implementation Note: UPCGDataViewData should implement all available Data View interfaces to enforce and maintain parity with consumer types. Calling an interface method on the Data View Data should essentially forward the call to the underlying data, if the interface is supported.
| Name | UPCGDataViewData |
| Type | class |
| Header File | /Engine/Plugins/PCG/Source/PCG/Public/Data/DataView/PCGDataViewData.h |
| Include Path | #include "Data/DataView/PCGDataViewData.h" |
Syntax
UCLASS (MinimalAPI, BlueprintType, ClassGroup=(Procedural))
class UPCGDataViewData : public UPCGData
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UPCGData → UPCGDataViewData
Structs
| Name | Remarks |
|---|---|
| FAccessorCacheEntry | Used to cache the selector/accessor for ease of data retrieval into the data. |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| TypeInfo | FPCGDataTypeInfoDataView | Data/DataView/PCGDataViewData.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| DataView | FPCGDataView | Data/DataView/PCGDataViewData.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
TArray< FPCGAttributePropertySelector > GetSelectedAttributes() |
The selection is stored lazily. Get Selected Attributes will create the array of selectors. @todo_pcg: Look into caching results. | Data/DataView/PCGDataViewData.h | |
void Initialize
(
FPCGDataView&& InDataView |
Set up the data view upon creation. | Data/DataView/PCGDataViewData.h |
Public Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual const FPCGDataView & GetDataView() |
Data/DataView/PCGDataViewData.h |
Overridden from UPCGData
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual const UPCGMetadata * ConstMetadata() |
Forwarding helper to the underlying metadata. | Data/DataView/PCGDataViewData.h | |
virtual TArray< FPCGMetadataDomainID > GetAllSupportedMetadataDomainIDs() |
Forwarding helper to get all supported domain IDs, to the internal data. | Data/DataView/PCGDataViewData.h | |
virtual const FPCGDataTypeBaseId & GetDataTypeId() |
Data/DataView/PCGDataViewData.h | ||
virtual FPCGMetadataDomainID GetDefaultMetadataDomainID() |
Forwarding helper to get the default domain ID, to the internal data. | Data/DataView/PCGDataViewData.h | |
virtual FPCGMetadataDomainID GetMetadataDomainIDFromSelector
(
const FPCGAttributePropertySelector& InSelector |
Forwarding helper to get a domain ID from a selector, to the internal data. | Data/DataView/PCGDataViewData.h |
Protected Virtual
Overridden from UPCGData
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AddToCrc
(
FArchiveCrc32& Ar, |
Serialize the Data View selection components into the Crc. | Data/DataView/PCGDataViewData.h | |
virtual FPCGCrc ComputeCrc
(
bool bFullDataCrc |
Compute the Crc for the Data View and its underlying data. | Data/DataView/PCGDataViewData.h | |
virtual bool SupportsFullDataCrc() |
Whether the data distinguishes between regular crc and full crc | Data/DataView/PCGDataViewData.h |