Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

Agent

Link to the Agent module (source code documentation)


Introduction

The IDEA::Agent module contains code which has the following responsiblities:

Coordinating the internal time and scheduling and handling time events for the agent

Each agent must have a notion of time to be able to plan and execute. The IDEA::Agent represents time in the datastructure IDEA::Time and maintains a clock via an instance of IDEA::AgentTimingService.

Handling a time event

An IDEA::Agent is an event driven system and we distinguish the following high level events:

Wakeup event

A wakeup event is a scheduled event to wakeup the agent, the behavior associated with this event depends on the IDEA::TimeEventHandler instance registered to the IDEA::AgentTimingService.

Reboot event

A reboot event is a scheduled event to reboot the agent, the behavior associated with this event depends on the IDEA::TimeEventHandler instance registered to the IDEA::AgentTimingService.

Coordinating message traffic to and from the IDEA::Agent

An IDEA::Agent communicates with external systems via incomming and outgoing messages.

Incomming messages can come in at any given time and the IDEA::AgentRelay instance will notify the appropriate IDEA::Reactor instance of the incomming message, the behavior associated with the message depends on the IDEA::Reactor instance notified. Examples of IDEA::Reactor instance are a ReactivePlanner (seperate module) or a IDEA::ShutdownReactor.

Outgoing messages are coordinated by the IDEA::AgentRelay instance. The IDEA::AgentRelay creates the appropriate data structures and notifies the appropriate IDEA::ComRelay instance, the way (technology) the message will be send out depends on the IDEA::ComRelay instance notified.

Command line options for an IDEA::Agent

Independent of the application invoking the agent classes some of the classes will assume you provide some command line options:

Command line options:

Todo:
Create section on the pattern used to extend the command line options etc...


Contact information
© IDEA
Generated on Fri Feb 3 17:09:44 2006 for IDEA.