5
#include "../DependencyGraph/Edge.h"
6
#include "../DependencyGraph/Configuration.h"
8
namespace DependencyGraph {
14
virtual std::string PlayerName() =0;
15
virtual DependencyGraph::Edge *Turn(const Configuration::container_type &edges) =0;
16
virtual DependencyGraph::Configuration *Turn(const Edge::container_type &configurations) =0;
17
virtual void AnnounceStart(GamePosition startPosition, const iPlayer *attacker, const iPlayer *defender) =0;
18
virtual void AnnounceNextPosition(GamePosition nextPosition) =0;
19
virtual void AnnounceEdgePicked(Edge *edge) =0;
20
virtual void AnnounceConfigurationPicked(Configuration *configuration) =0;
21
virtual void AnnounceEnd(GamePosition finalPosition, iPlayer *winner, iPlayer *looser) =0;