Grail (C++)  1.3.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
IDebugSnapshotReceiver.h
1 // Copyright QED Software 2023.
2 
3 #ifndef GRAIL_IDEBUG_SNAPSHOT_RECEIVER
4 #define GRAIL_IDEBUG_SNAPSHOT_RECEIVER
5 
6 namespace grail
7 {
8  namespace data
9  {
10  struct GrailStateSnapshot;
11  struct UtilityReasonerSnapshot;
12  struct PlannerReasonerSnapshot;
13  struct SimulatedGameReasonerSnapshot;
14  }
15 
17  {
18  public:
19  IDebugSnapshotReceiver() = default;
22  IDebugSnapshotReceiver& operator=(const IDebugSnapshotReceiver&) = delete;
23  IDebugSnapshotReceiver& operator=(IDebugSnapshotReceiver&&) = delete;
24  virtual ~IDebugSnapshotReceiver() = default;
25 
26  virtual void ProcessSnapshot(data::GrailStateSnapshot& snapshot) = 0;
27  virtual void ProcessSnapshot(data::UtilityReasonerSnapshot& snapshot) = 0;
28  virtual void ProcessSnapshot(data::PlannerReasonerSnapshot& snapshot) = 0;
29  virtual void ProcessSnapshot(data::SimulatedGameReasonerSnapshot& snapshot) = 0;
30  };
31 }
32 #endif
grail::data::UtilityReasonerSnapshot
Definition: UtilityReasonerSnapshot.h:15
grail::data::SimulatedGameReasonerSnapshot
Definition: SimulatedGamesSnapshots.h:129
grail::data::PlannerReasonerSnapshot
Definition: PlannerSnapshots.h:92
grail::IDebugSnapshotReceiver
Definition: IDebugSnapshotReceiver.h:16
grail::data::GrailStateSnapshot
Definition: GrailStateSnapshot.h:18