Grail (C#)  1.3.0
A multi-platform, modular, universal engine for embedding advanced AI in games.
Grail.Core.DebugUtilities.GrailDebugger Class Reference
Inheritance diagram for Grail.Core.DebugUtilities.GrailDebugger:
Collaboration diagram for Grail.Core.DebugUtilities.GrailDebugger:

Public Member Functions

 GrailDebugger (ITimestampProvider timestampProvider)
 
void AttachToManager (AIManager manager, bool attachToAllEntities=true)
 Attaches the debugger instance to an AIManager More...
 
void DetachFromManager (AIManager manager)
 Detaches the debugger from the currently selected AI Manager and its entities More...
 
void AttachToEntity (AIEntity entity)
 Starts producing debug data for an entity's reasoner More...
 
void DetachFromEntity (AIEntity entity)
 Stops the production of debug data for an entity's reasoner More...
 
void AddDebugSnapshotReceiver (AIManager manager, IDebugSnapshotReceiver receiver)
 Registers a debug snapshot receiver that can react to newly produced debug data More...
 
void RemoveDebugSnapshotReceiver (AIManager manager, IDebugSnapshotReceiver receiver)
 Removes a debug snapshot receiver More...
 
void Update ()
 Creates debug data for entities and managers that the debugger is attached to, notifies registered snapshot receivers More...
 
void OnReasonerSet (AIEntity entity, Reasoner newReasoner)
 

Static Public Attributes

static GrailDebugger
 Creates a new GrailDebugger for a specific AIManager. More...
 

Member Function Documentation

◆ AddDebugSnapshotReceiver()

void Grail.Core.DebugUtilities.GrailDebugger.AddDebugSnapshotReceiver ( AIManager  manager,
IDebugSnapshotReceiver  receiver 
)
inline

Registers a debug snapshot receiver that can react to newly produced debug data

Parameters
receiver

◆ AttachToEntity()

void Grail.Core.DebugUtilities.GrailDebugger.AttachToEntity ( AIEntity  entity)
inline

Starts producing debug data for an entity's reasoner

Parameters
entity

◆ AttachToManager()

void Grail.Core.DebugUtilities.GrailDebugger.AttachToManager ( AIManager  manager,
bool  attachToAllEntities = true 
)
inline

Attaches the debugger instance to an AIManager

Parameters
managerThe manager to attach to
attachToAllEntitiesif set to true, the debugger will automatically attach to reasoners of all entities

◆ DetachFromEntity()

void Grail.Core.DebugUtilities.GrailDebugger.DetachFromEntity ( AIEntity  entity)
inline

Stops the production of debug data for an entity's reasoner

Parameters
entity

◆ DetachFromManager()

void Grail.Core.DebugUtilities.GrailDebugger.DetachFromManager ( AIManager  manager)
inline

Detaches the debugger from the currently selected AI Manager and its entities

◆ RemoveDebugSnapshotReceiver()

void Grail.Core.DebugUtilities.GrailDebugger.RemoveDebugSnapshotReceiver ( AIManager  manager,
IDebugSnapshotReceiver  receiver 
)
inline

Removes a debug snapshot receiver

Parameters
manager
receiver

◆ Update()

void Grail.Core.DebugUtilities.GrailDebugger.Update ( )
inline

Creates debug data for entities and managers that the debugger is attached to, notifies registered snapshot receivers

Member Data Documentation

◆ GrailDebugger

Grail.Core.DebugUtilities.GrailDebugger.GrailDebugger
static

Creates a new GrailDebugger for a specific AIManager.

Parameters
timestampProviderA timestamp provider to be used by the newly created debugger.
aiManagerThe AIManager for which the debugger should be created.
Returns
A new GrailDebugger instance coupled with its respective debug info generator.

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