3 #ifndef ENTITY_FACTORY_H 4 #define ENTITY_FACTORY_H 6 #include "../logic/entity/player/player.h" 7 #include "../logic/entity/ball/ball.h" 8 #include "../logic/entity/wall/wall.h" 9 #include "../logic/entity/block/block.h" 26 virtual unique_ptr<arkanoid::Player> createPlayer() = 0;
33 virtual vector<unique_ptr<arkanoid::Wall>> createWalls() = 0;
42 virtual vector<unique_ptr<arkanoid::Block>> createBlocks(
const string &file) = 0;
49 virtual unique_ptr<arkanoid::Ball> createBall() = 0;
Abstract Factory: Creates arkanoid::Entity.