UComputeDataInterface

Compute Data Interface required to compile a Compute Graph.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

ComputeFramework

Header

/Engine/Plugins/Experimental/ComputeFramework/Source/ComputeFramework/Public/ComputeFramework/ComputeDataInterface.h

Include

#include "ComputeFramework/ComputeDataInterface.h"

Syntax

UCLASS(Abstract, Const)
class UComputeDataInterface : public UObject

Remarks

Compute Data Interface required to compile a Compute Graph. Compute Kernels require Data Interfaces to fulfill their external functions. Compute Data Interfaces define how Compute Data Providers will actually marshal data in and out of Kernels.

Functions

Name Description

Public function Virtual Const

UComputeData...

 

CreateDataProvider

(
    TArrayView< TObjectPtr< UObject > >...,
    uint64 InInputMask,
    uint64 InOutputMask
)

Instantiate an associated UComputeDataProvider.

Public function Virtual Const

void

 

GetHLSL

(
    FString& OutHLSL
)

Gather the shader code for this data provider.

Public function Virtual Const

void

 

GetPermutations

(
    FComputeKernelPermutationSet& OutP...
)

Gather permutations from the data interface.

Public function Virtual Const

void

 

GetShaderParameters

(
    TCHAR const* UID,
    FShaderParametersMetadataBuilder& ...
)

Gather the shader metadata exposed by the data provider payload.

Public function Virtual Const

void

 

GetSourceTypes

(
    TArray< UClass* >& OutSourceT...
)

Get types of UObject required to instantiate a UComputeDataProvider from this interface.

Public function Virtual Const

void

 

GetSupportedInputs

Get the data interface functions available to fulfill external inputs of a kernel.

Public function Virtual Const

void

 

GetSupportedOutputs

Get the data interface functions available to fulfill external outputs of a kernel.

Public function Virtual Const

void

 

ModifyCompilationEnvironment

(
    FShaderCompilerEnvironment& OutEnv...
)

Gather modifications to the compilation environment always required when including this data provider.