# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NLAIAGENT::IAgent Class Reference

Base class for minimum agent working. More...

#include <agent.h>

Inheritance diagram for NLAIAGENT::IAgent:

NLAIAGENT::IAgentComposite NLAIAGENT::IBasicAgent NLAIAGENT::IConnectIA NLAIAGENT::IRefrence NLAIAGENT::IObjectIA NLAIAGENT::IBasicObjectIA NLAIC::IBasicInterface NLAIC::IBasicType NLAIC::IPointerGestion NLMISC::IStreamable NLMISC::IClassable NLAIAGENT::CActor NLAIAGENT::CLocalAgentMail NLAIAGENT::IAgentManager NLAIAGENT::CAgentScript NLAIAGENT::CActorScript NLAIAGENT::CAgentManagerTimer NLAIAGENT::CAgentOperation NLAIAGENT::CAgentWatchTimer NLAIAGENT::IMainAgent NLAIAGENT::CFsmScript NLAIAGENT::COperatorScript NLAILOGIC::CGoalPath NLAIAGENT::CAgentClockTimer NLAIAGENT::CMainAgentScript NLAIAGENT::CSeqFsmScript List of all members.

Public Methods

 IAgent (IBasicAgent *parent)
 Contruct agent with an parent. More...

 IAgent (IBasicAgent *parent, IMailBox *m)
 Contruct agent with an parent and an mail box. More...

virtual ~IAgent ()
virtual bool isEqual (const IBasicObjectIA &a) const
 Implementation of the isEqual of the IBasicObjectIA. More...

virtual void Kill ()
 Call this function to destroy an agent including its referneces in other agents and its childs. More...

virtual void onKill (IConnectIA *A)
 Called by an agent who's destroyed te remove its references. More...

virtual bool haveActivity () const
 allow to know if the agent have an activity process to run. More...

virtual IObjectIA::CProcessResult runActivity ()
 Mailer do'nt have own activity. More...

Some IBasicAgent method.
virtual const NLAIC::IBasicTypeclone () const
 This function allow a pointer copy, that mean that the new class have the sam attributs caracteristics as the owne. More...

virtual const NLAIC::IBasicTypenewInstance () const
 This function allow a new instance, that mean that the class is a class factory. More...

virtual void getDebugString (std::string &t) const
 This is a Debug function, text is an character pointer to receive the debug text output, the debug text containe all think sensible to interset user. More...

virtual const NLAIC::CIdentTypegetType () const
 getType return a unique string how represente the class, it can be the name of the class. More...

virtual void save (NLMISC::IStream &os)
 Save the class in a stream. More...

virtual void load (NLMISC::IStream &is)
 Load the class from a stream. More...

Some IBasicAgent method.
virtual void processMessages ()
 The processMessages method, process the loop/Run message. More...

virtual const CProcessResult & run ()
 The work of an agent. More...

virtual const CProcessResult & runStep ()
 Some where Run method define the process of the agen. More...


Static Public Attributes

const NLAIC::CIdentTypeIdAgent = NULL

Protected Methods

 IAgent (const IAgent &a)
Some IBasicAgent method.
virtual void runChildren ()
 Run all child. More...

virtual bool runChildrenStepByStep ()
 Activates the child agents. More...


Private Attributes

std::list< IBasicAgent
* >::iterator 
_Iter_Child

Detailed Description

Base class for minimum agent working.

This class manage a child list, message & run of proccess.

Author:
Portier Pierre , Nevrax France
Date:
2000

Definition at line 380 of file agent.h.


Constructor & Destructor Documentation

NLAIAGENT::IAgent::IAgent const IAgent &    a [protected]
 

Definition at line 38 of file agents.cpp.

References NLAIAGENT::IAgentComposite::_AgentList, and _Iter_Child.

Referenced by NLAIAGENT::COperatorScript::calcPriority, NLAIAGENT::CLocalAgentMail::CLocalAgentMail, clone, NLAIAGENT::IAgentManager::IAgentManager, newInstance, NLAIAGENT::CActor::newInstance, and NLAIAGENT::CActorScript::runMethodBase.

NLAIAGENT::IAgent::IAgent IBasicAgent   parent
 

Contruct agent with an parent.

Definition at line 43 of file agents.cpp.

References NLAIAGENT::IAgentComposite::_AgentList, and _Iter_Child.

NLAIAGENT::IAgent::IAgent IBasicAgent   parent,
IMailBox   m
 

Contruct agent with an parent and an mail box.

Definition at line 48 of file agents.cpp.

References NLAIAGENT::IAgentComposite::_AgentList, and _Iter_Child.

NLAIAGENT::IAgent::~IAgent   [virtual]
 

Definition at line 122 of file agents.cpp.

References Kill.


Member Function Documentation

const NLAIC::IBasicType * NLAIAGENT::IAgent::clone   const [virtual]
 

This function allow a pointer copy, that mean that the new class have the sam attributs caracteristics as the owne.

Implements NLAIC::IBasicType.

Reimplemented in NLAIAGENT::CActor.

Definition at line 94 of file agents.cpp.

References IAgent.

void NLAIAGENT::IAgent::getDebugString std::string &    t const [virtual]
 

This is a Debug function, text is an character pointer to receive the debug text output, the debug text containe all think sensible to interset user.

Implements NLAIC::IBasicType.

Reimplemented in NLAIAGENT::CActor.

Definition at line 108 of file agents.cpp.

References NLAIC::stringGetBuild, and t.

const NLAIC::CIdentType & NLAIAGENT::IAgent::getType   const [virtual]
 

getType return a unique string how represente the class, it can be the name of the class.

This function is used for the sytem regstry class (see the definition of the template class Gen::CRegistry).

Implements NLAIC::IBasicType.

Reimplemented in NLAIAGENT::CActor.

Definition at line 279 of file agents.cpp.

References IdAgent.

Referenced by processMessages.

virtual bool NLAIAGENT::IAgent::haveActivity   const [inline, virtual]
 

allow to know if the agent have an activity process to run.

Implements NLAIAGENT::IBasicAgent.

Reimplemented in NLAIAGENT::CLocalAgentMail.

Definition at line 423 of file agent.h.

Referenced by run, and runStep.

bool NLAIAGENT::IAgent::isEqual const IBasicObjectIA   a const [virtual]
 

Implementation of the isEqual of the IBasicObjectIA.

Implements NLAIAGENT::IBasicObjectIA.

Reimplemented in NLAIAGENT::CActor.

Definition at line 113 of file agents.cpp.

void NLAIAGENT::IAgent::Kill   [virtual]
 

Call this function to destroy an agent including its referneces in other agents and its childs.

Reimplemented from NLAIAGENT::IConnectIA.

Definition at line 57 of file agents.cpp.

References NLAIAGENT::IAgentComposite::_AgentList, NLAIAGENT::IAgentComposite::_SizeChild, NLAIAGENT::IConnectIA::IConnectIA, and nlinfo.

Referenced by NLAIAGENT::CAgentScript::~CAgentScript, NLAIAGENT::CMainAgentScript::~CMainAgentScript, and ~IAgent.

void NLAIAGENT::IAgent::load NLMISC::IStream   is [virtual]
 

Load the class from a stream.

Reimplemented from NLAIAGENT::IAgentComposite.

Reimplemented in NLAIAGENT::CActor.

Definition at line 133 of file agents.cpp.

const NLAIC::IBasicType * NLAIAGENT::IAgent::newInstance   const [virtual]
 

This function allow a new instance, that mean that the class is a class factory.

Implements NLAIC::IBasicType.

Reimplemented in NLAIAGENT::CActor.

Definition at line 100 of file agents.cpp.

References NLAIAGENT::IConnectIA::getParent, IAgent, and NLAIAGENT::IBasicAgent::IBasicAgent.

void NLAIAGENT::IAgent::onKill IConnectIA   A [virtual]
 

Called by an agent who's destroyed te remove its references.

Reimplemented from NLAIAGENT::IAgentComposite.

Reimplemented in NLAIAGENT::CLocalAgentMail.

Definition at line 83 of file agents.cpp.

References NLAIAGENT::IAgentComposite::_AgentList, NLAIAGENT::IAgentComposite::_SizeChild, NLAIAGENT::IBasicAgent::IBasicAgent, and NLAIAGENT::IConnectIA::removeConnection.

void NLAIAGENT::IAgent::processMessages   [virtual]
 

The processMessages method, process the loop/Run message.

Implements NLAIAGENT::IBasicAgent.

Reimplemented in NLAIAGENT::CActor.

Definition at line 202 of file agents.cpp.

References NLAIAGENT::IBasicAgent::getMail, getType, and NLAIAGENT::IObjectIA::IObjectIA.

Referenced by run, and runStep.

const IObjectIA::CProcessResult & NLAIAGENT::IAgent::run   [virtual]
 

The work of an agent.

Typically agent process child message, process its message and run its activity.

Implements NLAIAGENT::IBasicAgent.

Reimplemented in NLAIAGENT::CActor.

Definition at line 238 of file agents.cpp.

References NLAIAGENT::IBasicAgent::getMail, NLAIAGENT::IBasicAgent::getState, haveActivity, NLAIAGENT::processIdle, processMessages, runActivity, and runChildren.

virtual IObjectIA::CProcessResult NLAIAGENT::IAgent::runActivity   [inline, virtual]
 

Mailer do'nt have own activity.

Implements NLAIAGENT::IBasicAgent.

Reimplemented in NLAIAGENT::CLocalAgentMail.

Definition at line 429 of file agent.h.

References NLAIAGENT::IObjectIA::ProcessRun.

Referenced by run, and runStep.

void NLAIAGENT::IAgent::runChildren   [protected, virtual]
 

Run all child.

Implements NLAIAGENT::IBasicAgent.

Reimplemented in NLAIAGENT::CLocalAgentMail.

Definition at line 162 of file agents.cpp.

References NLAIAGENT::processPresKill, and NLAIAGENT::processToKill.

Referenced by run.

bool NLAIAGENT::IAgent::runChildrenStepByStep   [protected, virtual]
 

Activates the child agents.

Reimplemented in NLAIAGENT::CAgentScript.

Definition at line 139 of file agents.cpp.

References NLAIAGENT::IAgentComposite::_AgentList, _Iter_Child, NLAIAGENT::IBasicAgent::IBasicAgent, NLAIAGENT::IObjectIA::ProcessNotComplit, NLAIAGENT::processToKill, and NLAIAGENT::IAgentComposite::removeChild.

Referenced by runStep.

const IObjectIA::CProcessResult & NLAIAGENT::IAgent::runStep   [virtual]
 

Some where Run method define the process of the agen.

Reimplemented from NLAIAGENT::IObjectIA.

Reimplemented in NLAIAGENT::CAgentScript.

Definition at line 264 of file agents.cpp.

References NLAIAGENT::IBasicAgent::getMail, NLAIAGENT::IBasicAgent::getState, haveActivity, NLAIAGENT::processIdle, processMessages, runActivity, and runChildrenStepByStep.

void NLAIAGENT::IAgent::save NLMISC::IStream   os [virtual]
 

Save the class in a stream.

Reimplemented from NLAIAGENT::IAgentComposite.

Reimplemented in NLAIAGENT::CActor.

Definition at line 127 of file agents.cpp.


Member Data Documentation

std::list<IBasicAgent *>::iterator NLAIAGENT::IAgent::_Iter_Child [private]
 

Definition at line 386 of file agent.h.

Referenced by IAgent, and runChildrenStepByStep.

const NLAIC::CIdentType * IAgent::IdAgent = NULL [static]
 

Definition at line 73 of file static_def_init.cpp.

Referenced by getType.


The documentation for this class was generated from the following files: