Navigation
API > API/Plugins > API/Plugins/Niagara
| Name | UNiagaraDataInterfaceArray |
| Type | class |
| Header File | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceArray.h |
| Include Path | #include "NiagaraDataInterfaceArray.h" |
Syntax
UCLASS (Abstract, EditInlineNew, MinimalAPI)
class UNiagaraDataInterfaceArray :
public UNiagaraDataInterfaceRWBase ,
public INiagaraSimCacheCustomStorageInterface
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UNiagaraNotifyOnChanged → UNiagaraDataInterfaceBase → UNiagaraDataInterface → UNiagaraDataInterfaceRWBase → UNiagaraDataInterfaceArray
Implements Interfaces
Derived Classes
UNiagaraDataInterfaceArray derived class hierarchy
- UNiagaraDataInterfaceArrayBool
- UNiagaraDataInterfaceArrayColor
- UNiagaraDataInterfaceArrayFloat
- UNiagaraDataInterfaceArrayFloat2
- UNiagaraDataInterfaceArrayFloat3
- UNiagaraDataInterfaceArrayFloat4
- UNiagaraDataInterfaceArrayInt32
- UNiagaraDataInterfaceArrayMatrix
- UNiagaraDataInterfaceArrayNiagaraID
- UNiagaraDataInterfaceArrayPosition
- UNiagaraDataInterfaceArrayQuat
- UNiagaraDataInterfaceArrayUInt8
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UNiagaraDataInterfaceArray
(
const FObjectInitializer& ObjectInitializer |
NiagaraDataInterfaceArray.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ArrayRWGuard | FTransactionallySafeRWLock | ReadWrite lock to ensure safe access to the underlying array. | NiagaraDataInterfaceArray.h | |
| GpuSyncMode | ENiagaraGpuSyncMode | How to do we want to synchronize modifications to the array data. | NiagaraDataInterfaceArray.h |
|
| MaxElements | int32 | When greater than 0 sets the maximum number of elements the array can hold, only relevant when using operations that modify the array size. | NiagaraDataInterfaceArray.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void CreateAndSetVariant
(
UNiagaraComponent* NiagaraComponent, |
NiagaraDataInterfaceArray.h | ||
FString SimCacheVisualizerRead
(
const UNDIArraySimCacheData* CacheData, |
NiagaraDataInterfaceArray.h |
Overridden from UNiagaraDataInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool AppendCompileHash
(
FNiagaraCompileHashVisitor* InVisitor |
Allows the generic class defaults version of this class to specify any dependencies/version/etc that might invalidate the compile. | NiagaraDataInterfaceArray.h | |
virtual bool CanExecuteOnTarget
(
ENiagaraSimTarget Target |
NiagaraDataInterfaceArray.h | ||
virtual bool CopyToInternal
(
UNiagaraDataInterface* Destination |
NiagaraDataInterfaceArray.h | ||
virtual void DestroyPerInstanceData
(
void* PerInstanceData, |
Destroys the per instance data for this interface. | NiagaraDataInterfaceArray.h | |
virtual bool Equals
(
const UNiagaraDataInterface* Other |
Determines if this DataInterface is the same as another. | NiagaraDataInterfaceArray.h | |
virtual bool GetFunctionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
NiagaraDataInterfaceArray.h | ||
virtual void GetParameterDefinitionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
NiagaraDataInterfaceArray.h | ||
virtual void GetVMExternalFunction
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
Returns the delegate for the passed function signature. | NiagaraDataInterfaceArray.h | |
virtual bool InitPerInstanceData
(
void* PerInstanceData, |
Initializes the per instance data for this interface. | NiagaraDataInterfaceArray.h | |
virtual int32 PerInstanceDataSize () |
Returns the size of the per instance data for this interface. | NiagaraDataInterfaceArray.h | |
virtual void ProvidePerInstanceDataForRenderThread
(
void* DataForRenderThread, |
Subclasses that wish to work with GPU systems/emitters must implement this. | NiagaraDataInterfaceArray.h | |
virtual void SetShaderParameters
(
const FNiagaraDataInterfaceSetShaderParametersContext& Context |
Set the shader parameters will only be called if the data interface provided shader parameters. | NiagaraDataInterfaceArray.h | |
virtual bool UpgradeFunctionCall
(
FNiagaraFunctionSignature& FunctionSignature |
Allows data interfaces the opportunity to rename / change the function signature and perform an upgrade. | NiagaraDataInterfaceArray.h |
Overridden from UNiagaraDataInterfaceBase
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BuildShaderParameters
(
FNiagaraShaderParametersBuilder& ShaderParametersBuilder |
NiagaraDataInterfaceArray.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
NiagaraDataInterfaceArray.h | ||
virtual void PostInitProperties() |
NiagaraDataInterfaceArray.h | ||
virtual void PostLoad() |
NiagaraDataInterfaceArray.h |
Overridden from INiagaraSimCacheCustomStorageInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual UObject * SimCacheBeginWrite
(
UObject* SimCache, |
Called when we begin to write data into a simulation cache. | NiagaraDataInterfaceArray.h | |
virtual bool SimCacheCompareFrame
(
const UObject* LhsStorageObject, |
Called to compare a frame between two separate simulation cache storages. | NiagaraDataInterfaceArray.h | |
virtual bool SimCacheReadFrame
(
const FNiagaraSimCacheDataInterfaceReadContext& ReadContext |
Virtual bool SimCacheEndWrite(UObject* StorageObject) const override; | NiagaraDataInterfaceArray.h | |
virtual bool SimCacheWriteFrame
(
UObject* StorageObject, |
Called when we are ready to write data into the simulation cache. | NiagaraDataInterfaceArray.h |
Protected
Overridden from UNiagaraDataInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void GetFunctionsInternal
(
TArray< FNiagaraFunctionSignature >& OutFunctions |
NiagaraDataInterfaceArray.h |