system.h 432 B

1234567891011121314151617181920
  1. #pragma once
  2. #include <memory>
  3. namespace Engine::Core {
  4. class World;
  5. class System {
  6. public:
  7. System() = default;
  8. System(const System &) = default;
  9. System(System &&) noexcept = default;
  10. auto operator=(const System &) -> System & = default;
  11. auto operator=(System &&) noexcept -> System & = default;
  12. virtual ~System() = default;
  13. virtual void update(World *world, float delta_time) = 0;
  14. };
  15. } // namespace Engine::Core