|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |
See:
Description
Interface Summary | |
---|---|
AgentAppFrame.Controller | The agent application frame delegates the execution of all domain-level commands to a controller. |
AgentAppModel.ModelChangedListener | Observer interface for views which need to be informed about model state changes and log messages to be printed out. |
Class Summary | |
---|---|
AgentAppController | Simple controller implementation which extends its base class by maintaining references to frame and model, and by simple demo implementations of the required three abstract methods. |
AgentAppFrame | Universal frame for building graphical agent applications. |
AgentAppFrame.AbstractAgentView | Base class for all agent views. |
AgentAppFrame.SelectionState | Contains the names of all selectors and the indices of their selected items. |
AgentAppModel | Facade hiding application specific design decisions from
the AgentAppFrame . |
AgentView | Simple agent view without content but with some useful transformation features. |
SimpleAgentAppDemo | In this framework a graphical agent application consists of at least
three parts: An AgentAppModel , an AgentAppFrame , and
an AgentAppController . |
This package provides useful base classes for building graphical agent
applications. The design follows a model-view-controller pattern.
The AgentAppModel
serves as model, the AgentAppFrame
together with its embedded AgentView
as view, and the
AgentAppController
as controller. The SimpleAgentAppDemo
demonstrates, how this parts can be plugged together.
Start the main method of AgentAppFrame
to see the layout of the
frame. It is configurable in many ways, even without subclassing. A
demo application with model, view, and controller, but still without any content,
can be seen when starting the SimpleAgentAppDemo
. Look for classes
with the ending ...AppDemo
in the aima.gui.applications
package to see agents at work.
This simple framework is strongly based on inheritance. You can extend any
of the given base classes with the features you need. To be very flexible with
respect to content, no methods are included which transfer data between model
and view. So typically, you will design a model and a corresponding
AgentView
together - the model should provide access to all
the data, which is needed by the view to visualize the agent in its environment
meaningful.
|
|||||||||
PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES |