Navigation
API > API/Plugins > API/Plugins/Niagara
Base class for objects in Niagara that are owned by one object but are then passed for reading to other objects, potentially on other threads. This class allows us to know if the object is being used so we do not overwrite it and to ensure it's lifetime so we do not access freed data.
| Name | FNiagaraSharedObject |
| Type | class |
| Header File | /Engine/Plugins/FX/Niagara/Source/Niagara/Classes/NiagaraDataSet.h |
| Include Path | #include "NiagaraDataSet.h" |
Syntax
class FNiagaraSharedObject
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FNiagaraSharedObject() |
NiagaraDataSet.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FNiagaraSharedObject() |
NiagaraDataSet.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| CritSec | FCriticalSection | NiagaraDataSet.h | |
| DeferredDeletionList | TArray< FNiagaraSharedObject * > | NiagaraDataSet.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddRef() |
NiagaraDataSet.h | ||
void Destroy () |
The owner of this object is now done with it but it may still be in use by others, possibly on other threads. | NiagaraDataSet.h | |
bool IsBeingRead() |
NiagaraDataSet.h | ||
bool IsBeingWritten() |
NiagaraDataSet.h | ||
bool IsInUse() |
NiagaraDataSet.h | ||
void Release() |
NiagaraDataSet.h | ||
bool TryLock() |
NiagaraDataSet.h | ||
void Unlock() |
Remove the write lock. | NiagaraDataSet.h | |
TRefCountPtr< FNiagaraSharedObject > UnlockForRead() |
Removes the write lock and moves directly into a read state. | NiagaraDataSet.h |
Protected
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void FlushDeletionList() |
NiagaraDataSet.h |