#pragma once #include #include "move.hpp" #include "game_state.hpp" namespace engine { class MoveGenerator { public: MoveGenerator(); // generate moves for a specific piece; pieceId == 0 -> all pieces for player std::vector generateForPlayer(const GameState& state, int playerId) const; std::vector generateForPiece(const GameState& state, PieceId pieceId) const; }; } // namespace engine