All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ode.ai.0.1.6.source-code.PlannerDebugger Maven / Gradle / Ivy

There is a newer version: 0.1.7
Show newest version
package com.gracefulcode.ai;

/**
 * PlannerDebugger allows you visibiliy into the inner workings of the AI
 * system for debugging purposes. You should not use this to affect your actual
 * behavior. If you have a use case where you need this information for actual
 * behavior, please let me know so that I can support your use case officially.
 *
 * @version 0.1
 * @since 0.1
 */
public interface PlannerDebugger> {
	/**
	 * Called when stepState is called, before anything else.
	 */
	public void didStartStep();

	/**
	 * Called when we start evaluating whether this behavior is viable. This is
	 * called before any sanity checking, so every single behavior will go
	 * through this.
	 *
	 * @param behavior The behavior that is being evaluated.
	 */
	public void startEvaluateBehavior(B behavior);

	/**
	 * Called after we are done evaluating this behavior. This is called for
	 * every single behavior, regardless of isRunnable, or any other sanity
	 * checks.
	 *
	 * @param behavior The behavior that was being evaluated.
	 */
	public void endEvaluateBehavior(B behavior);

	/**
	 * This step is done being evaluated.
	 *
	 * @param hasMoreWork True if the planner does not consider itself done.
	 *        False otherwise.
	 */
	public void didEndStep(boolean hasMoreWork);

	/**
	 * Called whenever a world state is being added to our list. Note that this
	 * is NOT called if we found a new path to an existing world state.
	 *
	 * @param worldState The world state that we have newly discovered.
	 */
	public void didAddState(WS worldState);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy