## Uses of Interface
bdi4jade.belief.Belief

- Packages that use Belief
  Package | Description
  --- | ---
  bdi4jade.belief | This package contains interfaces and classes that allows representation of beliefs of an agent, which are stored in belief bases, part of agent capabilities.
  bdi4jade.core | This package contains the key classes of BDI4JADE.
  bdi4jade.event | This package contains interfaces and classes that allows creating listeners of events that occur in an agent, such as updating beliefs or achieving goals, and representing such events.
  bdi4jade.exception | This package contains interfaces and classes that allows representation of exceptions that may occur during the execution of BDI agents.
  bdi4jade.goal | This package contains interfaces and classes that allows representation of goals and softgoals of an agent.
  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.

- - ### Uses of Belief in bdi4jade.belief

    Subinterfaces of Belief in bdi4jade.belief
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `BeliefSet<K,V>` This interface represents a belief that has a set of values associated with it.
    `interface` | `Predicate<K>` This interface represents a belief that is a logic predicate.

    Classes in bdi4jade.belief that implement Belief
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractBelief<K,V>` This is an abstract class that implements the `Belief` interface.
    `class` | `AbstractBeliefSet<K,V>` This is an abstract class that implements the `BeliefSet` interface, and extends the `AbstractBeliefSet` class, parameterizing it with a parameterized `Set`.
    `class` | `DerivedBelief<K,V>` This class represents a belief whose value is derived from other beliefs of a belief base.
    `class` | `DerivedPredicate<K>` This class represents a logic predicate that is derived from other agent belief.
    `class` | `PersistentBelief<K,V>` This class extends the `AbstractBelief` and represents a persistent belief, which is persisted in a permanent memory.
    `class` | `TransientBelief<K,V>` This class extends the `AbstractBelief` class and represents a transient belief, which is not persisted in a permanent memory.
    `class` | `TransientBeliefSet<K,V>` This class extends the `AbstractBeliefSet` class and implements `BeliefSet` interface, representing a transient belief set, which is not persisted in a permanent memory.
    `class` | `TransientPredicate<K>` This class extends the `TransientBelief` class and represents a transient propositional belief, which is not persisted in a permanent memory.

    Methods in bdi4jade.belief that return Belief
    Modifier and Type | Method and Description
    --- | ---
    `Belief<?,?>` | BeliefBase.`getBelief(java.lang.Object name)` Retrieves a belief from the belief base.
    `Belief<?,?>` | BeliefBase.`removeBelief(java.lang.Object name)` Removes a belief from the belief base.

    Methods in bdi4jade.belief that return types with arguments of type Belief
    Modifier and Type | Method and Description
    --- | ---
    `java.util.Collection<Belief<?,?>>` | BeliefBase.`getBeliefs()` Gets all beliefs of this belief base and the belief bases of the whole-capabilities of the capability that this belief base belongs to.
    `java.util.Set<Belief<?,?>>` | BeliefBase.`getBeliefsAssignableFrom(java.lang.Class<?> beliefNameType)` Returns all beliefs whose name is of the given class or any other class that is assignable to this class.
    `java.util.Set<Belief<?,?>>` | BeliefBase.`getBeliefsByType(java.lang.Class<?> beliefNameType)` Returns all beliefs whose name is of the given class.
    `java.util.Set<Belief<?,?>>` | BeliefBase.`getLocalBeliefs()` Gets all beliefs of this specific belief base.
    `java.util.Set<Belief<?,?>>` | BeliefBase.`getLocalBeliefsAssignableFrom(java.lang.Class<?> beliefNameType)` Returns all beliefs whose name is of the given class or any other class that is assignable to this class.
    `java.util.Set<Belief<?,?>>` | BeliefBase.`getLocalBeliefsByType(java.lang.Class<?> beliefNameType)` Returns beliefs whose name is of the given class.

    Methods in bdi4jade.belief with parameters of type Belief
    Modifier and Type | Method and Description
    --- | ---
    `void` | BeliefBase.`addBelief(Belief<?,?> belief)` Adds a belief to the belief base.
    `void` | BeliefBase.`addOrUpdateBelief(Belief<?,?> belief)` Adds a belief to the belief base.

    Constructor parameters in bdi4jade.belief with type arguments of type Belief
    Constructor and Description
    `BeliefBase(Capability capability, java.util.Set<Belief<?,?>> beliefs)` Creates a belief base associated with a capability and adds the beliefs in the provided belief set as the initial beliefs of this belief base.

  - ### Uses of Belief in bdi4jade.core

    Methods in bdi4jade.core that return types with arguments of type Belief
    Modifier and Type | Method and Description
    --- | ---
    `java.util.Collection<Belief<?,?>>` | BDIAgent.`getBeliefs()` Returns a collection of all beliefs from all capabilities of this agent.
    `java.util.Collection<Belief<?,?>>` | AbstractBDIAgent.`getBeliefs()`

    Constructor parameters in bdi4jade.core with type arguments of type Belief
    Constructor and Description
    `Capability(java.util.Set<Belief<?,?>> initialBeliefs, java.util.Set<Plan> initialPlans)` Creates a new capability with a generated id.
    `Capability(java.lang.String id, BeliefBase beliefBase, java.util.Set<Belief<?,?>> initialBeliefs, PlanLibrary planLibrary, java.util.Set<Plan> initialPlans)` Creates a new capability with the given id, or a generated one if it is null.
    `Capability(java.lang.String id, java.util.Set<Belief<?,?>> initialBeliefs, java.util.Set<Plan> initialPlans)` Creates a new capability with the given id.

  - ### Uses of Belief in bdi4jade.event

    Methods in bdi4jade.event that return Belief
    Modifier and Type | Method and Description
    --- | ---
    `Belief<?,?>` | BeliefEvent.`getBelief()` Returns the belief over which the event has occurred.

    Methods in bdi4jade.event with parameters of type Belief
    Modifier and Type | Method and Description
    --- | ---
    `void` | BeliefEvent.`setBelief(Belief<?,?> belief)` Sets the belief over which the event has occurred.

    Constructors in bdi4jade.event with parameters of type Belief
    Constructor and Description
    `BeliefEvent(Belief<?,?> belief)` Creates a belief event.
    `BeliefEvent(Belief<?,?> belief, BeliefEvent.Action action)` Creates a belief event.
    `BeliefEvent(Belief<?,?> belief, BeliefEvent.Action action, java.lang.Object args)` Creates a belief event.

  - ### Uses of Belief in bdi4jade.exception

    Methods in bdi4jade.exception that return Belief
    Modifier and Type | Method and Description
    --- | ---
    `Belief<?,?>` | BeliefAlreadyExistsException.`getBelief()`

    Constructors in bdi4jade.exception with parameters of type Belief
    Constructor and Description
    `BeliefAlreadyExistsException(Belief<?,?> belief)` Creates a new instance of BeliefAlreadyExistsException.

  - ### Uses of Belief in bdi4jade.goal

    Fields in bdi4jade.goal declared as Belief
    Modifier and Type | Field and Description
    --- | ---
    `protected Belief<K,?>` | AbstractBeliefGoal.`outputBelief`

    Methods in bdi4jade.goal that return Belief
    Modifier and Type | Method and Description
    --- | ---
    `Belief<K,?>` | BeliefGoal.`getOutputBelief()` Returns the belief which is the output of this goal achievement.
    `Belief<K,?>` | AbstractBeliefGoal.`getOutputBelief()` Returns the belief which is the output of this goal achievement.

    Methods in bdi4jade.goal with parameters of type Belief
    Modifier and Type | Method and Description
    --- | ---
    `void` | BeliefGoal.`setOutputBelief(Belief<K,?> belief)` Sets the belief which is the output of this goal achievement.
    `void` | AbstractBeliefGoal.`setOutputBelief(Belief<K,?> belief)` Sets the belief which is the output of this goal achievement.

  - ### Uses of Belief in bdi4jade.plan.planbody

    Methods in bdi4jade.plan.planbody that return Belief
    Modifier and Type | Method and Description
    --- | ---
    `Belief<?,?>` | BeliefGoalPlanBody.`getOutputBelief()`