ISystems is an interface for all systems within the ECS architecture. Each system must inherit from this interface and implement a specific method.Allows systems to manipulate entities and their components using a defined operator, in order to execute the logic specific to each system (e.g., movement management, collision handling, etc.).
namespace ecs {
namespace systems {
class ISystems {
public:
virtual void operator()(Registry &, std::shared_ptr<IContext> ctx) = 0;
};
}; // namespace systems
}; // namespace ecs
Method: operator()
Purpose:
Applies the system’s logic to the entities managed by the Registry Class.
Parameters:
Expected Behavior:
ISystems must define this method to update or manipulate entities based on the specific needs of the system.