## Uses of Class
bdi4jade.core.Capability

- Packages that use Capability
  Package | Description
  --- | ---
  bdi4jade.core |
  bdi4jade.message |
  bdi4jade.util |
  bdi4jade.util.reasoning |

- - ### Uses of Capability in bdi4jade.core

    Methods in bdi4jade.core that return Capability
    Modifier and Type | Method and Description
    --- | ---
    `Capability` | PlanLibrary.`getCapability()`
    `Capability` | BeliefBase.`getCapability()`
    `Capability` | Capability.`getParent()`
    `Capability` | BDIAgent.`getRootCapability()` Returns the root capability of this agent.

    Methods in bdi4jade.core that return types with arguments of type Capability
    Modifier and Type | Method and Description
    --- | ---
    `java.util.List<Capability>` | BDIAgent.`getAllCapabilities()`
    `java.util.Set<Capability>` | Capability.`getChildren()`

    Methods in bdi4jade.core with parameters of type Capability
    Modifier and Type | Method and Description
    --- | ---
    `void` | BDIAgent.`addCapability(Capability capability)` Adds a capability to this agent.
    `void` | Capability.`addChild(Capability capability)`
    `void` | BDIAgent.`addGoal(Capability owner, Goal goal)` Adds a new goal to this agent to be achieved.
    `void` | BDIAgent.`addGoal(Capability owner, Goal goal, GoalListener goalListener)` Adds a new goal to this agent to be achieved and adds a listener to observe its end.
    `boolean` | BDIAgent.`removeCapability(Capability capability)` Removes a capability from this agent.
    `boolean` | Capability.`removeChild(Capability capability)`
    `void` | PlanLibrary.`setCapability(Capability capability)` Sets the capability of this plan library.
    `void` | BeliefBase.`setCapability(Capability capability)` Sets the capability of this belief base.

    Constructors in bdi4jade.core with parameters of type Capability
    Constructor and Description
    `Capability(java.lang.String id, Capability parent)` Creates a new capability.
    `Capability(java.lang.String id, Capability parent, BeliefBase beliefBase, PlanLibrary planLibrary)` Creates a new capability.
    `Intention(Goal goal, BDIAgent bdiAgent, Capability owner)` Creates a new intention.

  - ### Uses of Capability in bdi4jade.message

    Method parameters in bdi4jade.message with type arguments of type Capability
    Modifier and Type | Method and Description
    --- | ---
    `void` | BDIAgentMsgReceiver.`messageMatched(jade.lang.acl.ACLMessage msg, java.util.Set<Capability> capabilities)`

  - ### Uses of Capability in bdi4jade.util

    Subclasses of Capability in bdi4jade.util
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DefaultCapability` This capability is added in all `BDIAgent`.

  - ### Uses of Capability in bdi4jade.util.reasoning

    Methods in bdi4jade.util.reasoning with parameters of type Capability
    Modifier and Type | Method and Description
    --- | ---
    `void` | DefaultBeliefRevisionStrategy.`reviewBeliefs(Capability capability)`