# Uses of Package
madkit.kernel

- Packages that use madkit.kernel
  Package | Description
  --- | ---
  madkit.action | Contains enumerations useful for (1) interacting with agents and (2) building customized GUI.
  madkit.gui | Contains classes for Agent GUI authoring in MaDKit.
  madkit.gui.menu | Contains classes for building MaDKit GUI menus.
  madkit.gui.toolbar | Contains classes for building MaDKit GUI toolbars.
  madkit.kernel | Provides classes that are fundamental to the design of MaDKit applications.
  madkit.message | Contains subclasses of `Message` which could be easily reused.
  madkit.message.hook | Contains message classes useful for monitoring MaDKit kernel events.
  madkit.simulation.activator | Contains activators for simulation authoring.
  madkit.simulation.model | Contains classes designed for encapsulating simulation models.
  madkit.simulation.probe | Contains probes for simulation authoring.
  madkit.simulation.scheduler | Contains specialized Scheduler agents
  madkit.simulation.viewer | Contains default viewer classes for simulation visualization.

- Classes in madkit.kernel used by madkit.action
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  Scheduler Scheduler is the core agent for defining multi-agent based simulations.

- Classes in madkit.kernel used by madkit.gui
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.

- Classes in madkit.kernel used by madkit.gui.menu
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.

- Classes in madkit.kernel used by madkit.gui.toolbar
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.

- Classes in madkit.kernel used by madkit.kernel
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  AbstractAgent.ReturnCode This class enumerates all the return codes which could be obtained with essential methods of the `AbstractAgent` and `Agent` classes.
  AbstractAgent.State An agent state.
  Activator This class defines a tool for scheduling mechanism.
  Agent The super class of all MaDKit threaded agents, v 5.
  AgentAddress Identifies an agent within the artificial society.
  AgentLogger This class defines a logger specialized for MaDKit agents.
  ConversationID This class represents the conversation ID to which a message belongs.
  Gatekeeper This interface is implemented by objects which are used to verify if an agent is allowed to play a certain role in a group.
  KernelAddress This class represents a unique identifier for MaDKit kernel.
  Madkit MaDKit 5 booter class.
  Madkit.BooleanOption Option used to activate or disable features on startup.
  Madkit.LevelOption MaDKit options valued with a string representing a `Level` value.
  Madkit.Option MaDKit options which are valued with a string representing parameters.
  MadkitClassLoader The MadkitClassLoader is the class loader used by MaDKit.
  MadkitOption Every regular MaDKit Options implements this interface.
  MadkitProperties The properties object used within MaDKit.
  Message The generic MaDKit message class.
  Probe This class defines a watcher's generic probe.
  Scheduler.SimulationState A simulation state.
  Scheduler.SimulationTime

- Classes in madkit.kernel used by madkit.message
  Class and Description
  AgentAddress Identifies an agent within the artificial society.
  Message The generic MaDKit message class.

- Classes in madkit.kernel used by madkit.message.hook
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  AgentAddress Identifies an agent within the artificial society.
  Message The generic MaDKit message class.

- Classes in madkit.kernel used by madkit.simulation.activator
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  Activator This class defines a tool for scheduling mechanism.

- Classes in madkit.kernel used by madkit.simulation.model
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.

- Classes in madkit.kernel used by madkit.simulation.probe
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  Probe This class defines a watcher's generic probe.

- Classes in madkit.kernel used by madkit.simulation.scheduler
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  Activator This class defines a tool for scheduling mechanism.
  Agent The super class of all MaDKit threaded agents, v 5.
  Scheduler Scheduler is the core agent for defining multi-agent based simulations.

- Classes in madkit.kernel used by madkit.simulation.viewer
  Class and Description
  AbstractAgent The super class of all MaDKit agents, v 5.
  Watcher This class defines a generic watcher agent.

Fabien Michel, Olivier Gutknecht, Jacques Ferber - February 17 2020