# Package bdi4jade.plan.planbody

This package contains interfaces and classes that allows representation of plan body, which is an executable piece of code that is instantiated and executed to achieve goals.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  DisposablePlanBody | This interface indicates that a `PlanBody` should be finalized in case of being terminated.
  OutputPlanBody | This interface defines that a `PlanBody` provides output for a goal that is being achieved.
  PlanBody | This interface defines a plan body, which specifies a set of steps to achieve a goal.

- Class Summary
  Class | Description
  --- | ---
  AbstractPlanBody | This class provides an almost complete implementation of the `PlanBody` interface.
  BeliefGoalPlanBody | This plan body aims to achieve a `BeliefGoal`.
  FSMPlanBody | This allows a plan body to inherit from both `AbstractPlanBody` and `FSMBehaviour`.
  ParallelActionPlanBody | This allows a plan body to inherit from both `AbstractPlanBody` and `ParallelBehaviour`.
  ParallelGoalPlanBody | This plan body provides the set of actions to achieve a `ParallelGoal`.
  SequentialActionPlanBody | This allows a plan body to inherit from both `AbstractPlanBody` and `SequentialBehaviour`.
  SequentialGoalPlanBody | This plan body provides the set of actions to achieve a `SequentialGoal`.

## Package bdi4jade.plan.planbody Description

This package contains interfaces and classes that allows representation of plan body, which is an executable piece of code that is instantiated and executed to achieve goals. It also provides a set of useful plan bodies that can be reused across different agents.

Author:
  Ingrid Nunes