Grail (C++)
1.4.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
ISnapshotGenerator.h
1
// Copyright QED Software 2023.
2
3
#ifndef GRAIL_ISNAPSHOT_GENERATOR_H
4
#define GRAIL_ISNAPSHOT_GENERATOR_H
5
6
#include "IDebugSnapshotReceiver.h"
7
#include "ITimestampProvider.h"
8
9
#include <memory>
10
11
namespace
grail
12
{
13
class
ISnapshotGenerator
14
{
15
public
:
16
ISnapshotGenerator
() =
default
;
17
ISnapshotGenerator
(
const
ISnapshotGenerator
&) =
delete
;
18
ISnapshotGenerator
(
ISnapshotGenerator
&&) =
delete
;
19
ISnapshotGenerator
& operator=(
const
ISnapshotGenerator
&) =
delete
;
20
ISnapshotGenerator
& operator=(
ISnapshotGenerator
&&) =
delete
;
21
virtual
~
ISnapshotGenerator
() =
default
;
22
23
virtual
void
SetTimestampProvider(
const
std::shared_ptr<ITimestampProvider>& provider) = 0;
24
virtual
void
ProduceSnapshot() = 0;
25
virtual
void
AddReceiver(
IDebugSnapshotReceiver
* receiver) = 0;
26
virtual
void
RemoveReceiver(
IDebugSnapshotReceiver
* receiver) = 0;
27
virtual
void
Release() = 0;
28
};
29
}
30
31
#endif
grail::IDebugSnapshotReceiver
Definition:
IDebugSnapshotReceiver.h:16
grail::ISnapshotGenerator
Definition:
ISnapshotGenerator.h:13
GrailCore
DebugUtilities
ISnapshotGenerator.h
Generated by
1.8.17