Class SystemManager

Class Documentation

class SystemManager

Менеджер систем для регистрации, включения/выключения и обновления систем.

Управляет коллекцией систем, обновляя их в порядке регистрации.

Public Functions

SystemManager() = default
template<typename T, typename ...Args>
inline SystemId registerSystem(Args&&... args)

Регистрирует новую систему в менеджере.

Создает экземпляр системы и добавляет его в список управления

Параметры шаблона:
  • T – Тип системы (должен быть производным от ISystem).

  • Args – Типы аргументов для конструктора системы.

Параметры:

args – Аргументы для передачи конструктору системы.

Результат:

Идентификатор зарегистрированной системы.

void enableSystem(SystemId systemId)

Включает систему по идентификатору.

Параметры:

systemId – Идентификатор системы, которую нужно включить.

void disableSystem(SystemId systemId)

Выключает систему по идентификатору.

Параметры:

systemId – Идентификатор системы, которую нужно выключить.

void update(float deltaTime)

Обновляет все активные системы

Вызывает update() для всех включенных систем в порядке регистрации

Параметры:

deltaTime – Время, прошедшее с предыдущего обновления