Bomberman
Public Member Functions | List of all members
BBM::MovableSystem Class Reference

A system to handle movable entities. This system update velocity based on accelerations and positions based on velocity. More...

#include <MovableSystem.hpp>

Inheritance diagram for BBM::MovableSystem:
Collaboration diagram for BBM::MovableSystem:

Public Member Functions

void onFixedUpdate (WAL::ViewEntity< MovableComponent, PositionComponent > &entity) override
 
 MovableSystem (WAL::Wal &wal)
 A default constructor. More...
 
 MovableSystem (const MovableSystem &)=default
 A movable system is copy constructable. More...
 
 ~MovableSystem () override=default
 A default destructor. More...
 
MovableSystemoperator= (const MovableSystem &)=delete
 A system is not assignable. More...
 
- Public Member Functions inherited from WAL::System< MovableComponent, PositionComponent >
 ~System () override=default
 A virtual, default, destructor. More...
 
 System (System &&) noexcept=default
 A system can be moved. More...
 
View< Dependencies... > & getView () override
 Get a view of all entities containing every dependencies of this system. More...
 
virtual void onUpdate (ViewEntity< Dependencies... > &entity, std::chrono::nanoseconds dtime)
 Update the corresponding component of the given entity. More...
 
virtual void onFixedUpdate (ViewEntity< Dependencies... > &entity)
 An alternative of onUpdate that is called every 8ms (120 times per seconds). If the system slow down, it will try to catch up. More...
 
virtual void onSelfUpdate (std::chrono::nanoseconds dtime)
 A method called after all entities that this system manage has been updated. More...
 
void update (std::chrono::nanoseconds dtime) final
 Update the whole system (every entities that this system is responsible can be updated. More...
 
void fixedUpdate () final
 An alternative of update that is called every 8ms (120 times per seconds). If the system slow down, it will try to catch up. More...
 
- Public Member Functions inherited from WAL::ISystem
virtual ~ISystem ()=default
 A virtual default destructor. More...
 

Additional Inherited Members

- Protected Member Functions inherited from WAL::System< MovableComponent, PositionComponent >
 System (Wal &wal)
 A system can't be instantiated, it should be derived. More...
 
 System (const System &)=default
 A system can't be instantiated, it should be derived. More...
 
Systemoperator= (const System &)=default
 A system can't be instantiated, it should be derived. More...
 
- Protected Attributes inherited from WAL::System< MovableComponent, PositionComponent >
Wal_wal
 A reference to the ECS. More...
 

Detailed Description

A system to handle movable entities. This system update velocity based on accelerations and positions based on velocity.

Constructor & Destructor Documentation

◆ MovableSystem() [1/2]

BBM::MovableSystem::MovableSystem ( WAL::Wal wal)
explicit

A default constructor.

◆ MovableSystem() [2/2]

BBM::MovableSystem::MovableSystem ( const MovableSystem )
default

A movable system is copy constructable.

◆ ~MovableSystem()

BBM::MovableSystem::~MovableSystem ( )
overridedefault

A default destructor.

Member Function Documentation

◆ onFixedUpdate()

void BBM::MovableSystem::onFixedUpdate ( WAL::ViewEntity< MovableComponent, PositionComponent > &  entity)
override

◆ operator=()

MovableSystem& BBM::MovableSystem::operator= ( const MovableSystem )
delete

A system is not assignable.


The documentation for this class was generated from the following files: