#ifndef _CHESSBOARD_H #define _CHESSBOARD_H #include <vector> #include "Figure.h" #include "Position.h" #include "Cell.h" #include <utility> #include <iostream> class Chessboard { private: Cell** board; vector<std::pair<Position, Position>> moves; vector<Position> get_possible_moves(Figure* fig); public: Chessboard(); Chessboard(vector<Figure*>); void create_move(Position pos1, Position pos2); Cell get_cell(Position pos); Cell get_icell(int index, int jindex); friend std::ostream& operator <<(std::ostream& out, Chessboard& chess); }; #endif