(C++)  1.0.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
ISimulatedGameStateTranslator.hh
1 #ifndef GRAIL_SIMULATED_GAME_STATE_TRANSLATOR_H
2 #define GRAIL_SIMULATED_GAME_STATE_TRANSLATOR_H
3 
4 #include <functional>
5 #include <memory>
6 
7 namespace grail
8 {
9  namespace simulation
10  {
11  class SimulatedGame;
12 
14  {
15  public:
16  virtual ~ISimulatedGameStateTranslator() = default;
17 
22  virtual std::pair<std::unique_ptr<SimulatedGame>, std::shared_ptr<class ISimulatedGameUnit>> CreateGame() = 0;
23 
28  virtual void StartRefreshingGameState(const class AIEntity& entity, std::function<void()> refreshingFinishedCallback) = 0;
29  };
30  }
31 }
32 
33 #endif // GRAIL_SIMULATED_ACTION_TRANSLATOR_H
The AIEntity class - Defines a basic object which can execute behaviors.
Definition: AIEntity.hh:39
Definition: ISimulatedGameStateTranslator.hh:14
virtual std::pair< std::unique_ptr< SimulatedGame >, std::shared_ptr< class ISimulatedGameUnit > > CreateGame()=0
Return the SimulatedGame object an the unit paired with it. The paired unit is a virtual representati...
virtual void StartRefreshingGameState(const class AIEntity &entity, std::function< void()> refreshingFinishedCallback)=0
This method is called when SimulatedGameReasoner requests for a new start state. When you are done wi...