Arcade architecture
IGameModule.hpp
Go to the documentation of this file.
1
13#ifndef IGAMEMODULE_HPP_
14#define IGAMEMODULE_HPP_
15#include <cstddef>
16#include <vector>
17#include <memory>
18#include "IEntity.hpp"
19
29 public:
33 IGameModule() = default;
34
38 virtual ~IGameModule() = default;
39
44 virtual std::size_t getHighScore() const = 0;
45
50 virtual void setHighScore(std::size_t highScore) = 0;
51
56 virtual std::size_t getScore() const = 0;
57
62 virtual void setScore(std::size_t score) = 0;
63
68 virtual std::vector<std::shared_ptr<IEntity>> getEntities() const = 0;
69};
70#endif /* !IGAMEMODULE_HPP_ */
Interface for defining entities in the application.
Interface for game modules.
Definition: IGameModule.hpp:28
virtual std::size_t getHighScore() const =0
Get the high score of the game.
virtual std::size_t getScore() const =0
Get the current score of the game.
IGameModule()=default
Default constructor.
virtual void setHighScore(std::size_t highScore)=0
Set the high score of the game.
virtual std::vector< std::shared_ptr< IEntity > > getEntities() const =0
Get the list of entities in the game.
virtual ~IGameModule()=default
Virtual destructor.
virtual void setScore(std::size_t score)=0
Set the current score of the game.