Navigation
API > API/Runtime > API/Runtime/Engine
| Name | FLightWeightInstanceSubsystem |
| Type | struct |
| Header File | /Engine/Source/Runtime/Engine/Classes/GameFramework/LightWeightInstanceSubsystem.h |
| Include Path | #include "GameFramework/LightWeightInstanceSubsystem.h" |
Syntax
struct FLightWeightInstanceSubsystem
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FLightWeightInstanceSubsystem() |
GameFramework/LightWeightInstanceSubsystem.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FLightWeightInstanceSubsystem() |
GameFramework/LightWeightInstanceSubsystem.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| LWIManagersRWLock | FTransactionallySafeRWLock | Mutex to make sure we don't change the LWInstanceManagers array while reading/writing it. | GameFramework/LightWeightInstanceSubsystem.h | |
| LWInstanceManagers | TArray< ALightWeightInstanceManager * > | TODO: preallocate the size of this based on a config variable. | GameFramework/LightWeightInstanceSubsystem.h | |
| OnLevelActorAddedHandle | FDelegateHandle | GameFramework/LightWeightInstanceSubsystem.h | ||
| OnLevelActorDeletedHandle | FDelegateHandle | GameFramework/LightWeightInstanceSubsystem.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AddManager
(
ALightWeightInstanceManager* Manager |
Add a manager to the subsystem, thread safe. | GameFramework/LightWeightInstanceSubsystem.h | |
FActorInstanceHandle CreateNewLightWeightInstance
(
UClass* ActorClass, |
Returns a handle to a new light weight instance that represents an object of type ActorClass. | GameFramework/LightWeightInstanceSubsystem.h | |
void DeleteInstance
(
const FActorInstanceHandle& Handle |
Deletes the instance identified by Handle | GameFramework/LightWeightInstanceSubsystem.h | |
ALightWeightInstanceManager * FindLightWeightInstanceManager
(
UClass& ActorClass, |
Returns the instance manager that handles actors of type ActorClass in level Level. | GameFramework/LightWeightInstanceSubsystem.h | |
ALightWeightInstanceManager * FindLightWeightInstanceManager
(
UClass* ActorClass, |
Returns the instance manager that handles actors of type ActorClass in level Level | GameFramework/LightWeightInstanceSubsystem.h | |
ALightWeightInstanceManager * FindLightWeightInstanceManager
(
const FActorInstanceHandle& Handle |
Returns the instance manager that handles the given handle. | GameFramework/LightWeightInstanceSubsystem.h | |
ALightWeightInstanceManager * FindOrAddLightWeightInstanceManager
(
UClass* ActorClass, |
Returns the instance manager that handles instances of type Class that live in Level | GameFramework/LightWeightInstanceSubsystem.h | |
ALightWeightInstanceManager * FindOrAddLightWeightInstanceManager
(
UClass& ActorClass, |
Returns the instance manager that handles instances of type Class that live in Level. | GameFramework/LightWeightInstanceSubsystem.h | |
AActor * GetActor_NoCreate
(
const FActorInstanceHandle& Handle |
Returns the actor specified by Handle if it exists. Returns nullptr if it doesn't. | GameFramework/LightWeightInstanceSubsystem.h | |
UClass * GetActorClass
(
const FActorInstanceHandle& Handle |
Returns the class of the actor specified by Handle. | GameFramework/LightWeightInstanceSubsystem.h | |
ULevel * GetLevel
(
const FActorInstanceHandle& Handle |
GameFramework/LightWeightInstanceSubsystem.h | ||
FVector GetLocation
(
const FActorInstanceHandle& Handle |
GameFramework/LightWeightInstanceSubsystem.h | ||
FString GetName
(
const FActorInstanceHandle& Handle |
GameFramework/LightWeightInstanceSubsystem.h | ||
bool IsInLevel
(
const FActorInstanceHandle& Handle, |
Returns true if the object represented by Handle is in InLevel. | GameFramework/LightWeightInstanceSubsystem.h | |
bool RemoveManager
(
ALightWeightInstanceManager* Manager |
Remove a manager from the subsystem, thread safe. | GameFramework/LightWeightInstanceSubsystem.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Returns the class of the instance manager best suited to support instances of type ActorClass. | GameFramework/LightWeightInstanceSubsystem.h | ||
const ALightWeightInstanceManager * GetManagerAt
(
int32 Index |
Returns the light weight instance manager at index Index. | GameFramework/LightWeightInstanceSubsystem.h | |
int32 GetManagerIndex
(
const ALightWeightInstanceManager* Manager |
Returns the index associated with Manager. | GameFramework/LightWeightInstanceSubsystem.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FInt32Vector3 ConvertPositionToCoord
(
const FVector& InPosition |
Helper that converts a position (world space) into a coordinate for the LWI grid. | GameFramework/LightWeightInstanceSubsystem.h | |
static FLightWeightInstanceSubsystem & Get() |
GameFramework/LightWeightInstanceSubsystem.h |