All Classes and Interfaces
Class
Description
Represents the data associated with an action, including descriptions, icons, and
keyboard shortcuts.
Defines an action for JavaFX.
Utility class for creating
Action
for agents.An Action which properties could be set using an
ActionData
.This class defines a tool for scheduling mechanism.
The super class of all MaDKit agents.
This enumeration contains common agent actions that they can perform.
This class represents an address an agent can have within the artificial society.
This class extends the AgentFormatter to provide a specific file formatter for agents.
This class extends the Formatter class to provide a custom log formatter for agents.
This exception is thrown when an agent is interrupted by an
InterruptedException
while executing a task which is able to react to this
exception.A message which is sent to agents that have requested a hook on
HookMessage.AgentActionEvent.AGENT_STARTED
or
HookMessage.AgentActionEvent.AGENT_TERMINATED
This class provides a text area for displaying the log of an agent.
This class defines a
Logger
specialized for MaDKit agents.A JavaFX VBox that contains a default menu bar for an agent.
An Action that directly calls the
Agent.handleRequestActionMessage(RequestActionMessage)
method of an agent when
triggered.This Exception is thrown when an agent runtime error occurs.
A message class that conveys a boolean value.
CanvasDrawerGUI extends
ViewerDefaultGUI
so that a canvas is used for rendering
the simulation.Root class of messages which are sent to agents that have requested hooks to
the kernel
This class represents a community within the MaDKit kernel.
A filter that selects messages based on their conversation ID.
This class represents the conversation ID to which a message belongs.
A Daemon Agent will automatically stop when no other active thread is running in the
system.
A behavior activator that is designed to work with a
DateBasedDiscreteEventScheduler
, that is following a discrete-event simulation
scheme.This class defines a scheduler for discrete event simulation.
This class encapsulates the time of the simulation.
This class provides a default GUI for an agent using JavaFX.
An activator that works using a discrete-event simulation scheme.
Annotation to specify the engine agents of a simulation.
This parameterizable class could be used to build a message tagged with an enumeration
and conveying any java objects using an array of Object.
A 2D environment for simulations.
Enum representing various error messages used in the application.
Class representing a check action in the JavaFX GUI.
The `FXAgentStage` class extends the JavaFX
Stage
class to provide a stage that
is associated with an `Agent`.Provides a wrapper around the JavaFX
Platform
class with additional
functionality for managing calls to the JavaFX Platform.The Class FXInstance.
The `FXOutputPane` class extends the JavaFX
BorderPane
class to provide a panel
that displays an agent's logging activity.This interface is implemented by objects which are used to verify if an agent is
allowed to play a certain role in a group.
Global actions that can be triggered from anywhere during execution.
This class represents a group, containing roles played by agents.
This message could be used to request a kernel's hook on agent actions so that the
sender will be kept informed when an agent performed particular action.
Enumeration representing agent actions that could be monitored using hooks.
Internationalization help class containing only static methods.
A message class that conveys an integer.
Enum representing kernel actions.
This class represents a unique identifier for MaDKit kernel.
The `KernelConfig` class extends `PropertiesConfiguration` to provide additional
configuration capabilities specific to the MaDKit kernel.
KernelMessage is a message that can be sent to the kernel agent.
A Viewer agent specialized in line chart drawing.
Implements Constants which are used for the primary CGR organization places.
MDK kernel core groups.
MDK kernel core roles.
The `Madkit` class is the main entry point for the MaDKit platform.
The MadkitClassLoader is the class loader used by MaDKit.
This class represents the mailbox of an Agent
This class could be used to build message conveying
Map
objects between MaDKit
agents.This class extends the Formatter class to provide a custom log formatter for MDK.
Utility class to create menus with default actions for a given agent.
The generic MaDKit message class.
A message which is sent to agents that have requested a hook on
HookMessage.AgentActionEvent.AGENT_STARTED
or
HookMessage.AgentActionEvent.AGENT_TERMINATED
Instances of classes that implement this interface are used to filter messages when
consulting the mailbox.
This class provides utility methods for working with collections of messages.
An activator that invokes a single method on a group of agents.
Utilities for finding method references in Agent classes.
This class provides a way to find a
MethodHandle
from a given Class
and
a method name.This parameterizable class could be used to convey any Java Object between MaDKit
agents.
This class is responsible for managing the organization of the artificial society.
A message which is sent to agents that have requested a hook on
HookMessage.AgentActionEvent.CREATE_GROUP
,
HookMessage.AgentActionEvent.REQUEST_ROLE
,
HookMessage.AgentActionEvent.LEAVE_GROUP
, or
HookMessage.AgentActionEvent.LEAVE_ROLE
This class defines a watcher's generic probe.
This probe inspects a field of type T on a group of agents.
This class is used to create a property sheet from an object's fields.
This annotation is used to mark a field as a boolean that should be randomized when
Randomness.randomizeFields(Object, java.util.random.RandomGenerator)
is used.This annotation is used to mark a field as a double that should be randomized when
Randomness.randomizeFields(Object, java.util.random.RandomGenerator)
is used.Annotation to specify that a float field should be randomized when
Randomness.randomizeFields(Object, java.util.random.RandomGenerator)
is used.This annotation is used to mark a field as an integer that should be randomized when
Randomness.randomizeFields(Object, java.util.random.RandomGenerator)
is used.This annotation is used to mark a field as a string that should be randomized when
Randomness.randomizeFields(Object, java.util.random.RandomGenerator)
is used.Provides various utility methods related to randomness with MaDKit.
Utilities for finding method references in Agent classes.
A message used to model a request made to an agent to perform an action that
corresponds to an internal method call.
An action that sends a
RequestActionMessage
to an agent.Reifying the notion of Role in AGR.
A Viewer that displays the population of roles in the artificial organization
Scheduler is the core agent for defining multi-agent based simulations in MaDKit.
A simulation state.
Enum representing operations which could be done by a
Scheduler
agent.This message class could be used to interact with a Scheduler agent.
A filter that accepts message based on the sender's role.
An agent class designed to be used with the default simulation engine provided by this
package.
This class represents an environment in which agents evolve.
Main class for launching a simulation.
This class is a simulation engine agent that could be used to implement some common
parts of a simulation model.
The default groups and roles used by the simulation engine for the organization of a
simulation community.
Class representing time in a simulation.
A property editor for editing double values using a
Slider
.Annotation to specify which fields, among those annotated with
UIProperty
,
should be displayed as sliders when using PropertySheetFactory
methods to
create a PropertySheet
Sliders from JavaFX only work with double values, so the annotated field must be of
type double.A message class that conveys a string.
Defines key roles used by the MaDKit kernel or regular agents to achieve specific CGR
queries.
This class extends the Handler class to provide a custom log handler that outputs log
records to a JavaFX TextArea.
A scheduler that uses a
TickBasedTimer
to simulate the time.A timer based on ticks for simulation purposes.
This class provides utility methods to create tool bars for agents
Annotation to mark a field as a parameter in GUI built using predefined JavaFX agents
GUI such as
DefaultAgentGUI
.A Viewer is a
Watcher
that is designed to display simulation states on screen.A viewer that displays a 2D environment.
This class provides a default GUI for a viewer agent.
A Watcher is an agent that is designed to be part of a simulation engine to monitor and
explore agents' internal properties.
Enum containing keys, for some useful words, that has to be used with the
i18n mechanism.