#include "Pattern.hpp" #include #include #include #include #include #include #ifndef LIFESIMULATOR_HPP #define LIFESIMULATOR_HPP class LifeSimulator { private: std::uint8_t m_width; std::uint8_t m_height; std::vector> m_curr_grid; std::vector> m_buff_grid; std::uint8_t getNeighbors(std::uint8_t x, std::uint8_t y) const; public: LifeSimulator(std::uint8_t sizeX, std::uint8_t sizeY); void insertPattern(const Pattern& pattern, std::uint8_t startX, std::uint8_t startY); void update(); std::uint8_t getSizeX() const; std::uint8_t getSizeY() const; bool getCell(std::uint8_t x, std::uint8_t y) const; }; #endif // LIFESIMULATOR_HPP