00001 /* This file is part of CrossZero 00002 * Copyright (C) 2008 Heikki Laitala 00003 * All rights reserved. 00004 * 00005 * Created: Sun Feb 17 2008 by Heikki Laitala 00006 * 00007 * $Revision:$ 00008 */ 00009 00010 #ifndef _CROSSZEROPLAYER_H_ 00011 #define _CROSSZEROPLAYER_H_ 00012 00013 #include "CrossZeroGameField.h" 00014 #include "CrossZeroGeometricObjects.h" 00015 #include <string> 00016 00025 class CrossZeroPlayer 00026 { 00027 public: 00031 CrossZeroPlayer() : _strToken("0"), _strPlayerType("Human") {} 00032 00038 CrossZeroPlayer(const std::string& strToken, const std::string& strType) : _strToken(strToken), _strPlayerType(strType) {} 00042 virtual ~CrossZeroPlayer() {} 00043 00049 void setPlayerToken(const std::string& strToken) { _strToken = strToken;} 00054 std::string getPlayerToken() const {return _strToken;} 00055 00062 virtual CrossZeroPoint<int> getRespond(const CrossZeroGameField *pField = 0) = 0; 00067 std::string getPlayerType() const { return _strPlayerType;} 00068 00069 private: 00070 std::string _strToken; 00071 std::string _strPlayerType; 00072 00073 00074 }; 00075 00076 #endif //_CROSSZEROPLAYER_H_ 00077