# Class: SubSystemManager
A manager for sub systems to be used with SortedSubIteratingSystem.
# Hierarchy
AbstractSystemManager<SubSystem>↳
SubSystemManager
# 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
# 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
# Defined in
src/core/AbstractSystemManager.ts:125 (opens new window)
# getAll
▸ getAll(): SubSystem[]
# Returns
A list of all entity systems managed by the Engine sorted by priority.
# Inherited from
# 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
# 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