# Class: SubSystemManager

A manager for sub systems to be used with SortedSubIteratingSystem.

# Hierarchy

# Table of contents

# Constructors

# Accessors

# Methods

# Constructors

# constructor

new SubSystemManager(container)

# Parameters

Name Type Description
container ContainerInstance The container instance to use.

# Inherited from

AbstractSystemManager.constructor

# Defined in

src/core/AbstractSystemManager.ts:32 (opens new window)

# Accessors

# delayOperations

Protected set delayOperations(shouldDelay): void

# Parameters

Name Type
shouldDelay boolean

# Returns

void

# Inherited from

AbstractSystemManager.delayOperations

# Defined in

src/core/AbstractSystemManager.ts:37 (opens new window)

# Methods

# add

add<T>(constructor, priority?): T

Adds the system to this manager.

# Type parameters

Name Type Description
T extends SubSystem<T> The entity system class.

# Parameters

Name Type Default value Description
constructor SystemConstructor<T> undefined The system to add.
priority number 0 The priority to execute this system with (lower means higher priority).

# Returns

T

The newly created system.

# Inherited from

AbstractSystemManager.add

# Defined in

src/core/AbstractSystemManager.ts:54 (opens new window)


# get

get<T>(clazz): undefined | T

Get a system by its class.

# Type parameters

Name Type Description
T extends SubSystem<T> The entity system class.

# Parameters

Name Type Description
clazz SystemConstructor<T> The constructor for T.

# Returns

undefined | T

The T of the specified class, or undefined if no such system exists.

# Inherited from

AbstractSystemManager.get

# Defined in

src/core/AbstractSystemManager.ts:125 (opens new window)


# getAll

getAll(): SubSystem[]

# Returns

SubSystem[]

A list of all entity systems managed by the Engine sorted by priority.

# Inherited from

AbstractSystemManager.getAll

# Defined in

src/core/AbstractSystemManager.ts:132 (opens new window)


# hasEnabledSystems

hasEnabledSystems(): boolean

# Returns

boolean

True if any added system is enabled.

# Inherited from

AbstractSystemManager.hasEnabledSystems

# Defined in

src/core/AbstractSystemManager.ts:42 (opens new window)


# remove

remove(clazz): void

Removes the system from this Engine.

# Parameters

Name Type Description
clazz SystemConstructor<SubSystem> The System class to remove.

# Returns

void

# Inherited from

AbstractSystemManager.remove

# Defined in

src/core/AbstractSystemManager.ts:84 (opens new window)


# removeAll

removeAll(): void

Removes all systems registered with this Engine.

# Returns

void

# Inherited from

AbstractSystemManager.removeAll

# Defined in

src/core/AbstractSystemManager.ts:105 (opens new window)