(C++)  1.1.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
grail::UtilityReasonerSnapshotGenerator Class Reference

The UtilityReasonerSnapshotGenerator class - Class responsible for generating snapshots of utility reasoner's state, which can be analyzed in Grail Tool. More...

#include <UtilityReasonerSnapshotGenerator.h>

Inheritance diagram for grail::UtilityReasonerSnapshotGenerator:
Collaboration diagram for grail::UtilityReasonerSnapshotGenerator:

Public Member Functions

 UtilityReasonerSnapshotGenerator (UtilityReasoner *observedReasoner, size_t entityId)
 UtilityReasonerSnapshotGenerator - Constructor. More...
 
bool TryProduceSnapshot (UtilityReasonerSnapshot &outSnapshot) override
 TryProduceSnapshot - Attempts producing reasoner snapshot. More...
 
void PassSnapshotToReceiver (IDebugSnapshotReceiver &receiver, UtilityReasonerSnapshot &snapshot) override
 PassSnapshotToReceiver - Sends snapshot to snapshot receiver. More...
 
virtual void Release () override
 Release - Disables snapshots production for the reasoner provided in constructor.
 
- Public Member Functions inherited from grail::SnapshotGenerator< UtilityReasonerSnapshot >
 SnapshotGenerator (const SnapshotGenerator &)=default
 
 SnapshotGenerator (SnapshotGenerator &&)=default
 
SnapshotGeneratoroperator= (const SnapshotGenerator &)=default
 
SnapshotGeneratoroperator= (SnapshotGenerator &&)=default
 
void AddReceiver (IDebugSnapshotReceiver *receiver) override
 Registers a receiver for newly created debug snapshots.
 
void RemoveReceiver (IDebugSnapshotReceiver *receiver) override
 Removes a snapshot receiver.
 
void ProduceSnapshot () override
 Produces a debug snapshot and sends it to all registered receivers.
 
void SetTimestampProvider (const std::shared_ptr< ITimestampProvider > &provider) override
 
- Public Member Functions inherited from grail::ISnapshotGenerator
 ISnapshotGenerator (const ISnapshotGenerator &)=delete
 
 ISnapshotGenerator (ISnapshotGenerator &&)=delete
 
ISnapshotGeneratoroperator= (const ISnapshotGenerator &)=delete
 
ISnapshotGeneratoroperator= (ISnapshotGenerator &&)=delete
 

Additional Inherited Members

Detailed Description

The UtilityReasonerSnapshotGenerator class - Class responsible for generating snapshots of utility reasoner's state, which can be analyzed in Grail Tool.

Constructor & Destructor Documentation

◆ UtilityReasonerSnapshotGenerator()

grail::UtilityReasonerSnapshotGenerator::UtilityReasonerSnapshotGenerator ( UtilityReasoner observedReasoner,
size_t  entityId 
)

UtilityReasonerSnapshotGenerator - Constructor.

Parameters
observedReasoner- Reasoner whose snapshots will be produced
entityId- ID of entity which owns the observed Reasoner.

Member Function Documentation

◆ PassSnapshotToReceiver()

void grail::UtilityReasonerSnapshotGenerator::PassSnapshotToReceiver ( IDebugSnapshotReceiver receiver,
UtilityReasonerSnapshot snapshot 
)
overridevirtual

PassSnapshotToReceiver - Sends snapshot to snapshot receiver.

Parameters
receiver- Objects receiving a snapshot.
snapshot- Snapshot being sent.

Implements grail::SnapshotGenerator< UtilityReasonerSnapshot >.

◆ TryProduceSnapshot()

bool grail::UtilityReasonerSnapshotGenerator::TryProduceSnapshot ( UtilityReasonerSnapshot outSnapshot)
overridevirtual

TryProduceSnapshot - Attempts producing reasoner snapshot.

Parameters
outSnapshot- If operation was successful contains resulting snapshot.
Returns
True if attempt was successful, false otherwise.

Implements grail::SnapshotGenerator< UtilityReasonerSnapshot >.


The documentation for this class was generated from the following files: