Navigation
API > API/Plugins > API/Plugins/Niagara
| Name | FNDIArrayProxyImpl |
| Type | struct |
| Header File | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataInterfaceArrayImpl.h |
| Include Path | #include "NiagaraDataInterfaceArrayImpl.h" |
Syntax
template<typename TArrayType, class TOwnerType>
struct FNDIArrayProxyImpl : public INDIArrayProxyBase
Implements Interfaces
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FNDIArrayProxyImpl
(
TOwnerType* InOwner |
NiagaraDataInterfaceArrayImpl.h |
Structs
| Name | Remarks |
|---|---|
| FGameToRenderInstanceData | |
| FReadArrayRef | |
| FWriteArrayRef |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| TVMArrayType | typename FNDIArrayImplHelper< TArrayType >::TVMArrayType | NiagaraDataInterfaceArrayImpl.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| kSafeMaxElements | int32 | NiagaraDataInterfaceArrayImpl.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bShouldSyncToCpu | bool | NiagaraDataInterfaceArrayImpl.h | ||
| bShouldSyncToGpu | bool | NiagaraDataInterfaceArrayImpl.h | ||
| Owner | TOwnerType * | NiagaraDataInterfaceArrayImpl.h | ||
| PerInstanceData_GameThread | TMap< FNiagaraSystemInstanceID, FNDIArrayInstanceData_GameThread< TArrayType > * > | NiagaraDataInterfaceArrayImpl.h | ||
| PerInstanceData_RenderThread | TMap< FNiagaraSystemInstanceID, FNDIArrayInstanceData_RenderThread< TArrayType > > | NiagaraDataInterfaceArrayImpl.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BeginSetArrayFromBP
(
bool bCopyFromInstanceData |
BP user parameter accessors, should remove if we every start to share the object between instances. | NiagaraDataInterfaceArrayImpl.h | |
void CachePropertiesFromOwner() |
NiagaraDataInterfaceArrayImpl.h | ||
void EndSetArrayFromBP() |
NiagaraDataInterfaceArrayImpl.h | ||
TArray< TToArrayType > GetArrayDataCopy() |
NiagaraDataInterfaceArrayImpl.h | ||
TToArrayType GetArrayValue
(
int Index |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf::Type GetParameterDefinitionHLSL_Internal
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf< T::bSupportsGPU >::Type GetParameterDefinitionHLSL_Internal
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
const FNDIArrayInstanceData_GameThread< TArrayType > * GetPerInstanceData_GameThread
(
FNiagaraSystemInstanceID SystemInstanceID |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf::Type GetVMExternalFunction_AtomicInternal
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf< T::bSupportsAtomicOps >::Type GetVMExternalFunction_AtomicInternal
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf::Type GetVMExternalFunction_CPUAccessInternal
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf< T::bSupportsCPU >::Type GetVMExternalFunction_CPUAccessInternal
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
void GetVMExternalFunction_Internal
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
bool IsRWGpuArray
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo |
NiagaraDataInterfaceArrayImpl.h | ||
void RecreateRenderState() |
NiagaraDataInterfaceArrayImpl.h | ||
void SetArrayData
(
TConstArrayView< TFromArrayType > InArrayData |
NiagaraDataInterfaceArrayImpl.h | ||
void SetArrayDataAndRecreateRenderState
(
TConstArrayView< TFromArrayType > InArrayData |
NiagaraDataInterfaceArrayImpl.h | ||
void SetArrayValue
(
int Index, |
NiagaraDataInterfaceArrayImpl.h | ||
void SetInstanceArrayData
(
FNiagaraSystemInstanceID InstanceID, |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf::Type VMAtomicAdd
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf< T::bSupportsAtomicOps >::Type VMAtomicAdd
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf::Type VMAtomicMax
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf< T::bSupportsAtomicOps >::Type VMAtomicMax
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf::Type VMAtomicMin
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
TEnableIf< T::bSupportsAtomicOps >::Type VMAtomicMin
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMClear
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMGetLastIndex
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMGetLength
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMGetValue
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMIsValidIndex
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMPopValue
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMPushValue
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMResize
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h | ||
void VMSetValue
(
FVectorVMExternalFunctionContext& Context |
NiagaraDataInterfaceArrayImpl.h |
Overridden from INDIArrayProxyBase
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool AppendCompileHash
(
FNiagaraCompileHashVisitor* InVisitor |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool CopyToInternal
(
INDIArrayProxyBase* InDestination |
NiagaraDataInterfaceArrayImpl.h | ||
virtual void DestroyPerInstanceData
(
void* InPerInstanceData, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool Equals
(
const INDIArrayProxyBase* InOther |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool GetFunctionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual void GetFunctions
(
TArray< FNiagaraFunctionSignature >& OutFunctions |
INDIArrayProxyBase. | NiagaraDataInterfaceArrayImpl.h | |
virtual void GetParameterDefinitionHLSL
(
const FNiagaraDataInterfaceGPUParamInfo& ParamInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual void GetVMExternalFunction
(
const FVMExternalFunctionBindingInfo& BindingInfo, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool InitPerInstanceData
(
UNiagaraDataInterface* DataInterface, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual int32 PerInstanceDataSize() |
NiagaraDataInterfaceArrayImpl.h | ||
virtual void ProvidePerInstanceDataForRenderThread
(
void* InDataForRenderThread, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual void SetShaderParameters
(
FShaderParameters* ShaderParameters, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool SimCacheCompareElement
(
const uint8* LhsData, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool SimCacheReadFrame
(
UNDIArraySimCacheData* CacheData, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual FString SimCacheVisualizerRead
(
const UNDIArraySimCacheData* CacheData, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool SimCacheWriteFrame
(
UNDIArraySimCacheData* CacheData, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual bool UpgradeFunctionCall
(
FNiagaraFunctionSignature& FunctionSignature |
NiagaraDataInterfaceArrayImpl.h |
Overridden from FNiagaraDataInterfaceProxyRW
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void GetDispatchArgs
(
const FNDIGpuComputeDispatchArgsGenContext& Context |
Called before PreStage to get the dispatch arguments The default implementation is temporary and will call GetElementCount & GetGPUInstanceCountOffset to set direct arguments. | NiagaraDataInterfaceArrayImpl.h |
Overridden from FNiagaraDataInterfaceProxy
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void ConsumePerInstanceDataFromGameThread
(
void* PerInstanceData, |
NiagaraDataInterfaceArrayImpl.h | ||
virtual int32 PerInstanceDataPassedToRenderThreadSize() |
FNiagaraDataInterfaceProxyRW. | NiagaraDataInterfaceArrayImpl.h | |
virtual void PostSimulate
(
const FNDIGpuComputePostSimulateContext& Context |
NiagaraDataInterfaceArrayImpl.h |