class AI_Controller : public Controller, private Program
{
public:
- AI_Controller(const Piece::Colour & newColour, const char * executablePath, const double newTimeout = 2.0) : Controller(newColour), Program(executablePath), timeout(newTimeout) {}
+ AI_Controller(const Piece::Colour & newColour, const char * executablePath, const double newTimeout = 2.0) : Controller(newColour, executablePath), Program(executablePath), timeout(newTimeout) {}
virtual ~AI_Controller() {}
virtual void Message(const char * message) {Program::SendMessage(message);}
+ virtual bool Valid() const {return Program::Running();}
+
private:
const double timeout; //Timeout in seconds for messages from the AI Program