From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- docs/doxygen/nel/a02785.html | 3871 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 3871 insertions(+) create mode 100644 docs/doxygen/nel/a02785.html (limited to 'docs/doxygen/nel/a02785.html') diff --git a/docs/doxygen/nel/a02785.html b/docs/doxygen/nel/a02785.html new file mode 100644 index 00000000..09c51477 --- /dev/null +++ b/docs/doxygen/nel/a02785.html @@ -0,0 +1,3871 @@ + + +NeL: NLAIAGENT::CLocalMailBox class Reference + + + +
+

NLAIAGENT::CLocalMailBox Class Reference

#include <mailbox.h> +

+

Inheritance diagram for NLAIAGENT::CLocalMailBox: +

+ +NLAIAGENT::IMailBox +NLAIAGENT::IConnectIA +NLAIAGENT::IRefrence +NLAIAGENT::IObjectIA +NLAIAGENT::IBasicObjectIA +NLAIC::IBasicInterface +NLAIC::IBasicType +NLAIC::IPointerGestion +NLMISC::IStreamable +NLMISC::IClassable + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Types

typedef std::list< IMailBox * > TListMailBox
typedef std::list< IMailBox
+* >::const_iterator 
TListMailBoxCstIter
typedef std::list< IMailBox
+* >::iterator 
TListMailBoxIter
 Type deffinition for list aned iterator for connectong mailbox container.

typedef std::list< const IMessageBase * > TListMessage
typedef std::list< const IMessageBase
+* >::const_iterator 
TListMessageCstIter
typedef std::list< const IMessageBase
+* >::iterator 
TListMessageIter
 Type deffinition for list and iterator for message container.


Public Member Functions

virtual void addMailBox (IMailBox *mail)
 Add a new mail box to this mail, all message hapend here will be acheived to the mail box connected.

virtual void addMessage (IMessageBase *msg)
 Add a agent message to the buffer.

virtual TQueue canProcessMessage (const IVarName &)
 CLocalMailBox (const CLocalMailBox &A)
 CLocalMailBox (NLMISC::IStream &is)
 CLocalMailBox (const IWordNumRef *parent)
virtual const NLAIC::IBasicTypeclone () const
void connect (IConnectIA *b)
sint32 decRef ()
 Decrement the reference of an object.

virtual void getDebugString (std::string &t) const
virtual const CIdent getIdentType () const
virtual const std::string getInfo ()
virtual const IMessageBasegetMessage ()
 Get the first message from the buffer.

virtual sint32 getMessageCount () const
 get message count.

virtual const TListMessagegetMesseageListe () const
virtual std::string getMethodeMemberDebugString (sint32, sint32) const
virtual sint32 getMethodIndexSize () const
virtual const IRefrencegetOwner () const
 To get the top level parent of this agent.

IConnectIAgetParent () const
 to get the agent parents

const sint32getRef () const
 get the refence count.

virtual const CProcessResult & getState () const
const IObjectIAgetStaticMember (const IVarName &compName) const
virtual const IObjectIAgetStaticMember (sint32) const
virtual sint32 getStaticMemberIndex (const IVarName &) const
virtual sint32 getStaticMemberSize () const
virtual const NLAIC::CIdentTypegetType () const
void incRef ()
 Inc a reference. We use this when we have to conserve a pointer memeory for exemple in a list.

virtual void init (IObjectIA *)
virtual sint32 isClassInheritedFrom (const IVarName &) const
virtual bool isEmpty () const
 test if buffer is empty.

virtual bool isEqual (const IBasicObjectIA &a) const
virtual bool isLocal ()
 If the result is true the object is loclal else its a representation of an object on the server. By the method return true.

virtual TQueue isMember (const IVarName *, const IVarName *, const IObjectIA &) const
virtual void Kill ()
 this method define wat agent have to whene he die.

virtual void load (NLMISC::IStream &is)
virtual const NLAIC::IBasicTypenewInstance () const
virtual void onKill (IConnectIA *a)
 When agent die and when he is in the Connectioned lis, he call this method to inform this state to the objects.

 operator const IWordNumRef & () const
 to get a word num ref of the agents.

 operator const IWordNumRef * () const
 to get a word num ref pointer of the agents.

bool operator== (const IBasicObjectIA &classType) const
virtual void popMessage ()
 Pop the first message from the buffer.

virtual void release ()
 Release allow to release the pointer. The last release when the _Ref is nul delete the object.

void removeConnection (IConnectIA *Agent)
 To release a connection.

virtual void removeMailBox (IMailBox *mail)
 Remove a mail box.

virtual const IObjectIA::CProcessResultrun ()
virtual CProcessResult runMethodeMember (sint32 index, IObjectIA *)
virtual CProcessResult runMethodeMember (sint32, sint32, IObjectIA *)
virtual const CProcessResult & runStep ()
virtual void save (NLMISC::IStream &os)
virtual CProcessResult sendMessage (const IVarName &, IObjectIA *)
virtual IObjectIA::CProcessResult sendMessage (IObjectIA *m)
virtual IObjectIA::CProcessResult sendMessage (IMessageBase *)
virtual void serial (NLMISC::IStream &f) throw (NLMISC::EStream)
virtual void setParent (const IWordNumRef *parent)
 to set the parent of the agents.

virtual void setState (TProcessStatement state, IObjectIA *result)
virtual bool setStaticMember (sint32, IObjectIA *)
bool setStaticMember (const IVarName &compName, IObjectIA *change)
void setTypeAt (uint64 t)
 That function allow user to change the 7 bit of the type field in the sid agent number;.

virtual sint size () const
virtual ~CLocalMailBox ()

Static Public Attributes

const NLAIC::CIdentType IdLocalMailBox
TProcessStatement ProcessBuzzy = processBuzzy
TProcessStatement ProcessEnd = processEnd
TProcessStatement ProcessError = processError
TProcessStatement ProcessIdle = processIdle
TProcessStatement ProcessLocked = processLocked
CProcessResult ProcessNotComplit = IObjectIA::CProcessResult(processNotComplete)
CProcessResult ProcessRun = IObjectIA::CProcessResult()

Protected Member Functions

void connectLoadStream (NLMISC::IStream &is)
void refLoadStream (NLMISC::IStream &is)
 the loader of the class.

void setNumRef (const IWordNumRef &ref)

Protected Attributes

TListIBasic _Connected
TListIBasic _Connection

Private Attributes

TListMailBox _ListMailBox
 List of mailboxs connected.

TListMessage _ListMessageIn
 List of reciption messages.

IObjectIA::CProcessResult _RunState
 Statue of run.

sint _Size
 Count of messages.

+

Member Typedef Documentation

+

+ + + + +
+ + +
typedef std::list<IMailBox *> NLAIAGENT::IMailBox::TListMailBox [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 40 of file mailbox.h.

+

+ + + + +
+ + +
typedef std::list<IMailBox *>::const_iterator NLAIAGENT::CLocalMailBox::TListMailBoxCstIter +
+
+ + + + + +
+   + + +

+ +

+Definition at line 101 of file mailbox.h. +

+Referenced by save().

+

+ + + + +
+ + +
typedef std::list<IMailBox *>::iterator NLAIAGENT::CLocalMailBox::TListMailBoxIter +
+
+ + + + + +
+   + + +

+Type deffinition for list aned iterator for connectong mailbox container. +

+ +

+Definition at line 100 of file mailbox.h.

+

+ + + + +
+ + +
typedef std::list<const IMessageBase *> NLAIAGENT::IMailBox::TListMessage [inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 39 of file mailbox.h.

+

+ + + + +
+ + +
typedef std::list<const IMessageBase *>::const_iterator NLAIAGENT::CLocalMailBox::TListMessageCstIter +
+
+ + + + + +
+   + + +

+ +

+Definition at line 95 of file mailbox.h.

+

+ + + + +
+ + +
typedef std::list<const IMessageBase *>::iterator NLAIAGENT::CLocalMailBox::TListMessageIter +
+
+ + + + + +
+   + + +

+Type deffinition for list and iterator for message container. +

+ +

+Definition at line 94 of file mailbox.h. +

+Referenced by onKill(), and save().

+


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + + +
NLAIAGENT::CLocalMailBox::CLocalMailBox const IWordNumRef parent  ) 
+
+ + + + + +
+   + + +

+ +

+Definition at line 46 of file mailbox.cpp. +

+Referenced by clone(), and newInstance(). +

+

00046                                                               :IMailBox(parent),_Size(0)
+00047         {
+00048         }
+
+

+ + + + +
+ + + + + + + + + + +
NLAIAGENT::CLocalMailBox::CLocalMailBox NLMISC::IStream is  ) 
+
+ + + + + +
+   + + +

+ +

+Definition at line 50 of file mailbox.cpp. +

+References load(). +

+

00050                                                      :IMailBox(is),_Size(0)
+00051         {
+00052                 load(is);
+00053         }
+
+

+ + + + +
+ + + + + + + + + + +
NLAIAGENT::CLocalMailBox::CLocalMailBox const CLocalMailBox A  ) 
+
+ + + + + +
+   + + +

+ +

+Definition at line 56 of file mailbox.cpp. +

+

00056                                                            :IMailBox(A),_RunState(A._RunState),_Size(0)
+00057         {                                                               
+00058         }
+
+

+ + + + +
+ + + + + + + + + +
NLAIAGENT::CLocalMailBox::~CLocalMailBox  )  [virtual]
+
+ + + + + +
+   + + +

+ +

+Definition at line 60 of file mailbox.cpp. +

+References _ListMessageIn, and NLAIC::IPointerGestion::release(). +

+

00061         {
+00062                 while(_ListMessageIn.begin() != _ListMessageIn.end())
+00063                 {
+00064                         IMessageBase *msg = (IMessageBase *)_ListMessageIn.back();
+00065                         msg->release();
+00066                         _ListMessageIn.pop_back();
+00067                 }               
+00068 
+00069         }
+
+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::addInConnectedList const IConnectIA a  )  [protected, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 595 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::_Connected. +

+Referenced by NLAIAGENT::IConnectIA::connect(), and NLAIAGENT::IConnectIA::connectLoadStream(). +

+

00596         {
+00597                 _Connected.insert(a);
+00598         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::addInConnectionList const IConnectIA a  )  [protected, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 572 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::_Connection. +

+Referenced by NLAIAGENT::IConnectIA::connect(), and NLAIAGENT::IConnectIA::connectLoadStream(). +

+

00573         {
+00574                 _Connection.insert(a);
+00575         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::addMailBox IMailBox mail  )  [virtual]
+
+ + + + + +
+   + + +

+Add a new mail box to this mail, all message hapend here will be acheived to the mail box connected. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 106 of file mailbox.cpp. +

+References _ListMailBox, and NLAIAGENT::IConnectIA::connect(). +

+

00107         {
+00108                 connect( mail );
+00109                 _ListMailBox.push_back((IMailBox *)mail);               
+00110 
+00111         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::addMessage IMessageBase msg  )  [virtual]
+
+ + + + + +
+   + + +

+Add a agent message to the buffer. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 99 of file mailbox.cpp. +

+References _ListMessageIn. +

+

00100         {
+00101                 _ListMessageIn.push_front(msg);
+00102                 _Size ++;
+00103         }
+
+

+ + + + +
+ + + + + + + + + + +
TQueue NLAIAGENT::IObjectIA::canProcessMessage const IVarName  )  [virtual, inherited]
+
+ + + + + +
+   + + +

+The method canProcessMessage(const IVarName &msgName) allow us to know if agent can preocess given by msgName.

+TQueue contain the liste of method (same as a run(msg)) that coud process the msg. +

+Reimplemented in NLAIAGENT::CLocalAgentMail. +

+Definition at line 350 of file baseai.cpp. +

+References NLAIAGENT::TQueue. +

+Referenced by NLAIAGENT::CLocalAgentMail::canProcessMessage(). +

+

00351         {
+00352                 return TQueue();
+00353         }
+
+

+ + + + +
+ + + + + + + + + +
const NLAIC::IBasicType * NLAIAGENT::CLocalMailBox::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. +

+Definition at line 122 of file mailbox.cpp. +

+References CLocalMailBox(). +

+

00123         {
+00124                 NLAIC::IBasicType *a = new CLocalMailBox(*this);
+00125                 return a;
+00126         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::connect IConnectIA b  )  [inherited]
+
+ + + + + +
+   + + +

+When agent want to make connection he have to call this method to connect to an agent. When it call the B object is added in the connection list. +

+Definition at line 555 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::addInConnectedList(), and NLAIAGENT::IConnectIA::addInConnectionList(). +

+Referenced by NLAIAGENT::CAgentWatchTimer::addAttrib(), NLAIAGENT::IAgentInput::addInputConnection(), addMailBox(), NLAIAGENT::CAgentWatchTimer::CAgentWatchTimer(), NLAIAGENT::CLocalAgentMail::CLocalAgentMail(), NLAIAGENT::CAgentOperation::connectOnChange(), and NLAIAGENT::IConnectIA::setParent(). +

+

00556         {
+00557                 b->addInConnectedList(this);
+00558                 addInConnectionList(b);
+00559         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::connectLoadStream NLMISC::IStream is  )  [protected, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 521 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::addInConnectedList(), NLAIAGENT::IConnectIA::addInConnectionList(), num, NLMISC::IStream::serial(), and sint32. +

+Referenced by NLAIAGENT::IConnectIA::IConnectIA(), and NLAIAGENT::IConnectIA::load(). +

+

00522         {
+00523                 IRefrence::refLoadStream(is);
+00524                 NLAIC::CIdentTypeAlloc id;
+00525                 sint32 i;
+00526                 is.serial( i );
+00527 
+00528                 if(i)
+00529                 {
+00530                         while(i --)
+00531                         {                                       
+00532                                 is >> id;
+00533                                 IWordNumRef *num = (IWordNumRef *)id.allocClass();
+00534                                 num->load(is);
+00535                                 addInConnectionList((IConnectIA *)((const IRefrence *)*num));
+00536                                 delete num; 
+00537                         }
+00538                 }
+00539 
+00540                 
+00541                 is.serial(i);
+00542                 if(i)
+00543                 {
+00544                         while(i--)
+00545                         {
+00546                                 is >> id;                                       
+00547                                 IWordNumRef *num = (IWordNumRef *)id.allocClass();
+00548                                 num->load(is);
+00549                                 addInConnectedList((IConnectIA *)((const IRefrence *)*num));
+00550                                 delete num;
+00551                         }
+00552                 }
+00553         }
+
+

+ + + + +
+ + + + + + + + + +
sint32 NLAIC::IPointerGestion::decRef  )  [inline, inherited]
+
+ + + + + +
+   + + +

+Decrement the reference of an object. +

+ +

+Definition at line 93 of file abstract_interface.h. +

+References NLAIC::IPointerGestion::_Ref, and sint32. +

+Referenced by NLAIC::IPointerGestion::release(), and NLAIAGENT::CAgentTimerHandle::~CAgentTimerHandle(). +

+

00094                 {
+00095                         return --_Ref;
+00096                 }
+
+

+ + + + +
+ + + + + + + + + +
virtual std::string NLAIC::IPointerGestion::getClassName  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+ +

+Implements NLMISC::IClassable. +

+Reimplemented in NLAIC::CIdentType. +

+Definition at line 116 of file abstract_interface.h. +

+Referenced by NLAISCRIPT::CAgentClass::isClassInheritedFrom(). +

+

00117                 {
+00118                         return std::string("<unnamed>");
+00119                 }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::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. +

+Definition at line 231 of file mailbox.cpp. +

+References t. +

+

00232         {
+00233                 t += "class CLocalMailBox parent";      
+00234 
+00235         }       
+
+

+ + + + +
+ + + + + + + + + +
const CIdent NLAIAGENT::IRefrence::getIdentType  )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 480 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::_NumRef, NLAIAGENT::CNumericIndex::getId(), and NLAIAGENT::IWordNumRef::getNumIdent(). +

+

00481         {
+00482                 return CIdent(0,_NumRef->getNumIdent().getId());
+00483         }
+
+

+ + + + +
+ + + + + + + + + +
virtual const std::string NLAIC::IBasicType::getInfo  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 292 of file abstract_interface.h. +

+References NLAIC::IBasicType::getDebugString(), and s. +

+

00293                 {
+00294                         std::string s;
+00295                         getDebugString(s);
+00296                         return s;
+00297                 }
+
+

+ + + + +
+ + + + + + + + + +
const IMessageBase & NLAIAGENT::CLocalMailBox::getMessage  )  [virtual]
+
+ + + + + +
+   + + +

+Get the first message from the buffer. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 71 of file mailbox.cpp. +

+References _ListMessageIn. +

+

00072         {                               
+00073                 return *_ListMessageIn.back();
+00074         }
+
+

+ + + + +
+ + + + + + + + + +
sint32 NLAIAGENT::CLocalMailBox::getMessageCount  )  const [virtual]
+
+ + + + + +
+   + + +

+get message count. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 83 of file mailbox.cpp. +

+References sint32. +

+

00084         {
+00085                 return _Size;
+00086         }
+
+

+ + + + +
+ + + + + + + + + +
virtual const TListMessage& NLAIAGENT::CLocalMailBox::getMesseageListe  )  const [inline, virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 142 of file mailbox.h. +

+References _ListMessageIn. +

+

00143                         {
+00144                                 return _ListMessageIn;
+00145                         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
std::string NLAIAGENT::IObjectIA::getMethodeMemberDebugString sint32 ,
sint32 
const [virtual, inherited]
+
+ + + + + +
+   + + +

+The methode getMethodeMemberDebugString(sint32 heritance, sint32 index) return a string that define the name and the argument of the method +

+Reimplemented in NLAIAGENT::CAgentScript. +

+Definition at line 311 of file baseai.cpp. +

+References sint32. +

+Referenced by NLAISCRIPT::CCallHeapMethodi::getDebugResult(), NLAISCRIPT::CCallStackMethodi::getDebugResult(), NLAISCRIPT::CCallMethodi::getDebugResult(), NLAISCRIPT::CLibHeapMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackNewMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackMemberMethod::getDebugResult(), NLAISCRIPT::CLibCallMethodi::getDebugResult(), NLAISCRIPT::CLibCallInheritedMethod::getDebugResult(), NLAISCRIPT::CLibCallMethod::getDebugResult(), NLAISCRIPT::CLibMemberMethodi::getDebugResult(), NLAISCRIPT::CLibMemberInheritedMethod::getDebugResult(), and NLAISCRIPT::CLibMemberMethod::getDebugResult(). +

+

00312         {
+00313                 switch(id)
+00314                 {
+00315                 case 0:
+00316                         {
+00317                                 return std::string("IObjectIA::sendMessage(IMessage)");
+00318                         }                       
+00319                         break;
+00320                 case 1:                 
+00321                         break;
+00322                 case 2:                 
+00323                         return std::string("IObjectIA::run()");
+00324                         break;
+00325 
+00326                 case 3:
+00327                         {                               
+00328                                 return std::string("IObjectIA::getStaticMember(Integer)");                              
+00329                         }
+00330                 }
+00331                 return std::string("Mathod_?????(Param_?????)");
+00332         }
+
+

+ + + + +
+ + + + + + + + + +
sint32 NLAIAGENT::IObjectIA::getMethodIndexSize  )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+getMethodIndexSize define the nomber of method define in the class. +

+Reimplemented in NLAIAGENT::CActor, NLAIAGENT::CActorScript, NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombreDefine, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::IObjetOp, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CLibTimerManager, NLAIAGENT::CAgentWatchTimer, NLAIAGENT::CAgentTimerHandle, NLAILOGIC::CGoalStack, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CAgentOperation, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFact, NLAIAGENT::CFsmScript, NLAILOGIC::CGoal, NLAILOGIC::CInternalGoal, NLAILOGIC::CGoalPath, NLAILOGIC::CGoalStack, NLAIAGENT::COperatorScript, NLAILOGIC::IBaseVar, NLAISCRIPT::CAgentClass, and NLAISCRIPT::CLibTest. +

+Definition at line 251 of file baseai.cpp. +

+References sint32. +

+

00252         {
+00253                 return 4;
+00254         }
+
+

+ + + + +
+ + + + + + + + + +
const IRefrence * NLAIAGENT::IRefrence::getOwner  )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+To get the top level parent of this agent. +

+ +

+Definition at line 402 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::getParent(). +

+

00403         {
+00404                 const IRefrence *p = getParent();
+00405 
+00406                 if(p == NULL) return this;
+00407 
+00408                 while( true )
+00409                 {
+00410                         if(p->getParent() == NULL) return p;
+00411                 }
+00412         }
+
+

+ + + + +
+ + + + + + + + + +
IConnectIA * NLAIAGENT::IConnectIA::getParent  )  const [inherited]
+
+ + + + + +
+   + + +

+to get the agent parents +

+ +

+Reimplemented from NLAIAGENT::IRefrence. +

+Definition at line 511 of file baseai.cpp. +

+Referenced by NLAIAGENT::CActorScript::activate(), NLAIAGENT::COperatorScript::calcPriority(), NLAIAGENT::COperatorScript::checkTrigMsg(), NLAIAGENT::IConnectIA::Kill(), NLAIAGENT::COperatorScript::lookForGoals(), newInstance(), NLAIAGENT::IAgent::newInstance(), NLAIAGENT::CActor::newInstance(), NLAIAGENT::IConnectIA::onKill(), NLAIAGENT::IBasicAgent::runAsk(), NLAIAGENT::CAgentScript::runAskDebugString(), NLAIAGENT::CAgentScript::runAskParentNotify(), NLAIAGENT::CAgentScript::runMethodBase(), NLAIAGENT::CActorScript::runMethodBase(), NLAIAGENT::IBasicAgent::runMethodeMember(), NLAIAGENT::CAgentScript::runTellParentNotify(), NLAIAGENT::IConnectIA::setParent(), and NLAIAGENT::CActorScript::unActivate(). +

+

00512         {
+00513                 return (IConnectIA *)IRefrence::getParent();
+00514         }       
+
+

+ + + + +
+ + + + + + + + + +
const sint32& NLAIC::IPointerGestion::getRef  )  const [inline, inherited]
+
+ + + + + +
+   + + +

+get the refence count. +

+ +

+Definition at line 99 of file abstract_interface.h. +

+References NLAIC::IPointerGestion::_Ref, and sint32. +

+Referenced by NLAIAGENT::CAgentTimerHandle::~CAgentTimerHandle(). +

+

00100                 {
+00101                         return _Ref;
+00102                 }
+
+

+ + + + +
+ + + + + + + + + +
const IObjectIA::CProcessResult & NLAIAGENT::CLocalMailBox::getState  )  const [virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NLAIAGENT::IConnectIA. +

+Definition at line 215 of file mailbox.cpp. +

+Referenced by run(). +

+

00216         {
+00217                 return _RunState;
+00218         }
+
+

+ + + + +
+ + + + + + + + + + +
const IObjectIA* NLAIAGENT::IObjectIA::getStaticMember const IVarName compName  )  const [inline, inherited]
+
+ + + + + +
+   + + +

+to get the pointer of a given components referened by an string. +

+Definition at line 261 of file baseai.h. +

+References NLAIAGENT::IObjectIA::getStaticMember(), and NLAIAGENT::IObjectIA::getStaticMemberIndex(). +

+

00262                 {
+00263                         return getStaticMember(getStaticMemberIndex(compName));
+00264                 }
+
+

+ + + + +
+ + + + + + + + + + +
const IObjectIA * NLAIAGENT::IObjectIA::getStaticMember sint32   )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+to get the pointer of a given components referened by an index. +

+Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CMessageScript, and NLAISCRIPT::CAgentClass. +

+Definition at line 193 of file baseai.cpp. +

+References sint32. +

+Referenced by NLAISCRIPT::CCompilateur::affectationMember(), NLAIAGENT::CComponentHandle::getComponent(), NLAISCRIPT::CLdbMemberiOpCode::getDebugResult(), NLAISCRIPT::CLdbHeapMemberiOpCode::getDebugResult(), NLAISCRIPT::CLdbStackMemberiOpCode::getDebugResult(), NLAISCRIPT::CCallStackNewMethodi::getDebugResult(), NLAISCRIPT::CCallHeapMethodi::getDebugResult(), NLAISCRIPT::CCallStackMethodi::getDebugResult(), NLAISCRIPT::CCallMethodi::getDebugResult(), NLAISCRIPT::CLibHeapMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackNewMemberMethod::getDebugResult(), NLAISCRIPT::CLibStackMemberMethod::getDebugResult(), NLAISCRIPT::CLibCallMethodi::getDebugResult(), NLAISCRIPT::CLibMemberMethodi::getDebugResult(), NLAISCRIPT::CLoadHeapObject::getObject(), NLAISCRIPT::CLoadStackObject::getObject(), NLAISCRIPT::CLoadSelfObject::getObject(), NLAIAGENT::IObjectIA::getStaticMember(), NLAIAGENT::CLocalAgentMail::getStaticMember(), NLAISCRIPT::CCompilateur::getValidateHierarchyBase(), NLAISCRIPT::CCompilateur::isValidateVarName(), NLAISCRIPT::CCodeBrancheRunDebug::printVariable(), NLAIAGENT::IObjectIA::runMethodeMember(), NLAISCRIPT::CLdbMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbStackMemberiOpCode::runOpCode(), NLAISCRIPT::CCallHeapMethodi::runOpCode(), NLAISCRIPT::CCallStackMethodi::runOpCode(), NLAISCRIPT::CCallStackNewMethodi::runOpCode(), NLAISCRIPT::CCallMethodi::runOpCode(), NLAISCRIPT::CLibHeapMemberMethod::runOpCode(), NLAISCRIPT::CLibStackNewMemberMethod::runOpCode(), NLAISCRIPT::CLibStackMemberMethod::runOpCode(), NLAISCRIPT::CLibCallMethodi::runOpCode(), NLAISCRIPT::CLibMemberMethodi::runOpCode(), NLAISCRIPT::CAffHeapMemberiOpCode::runOpCode(), and NLAISCRIPT::CAffMemberiOpCode::runOpCode(). +

+

00194         {
+00195                 return NULL;
+00196         }
+
+

+ + + + +
+ + + + + + + + + + +
sint32 NLAIAGENT::IObjectIA::getStaticMemberIndex const IVarName  )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+to get the index of a given components name. +

+Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, and NLAIAGENT::CMessageScript. +

+Definition at line 188 of file baseai.cpp. +

+References sint32. +

+Referenced by NLAISCRIPT::CCompilateur::affectation(), NLAIAGENT::CComponentHandle::getComponent(), NLAIAGENT::IObjectIA::getStaticMember(), NLAIAGENT::CLocalAgentMail::getStaticMemberIndex(), NLAISCRIPT::CCompilateur::getValidateHierarchyBase(), NLAISCRIPT::CCompilateur::isValidateVarName(), NLAISCRIPT::CCodeBrancheRunDebug::printVariable(), NLAISCRIPT::CCompilateur::processingVar(), NLAISCRIPT::CConstraintStackComp::run(), and NLAIAGENT::IObjectIA::setStaticMember(). +

+

00189         {
+00190                 return -1;
+00191         }
+
+

+ + + + +
+ + + + + + + + + +
sint32 NLAIAGENT::IObjectIA::getStaticMemberSize  )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+Static member is the component that the agent is create and die with. getStaticMemberSize to get the size of the static member components +

+Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CMessageScript, NLAISCRIPT::IClassInterpret, and NLAISCRIPT::CAgentClass. +

+Definition at line 180 of file baseai.cpp. +

+References NLAIC::IBasicType::getType(), sint32, and NLAIC::stringGetBuild(). +

+Referenced by NLAIAGENT::CLocalAgentMail::getStaticMemberSize(). +

+

00181         {
+00182                 std::string text;
+00183                 text = NLAIC::stringGetBuild("sint32 IObjectIA::getStaticMemberSize() note implementaited for the '%s' interface",(const char *)getType());
+00184                 throw NLAIE::CExceptionNotImplemented(text.c_str());
+00185                 return 0;       
+00186         }
+
+

+ + + + +
+ + + + + + + + + +
const NLAIC::CIdentType & NLAIAGENT::CLocalMailBox::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. +

+Definition at line 138 of file mailbox.cpp. +

+References IdLocalMailBox. +

+

00139         {
+00140                 return IdLocalMailBox;
+00141         }
+
+

+ + + + +
+ + + + + + + + + +
void NLAIC::IPointerGestion::incRef  )  [inline, inherited]
+
+ + + + + +
+   + + +

+Inc a reference. We use this when we have to conserve a pointer memeory for exemple in a list. +

+ +

+Definition at line 80 of file abstract_interface.h. +

+References NLAIC::IPointerGestion::_Ref. +

+Referenced by NLAIAGENT::CSeqFsmScript::activate(), NLAILOGIC::CFactBase::addAssert(), NLAIAGENT::IAgentComposite::addChild(), NLAILOGIC::IBaseAssert::addInput(), NLAILOGIC::CBoolOperator::addPostcondition(), NLAILOGIC::CBoolOperator::addPrecondition(), NLAILOGIC::CInternalGoal::addPredecessor(), NLAILOGIC::CGoal::addPredecessor(), NLAIFUZZY::CFuzzyVar::addSet(), NLAISCRIPT::CCompilateur::affectation(), NLAILOGIC::CFact::asValueSet(), NLAIAGENT::CAgentWatchTimer::attach(), NLAISCRIPT::CCompilateur::buildObject(), NLAISCRIPT::CAgentClass::buildVMethode(), NLAIAGENT::CAgentOperation::CAgentOperation(), NLAIAGENT::CAgentTimerHandle::CAgentTimerHandle(), NLAISCRIPT::CCompilateur::callFunction(), NLAISCRIPT::CClassInterpretFactory::CClassInterpretFactory(), NLAISCRIPT::CCodeBrancheRunDebug::CCodeBrancheRunDebug(), NLAISCRIPT::CCompilateur::CCompilateur(), NLAISCRIPT::CFactorType::CFactorType(), NLAISCRIPT::CFunctionTag::CFunctionTag(), NLAIAGENT::COperatorScript::checkTrigMsg(), NLAIC::CIdentType::CIdentType(), NLAIAGENT::CIdMethod::CIdMethod(), NLAIAGENT::CKeyObject::CKeyObject(), NLAISCRIPT::CFindRunMsg::clone(), NLAISCRIPT::CObjectUnknown::clone(), NLAISCRIPT::CConstraintStackComp::clone(), NLAISCRIPT::CConstraintFindRun::clone(), NLAISCRIPT::CConstraintMethode::clone(), NLAILINK::IOTrace::clone(), NLAISCRIPT::CMethodeName::CMethodeName(), NLAISCRIPT::CAgentClass::CMethodType::CMethodType(), NLAISCRIPT::CObjectUnknown::CObjectUnknown(), NLAIAGENT::CPairType::CPairType(), NLAISCRIPT::CAgentClass::createComponents(), NLAILOGIC::CValueSet::CValueSet(), NLAILOGIC::CVar::CVar(), NLAILOGIC::CValueSet::forward(), NLAIAGENT::IMessageBase::IMessageBase(), NLAIAGENT::CAgentScript::initAgentScript(), NLAISCRIPT::CCompilateur::initMessageManager(), NLAISCRIPT::COperatorClass::isValidFonc(), NLAILOGIC::CValueSet::load(), NLAILOGIC::IBaseOperator::load(), NLAISCRIPT::CAgentClass::load(), NLAISCRIPT::CComponent::load(), NLAISCRIPT::CMethodeName::load(), NLAIAGENT::CVectorGroupType::operator+(), NLAIAGENT::CGroupType::operator+(), NLAISCRIPT::CPramContainer::operator+=(), NLAIAGENT::IMessageBase::operator=(), NLAIAGENT::CKeyObject::operator=(), NLAISCRIPT::CAgentClass::CMethodType::operator=(), NLAISCRIPT::CFunctionTag::operator=(), NLAIAGENT::CIdMethod::operator=(), NLAISCRIPT::CCompilateur::processingVar(), NLAIAGENT::CAgentScript::processMessages(), NLAISCRIPT::CCompilateur::pushParamExpression(), NLAISCRIPT::CConstraintFindRun::run(), NLAIAGENT::IBasicAgent::run(), NLAIAGENT::CAgentScript::runAskGetValue(), NLAIAGENT::IAgent::runChildren(), NLAIAGENT::CMainAgentScript::runExec(), NLAIAGENT::CAgentScript::runInitComponent(), NLAIAGENT::CAgentOperation::runMethodBase(), NLAIAGENT::CAgentWatchTimer::runMethodBase(), NLAIAGENT::CAgentScript::runMethodBase(), NLAIAGENT::CActorScript::runMethodBase(), NLAIAGENT::IMessageBase::runMethodeMember(), NLAIAGENT::IBaseGroupType::runMethodeMember(), NLAIAGENT::IBasicAgent::runMethodeMember(), NLAISCRIPT::CLdbRefOpCode::runOpCode(), NLAISCRIPT::CLdbMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CLdbStackMemberiOpCode::runOpCode(), NLAISCRIPT::CCallStackMethodi::runOpCode(), NLAISCRIPT::CCallStackNewMethodi::runOpCode(), NLAISCRIPT::CLibStackNewMemberMethod::runOpCode(), NLAISCRIPT::CLibStackMemberMethod::runOpCode(), NLAISCRIPT::CAffOpCode::runOpCode(), NLAISCRIPT::CAddParamNameDebug::runOpCode(), NLAISCRIPT::CAffOpCodeDebug::runOpCode(), NLAISCRIPT::CAffHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CAffMemberOpCode::runOpCode(), NLAISCRIPT::CAffMemberiOpCode::runOpCode(), NLAIAGENT::CAgentScript::runTellComponent(), NLAIAGENT::CAgentScript::runTellSetValue(), NLAISCRIPT::CMethodContextDebug::saveContext(), NLAISCRIPT::CMethodContext::saveContext(), NLAIAGENT::CAgentScript::sendBroadCast(), NLAIAGENT::IListManager::sendMessage(), NLAIAGENT::CAgentScript::sendMethodCompoment(), NLAIAGENT::CVolatilMemmory::sendUpdateMessage(), NLAISCRIPT::CFactorType::set(), NLAILOGIC::IBaseOperator::setGoal(), NLAISCRIPT::CCompilateur::setImediateVarNill(), NLAISCRIPT::CCompilateur::setMethodVar(), NLAISCRIPT::CCompilateur::setParamVarName(), NLAISCRIPT::CFunctionTag::setTypeObject(), NLAILOGIC::CVar::setValue(), NLAILOGIC::CValueSet::setValue(), NLAIAGENT::CAgentWatchTimer::tellBroker(), NLAISCRIPT::CCompilateur::typeOfMethod(), NLAILOGIC::CVar::unify(), NLAILOGIC::CValueSet::unify(), and NLAIAGENT::CAgentOperation::update(). +

+

00081                 {
+00082                         _Ref ++;
+00083                 }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IObjectIA::init IObjectIA  )  [virtual, inherited]
+
+ + + + + +
+   + + +

+Init method alows to init the attribut of an object. the maparmetre is in more time a list of IObjectIA. +

+Reimplemented in NLAIFUZZY::CSimpleFuzzyCond, NLAIFUZZY::CFuzzyRule, NLAIFUZZY::CFuzzyRuleSet, NLAIFUZZY::CFuzzyInterval, NLAIFUZZY::CRightFuzzySet, NLAIFUZZY::CTriangleFuzzySet, NLAIFUZZY::CTrapezeFuzzySet, NLAIFUZZY::CLeftFuzzySet, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFirstOrderAssert, NLAILOGIC::CRule, and NLAILOGIC::CFactPattern. +

+Definition at line 116 of file baseai.cpp. +

+Referenced by NLAIFUZZY::IFuzzySet::runMethodeMember(), and NLAISCRIPT::CLdbNewOpCode::runOpCode(). +

+

00117         {
+00118                 
+00119         }
+
+

+ + + + +
+ + + + + + + + + + +
sint32 NLAIAGENT::IObjectIA::isClassInheritedFrom const IVarName  )  const [virtual, inherited]
+
+ + + + + +
+   + + +

+isClassInheritedFrom(className) allow us to known if this class have a base class with the name className.

+If true the method return the range of the base class, this range is an arbitrary reference id define by the programmer or bay the scrypt. the false return is define by -1. +

+Reimplemented in NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombreDefine, NLAIAGENT::IBaseGroupType, and NLAIAGENT::CMessageScript. +

+Definition at line 246 of file baseai.cpp. +

+References sint32. +

+Referenced by NLAISCRIPT::CCompilateur::getValidateHierarchyBase(), NLAIAGENT::CLocalAgentMail::isClassInheritedFrom(), NLAIAGENT::CActorScript::Launch(), NLAIAGENT::CFsmScript::setTopLevel(), and NLAIAGENT::CActorScript::setTopLevel(). +

+

00247         {
+00248                 return -1;
+00249         }       
+
+

+ + + + +
+ + + + + + + + + +
bool NLAIAGENT::CLocalMailBox::isEmpty  )  const [virtual]
+
+ + + + + +
+   + + +

+test if buffer is empty. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 88 of file mailbox.cpp. +

+

00089         {
+00090                 return _Size == 0;
+00091         }
+
+

+ + + + +
+ + + + + + + + + + +
bool NLAIAGENT::CLocalMailBox::isEqual const IBasicObjectIA a  )  const [virtual]
+
+ + + + + +
+   + + +

+The bool operator == (const IBasicObjectIA &a) const member method call this function when class 'classType' have the same type of this class, programme have to assume the equality between the memebers of this class and the memeber of the class 'classType'. +

+Implements NLAIAGENT::IBasicObjectIA. +

+Definition at line 164 of file mailbox.cpp. +

+

00165         {
+00166                 const IMailBox &m = (const IMailBox &)a;
+00167                 return (const IWordNumRef &)m == (const IWordNumRef &)*this;
+00168         }
+
+

+ + + + +
+ + + + + + + + + +
bool NLAIAGENT::IObjectIA::isLocal  )  [virtual, inherited]
+
+ + + + + +
+   + + +

+If the result is true the object is loclal else its a representation of an object on the server. By the method return true. +

+ +

+Definition at line 356 of file baseai.cpp. +

+

00357         {
+00358                 return true;
+00359         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
TQueue NLAIAGENT::IObjectIA::isMember const IVarName,
const IVarName,
const IObjectIA
const [virtual, inherited]
+
+ + + + + +
+   + + +

+The method isMember(nameSubClass,methodName,param) return the best method correspondent to the search. remember we use the overloadind method.

+NameSubClass: if this pointer is not NULL then NameSubClass is the name of the base class were the method are defined.

+methodName: is the name of the class.

+param: is an IObjectIA where it defined the parametre of the method. lot of method use a IObjectIA vector object with an NLAIC::CIdentType as the the template argm. +

+Reimplemented in NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombreDefine, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentTimerHandle, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, and NLAIAGENT::IMessageBase. +

+Definition at line 206 of file baseai.cpp. +

+References _CONSTRUCTOR_, _RUN_, _SEND_, param, r, NLAIAGENT::IObjectIA::run(), and NLAIAGENT::TQueue. +

+Referenced by NLAIAGENT::CAgentWatchTimer::addAttrib(), NLAISCRIPT::CCompilateur::findMethode(), NLAISCRIPT::CAgentClass::isMember(), NLAIAGENT::CLocalAgentMail::isMember(), and NLAISCRIPT::CFindRunMsg::runOpCode(). +

+

00207         {               
+00208                 static CStringVarName send(_SEND_);
+00209                 static CStringVarName constructor(_CONSTRUCTOR_);
+00210                 static CStringVarName run(_RUN_);
+00211                 static CStringVarName statM("GetStaticMember");
+00212 
+00213                 if(*methodName == send)
+00214                 {
+00215                         TQueue r;                       
+00216                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(NLAIC::CIdentType::VoidType));
+00217                         r.push(CIdMethod(0,0.0,NULL,c));
+00218                         return r;
+00219                 }
+00220                 else
+00221                 if(*methodName == constructor && !((const NLAISCRIPT::CParam &)param).size())
+00222                 {
+00223                         TQueue r;
+00224                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(NLAIC::CIdentType::VoidType));
+00225                         r.push(CIdMethod(1,0.0,NULL,c));
+00226                         return r;
+00227                 }
+00228                 else
+00229                 if(*methodName == run && !((const NLAISCRIPT::CParam &)param).size())
+00230                 {
+00231                         TQueue r;
+00232                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(NLAIC::CIdentType::VoidType));
+00233                         r.push(CIdMethod(2,0.0,NULL,c));
+00234                         return r;                       
+00235                 }
+00236                 if(*methodName == statM && ((const NLAISCRIPT::CParam &)param).size())
+00237                 {
+00238                         TQueue r;
+00239                         CObjectType *c = new CObjectType(new NLAIC::CIdentType(*IAgent::IdAgent));
+00240                         r.push(CIdMethod(3,0.0,NULL,c));
+00241                         return r;                       
+00242                 }
+00243                 return TQueue();
+00244         }
+
+

+ + + + +
+ + + + + + + + + +
void NLAIAGENT::IConnectIA::Kill  )  [virtual, inherited]
+
+ + + + + +
+   + + +

+this method define wat agent have to whene he die. +

+ +

+Reimplemented in NLAIAGENT::IAgent. +

+Definition at line 618 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::_Connected, NLAIAGENT::IConnectIA::_Connection, NLAIAGENT::IConnectIA::getParent(), NLAIAGENT::IConnectIA::onKill(), NLAIAGENT::IConnectIA::removeInConnectedList(), NLAIAGENT::IConnectIA::removeInConnectionList(), and NLAIAGENT::IConnectIA::TListIBasicCstItr. +

+Referenced by NLAIAGENT::IConnectIA::~IConnectIA(). +

+

00619         {
+00620                 IConnectIA *parent = getParent();
+00621                 if ( parent != NULL )
+00622                 {
+00623                         parent->onKill( this );
+00624                 }
+00625 
+00626                 TListIBasicCstItr it = _Connection.begin();
+00627 
+00628                 while(it != _Connection.end())
+00629                 {                               
+00630                         IConnectIA *a = (IConnectIA *)*it ++;                   
+00631                         if(a != NULL)
+00632                         {
+00633                                 a->removeInConnectedList(this);
+00634                         }
+00635                 }
+00636                 _Connection.clear();
+00637 
+00638                 it = _Connected.begin();
+00639                 while(it != _Connected.end())
+00640                 {                               
+00641                         IConnectIA *a = (IConnectIA *)*it ++;                   
+00642                         if(a != NULL)
+00643                         {
+00644                                 a->removeInConnectionList(this);
+00645                                 a->onKill(this);                                
+00646                         }
+00647                 }
+00648                 _Connected.clear();
+00649         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::load NLMISC::IStream is  )  [virtual]
+
+ + + + + +
+   + + +

+Load the class from a stream. +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 194 of file mailbox.cpp. +

+References _ListMailBox, num, NLMISC::IStream::serial(), and sint32. +

+Referenced by CLocalMailBox(). +

+

00195         {                       
+00196                 IMailBox::load(is);
+00197                 sint32 i;                               
+00198                 NLAIC::CIdentTypeAlloc id;                      
+00199                 is.serial(i);
+00200                 _Size = 0;
+00201                 if(i)
+00202                 {
+00203                         while(i --)
+00204                         {
+00205                                 is.serial(id);
+00206                                 IWordNumRef *num = (IWordNumRef *)id.allocClass();
+00207                                 num->load(is);
+00208                                 _ListMailBox.push_back((IMailBox *)((const IRefrence *)*num));
+00209                                 _Size ++;
+00210                                 delete num;
+00211                         }
+00212                 }
+00213         }                                       
+
+

+ + + + +
+ + + + + + + + + +
const NLAIC::IBasicType * NLAIAGENT::CLocalMailBox::newInstance  )  const [virtual]
+
+ + + + + +
+   + + +

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

+Implements NLAIC::IBasicType. +

+Definition at line 128 of file mailbox.cpp. +

+References CLocalMailBox(), and NLAIAGENT::IConnectIA::getParent(). +

+

00129         {                               
+00130                 NLAIC::IBasicType *a;
+00131                 if(getParent() != NULL) 
+00132                         a = new CLocalMailBox((const IWordNumRef *)getParent());
+00133                 else 
+00134                         a = new CLocalMailBox((const IWordNumRef *)NULL);
+00135                 return a;
+00136         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::onKill IConnectIA a  )  [virtual]
+
+ + + + + +
+   + + +

+When agent die and when he is in the Connectioned lis, he call this method to inform this state to the objects. +

+ +

+Reimplemented from NLAIAGENT::IConnectIA. +

+Definition at line 143 of file mailbox.cpp. +

+References _ListMailBox, _ListMessageIn, NLAIAGENT::IMessageBase::getContinuation(), NLAIAGENT::IMessageBase::getReceiver(), NLAIAGENT::IMessageBase::getSender(), NLAIC::IPointerGestion::release(), and TListMessageIter. +

+

00144         {                               
+00145                 eraseFromList<IMailBox *>(&_ListMailBox,(IMailBox *)a);
+00146 
+00147                 TListMessageIter msgItr = _ListMessageIn.begin();
+00148                 while(msgItr != _ListMessageIn.end())
+00149                 {
+00150                         IMessageBase *msg = (IMessageBase *)*msgItr;
+00151 
+00152                         if(msg->getSender() == a || msg->getContinuation() == a || msg->getReceiver() == a)
+00153                         {
+00154                                 TListMessageIter iTmp = msgItr++;
+00155                                 _ListMessageIn.erase(iTmp);
+00156                                 msg->release();
+00157                                 _Size --;
+00158                         }
+00159                         else msgItr++;                  
+00160                 }
+00161 
+00162         }
+
+

+ + + + +
+ + + + + + + + + +
NLAIAGENT::IRefrence::operator const IWordNumRef &  )  const [inherited]
+
+ + + + + +
+   + + +

+to get a word num ref of the agents. +

+ +

+Definition at line 380 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::_NumRef. +

+

00381         {
+00382                 return *_NumRef;
+00383         }
+
+

+ + + + +
+ + + + + + + + + +
NLAIAGENT::IRefrence::operator const IWordNumRef *  )  const [inherited]
+
+ + + + + +
+   + + +

+to get a word num ref pointer of the agents. +

+ +

+Definition at line 385 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::_NumRef. +

+

00386         {
+00387                 return _NumRef;
+00388         }
+
+

+ + + + +
+ + + + + + + + + + +
bool NLAIAGENT::IBasicObjectIA::operator== const IBasicObjectIA classType  )  const [inherited]
+
+ + + + + +
+   + + +

+Lot of algo use this function to determine the equality between 2 class, in particular the extraction from stl list. the == operator call the bool isEqual(const IBasicObjectIA &a) const member method to determine the equality between tow class. +

+Definition at line 134 of file baseai.cpp. +

+References NLAIC::IBasicType::getType(), and NLAIAGENT::IBasicObjectIA::isEqual(). +

+

00135         {                                               
+00136                 if(a.getType() == getType() ) return isEqual(a);                        
+00137                 return false;
+00138         }               
+
+

+ + + + +
+ + + + + + + + + +
void NLAIAGENT::CLocalMailBox::popMessage  )  [virtual]
+
+ + + + + +
+   + + +

+Pop the first message from the buffer. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 76 of file mailbox.cpp. +

+References _ListMessageIn. +

+

00077         {                       
+00078                 ((IMessageBase *)_ListMessageIn.back())->release();
+00079                 _ListMessageIn.pop_back();
+00080                 _Size --;
+00081         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IRefrence::refLoadStream NLMISC::IStream is  )  [protected, inherited]
+
+ + + + + +
+   + + +

+the loader of the class. +

+ +

+Definition at line 433 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::_NumRef, NLAIC::IBasicInterface::load(), NLAIC::IPointerGestion::release(), and NLMISC::IStream::serial(). +

+Referenced by NLAIAGENT::IRefrence::IRefrence(), and NLAIAGENT::IRefrence::load(). +

+

00434         {
+00435                 IObjectIA::load(is);
+00436                 _NumRef->release();
+00437                 NLAIC::CIdentTypeAlloc id;
+00438                 is >> id;
+00439                 _NumRef = (IWordNumRef *)id.allocClass();
+00440                 _NumRef->load(is);
+00441                 bool k;
+00442                 is.serial( k );
+00443                 if ( k ) 
+00444                 {
+00445                         if(_Parent) _Parent->release();
+00446                         is >> id;
+00447                         _Parent = (IWordNumRef *)id.allocClass();
+00448                         _Parent->load(is);
+00449                 }
+00450                 else 
+00451                 {
+00452                         _Parent = NULL;
+00453                 }
+00454         }
+
+

+ + + + +
+ + + + + + + + + + +
virtual void NLAIC::IPointerGestion::release void   )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+Release allow to release the pointer. The last release when the _Ref is nul delete the object. +

+ +

+Definition at line 86 of file abstract_interface.h. +

+References NLAIC::IPointerGestion::decRef(). +

+Referenced by NLAIAGENT::CSeqFsmScript::activate(), NLAISCRIPT::CAgentClass::addBrancheCode(), NLAISCRIPT::CConstraintDebug::addIndex(), NLAISCRIPT::CCompilateur::affectation(), NLAISCRIPT::CCompilateur::affectationMember(), NLAISCRIPT::COperatorClass::backward(), NLAILOGIC::CFirstOrderOperator::backward(), NLAILOGIC::CFirstOrderAssert::backward(), NLAISCRIPT::CCompilateur::buildObject(), NLAILINK::buildScript(), NLAISCRIPT::CCompilateur::callFunction(), NLAIC::CIdentType::CIdentType(), NLAISCRIPT::CCompilateur::clean(), NLAISCRIPT::CParam::clear(), NLAIAGENT::CVectorGroupType::clear(), NLAIAGENT::CGroupType::clear(), NLAIAGENT::CVolatilMemmory::CVolatilMemmory(), NLAISCRIPT::CFactorType::del(), NLAIAGENT::IAgentComposite::deleteListe(), NLAIPYSERVER::endPythonInterface(), NLAIAGENT::CVectorGroupType::erase(), NLAIAGENT::CGroupType::erase(), NLAIAGENT::CVectorGroupType::eraseAll(), NLAIAGENT::CGroupType::eraseAll(), NLAISCRIPT::CCompilateur::errorMethodConstraint(), NLAISCRIPT::CCompilateur::errorTypeConstraint(), NLAISCRIPT::CCompilateur::findMethode(), NLAISCRIPT::COperatorClass::forward(), NLAILOGIC::CFirstOrderOperator::forward(), NLAIAGENT::CComponentHandle::getComponent(), NLAIAGENT::COperatorScript::getDebugString(), NLAIAGENT::CAgentScript::getDebugString(), NLAILOGIC::IBaseOperator::IBaseOperator(), NLAISCRIPT::CCompilateur::ifInterrogation(), NLAISCRIPT::CCompilateur::ifInterrogationEnd(), NLAILOGIC::CFactPattern::init(), NLAILOGIC::CRule::init(), NLAIFUZZY::CTrapezeFuzzySet::init(), NLAIFUZZY::CLeftFuzzySet::init(), NLAIFUZZY::CTriangleFuzzySet::init(), NLAIFUZZY::CRightFuzzySet::init(), NLAIFUZZY::CFuzzyInterval::init(), NLAIFUZZY::CFuzzyRule::init(), NLAIFUZZY::CSimpleFuzzyCond::init(), NLAISCRIPT::CCompilateur::interrogationEnd(), NLAISCRIPT::COperatorClass::isValidFonc(), NLAIAGENT::IAgent::Kill(), NLAILOGIC::CVar::load(), NLAILOGIC::CValueSet::load(), NLAISCRIPT::CLdbOpCode::load(), NLAISCRIPT::CLibCallMethodi::load(), NLAISCRIPT::CLibCallInheritedMethod::load(), NLAISCRIPT::CLibCallMethod::load(), NLAISCRIPT::CLdbNewOpCode::load(), NLAISCRIPT::CAddParamNameDebug::load(), NLAISCRIPT::CFindRunMsg::load(), NLAIAGENT::IListBasicManager::load(), NLAIAGENT::CVectorGroupType::load(), NLAIAGENT::CGroupType::load(), NLAIAGENT::CAgentScript::load(), NLAIAGENT::CStringType::load(), NLAIAGENT::CLocalAgentMail::load(), NLAISCRIPT::CMethodContextDebug::loadContext(), NLAISCRIPT::CCompilateur::onEndClass(), onKill(), NLAIAGENT::IAgent::onKill(), NLAIAGENT::CLocalAgentMail::onKill(), NLAIAGENT::CVectorGroupType::operator-(), NLAIAGENT::CGroupType::operator-(), NLAIAGENT::CKeyObject::operator=(), NLAISCRIPT::CFunctionTag::operator=(), NLAIAGENT::CIdMethod::operator=(), NLAISCRIPT::CCompilateur::PrivateError(), NLAISCRIPT::CCompilateur::processingVar(), NLAIAGENT::CAgentScript::processMessages(), NLAIAGENT::IRefrence::refLoadStream(), NLAISCRIPT::CCompilateur::registerMethod(), NLAIAGENT::IAgentComposite::removeChild(), NLAILOGIC::CFirstOrderAssert::removeFact(), NLAISCRIPT::CConstraintStackComp::run(), NLAISCRIPT::CConstraintFindRun::run(), NLAISCRIPT::CConstraintMethode::run(), NLAIAGENT::IBasicAgent::run(), NLAIAGENT::CAgentScript::runInitComponent(), NLAIAGENT::CVolatilMemmory::runMessage(), NLAIAGENT::CAgentOperation::runMethodBase(), NLAISCRIPT::CCompilateur::runMethodConstraint(), NLAILOGIC::CInternalGoal::runMethodeMember(), NLAILOGIC::CGoal::runMethodeMember(), NLAILOGIC::CFact::runMethodeMember(), NLAIAGENT::IObjectIA::runMethodeMember(), NLAISCRIPT::CLdbStackMemberiOpCode::runOpCode(), NLAISCRIPT::CCallStackMethodi::runOpCode(), NLAISCRIPT::CLibHeapMemberMethod::runOpCode(), NLAISCRIPT::CAffOpCode::runOpCode(), NLAISCRIPT::CJFalseOpCode::runOpCode(), NLAISCRIPT::CAffOpCodeDebug::runOpCode(), NLAISCRIPT::CDiffOpCode::runOpCode(), NLAISCRIPT::CInfEqOpCode::runOpCode(), NLAISCRIPT::CSupEqOpCode::runOpCode(), NLAISCRIPT::CEqOpCode::runOpCode(), NLAISCRIPT::CInfOpCode::runOpCode(), NLAISCRIPT::CSupOpCode::runOpCode(), NLAISCRIPT::CMulOpCode::runOpCode(), NLAISCRIPT::CDivOpCode::runOpCode(), NLAISCRIPT::CSubOpCode::runOpCode(), NLAISCRIPT::CAddOpCode::runOpCode(), NLAISCRIPT::CNegOpCode::runOpCode(), NLAIAGENT::CAgentScript::runTellParentNotify(), NLAISCRIPT::CCompilateur::runTypeConstraint(), NLAIAGENT::CHashTimerManager::sendMessage(), NLAIAGENT::CVolatilMemmory::sendMessage(), sendMessage(), NLAIAGENT::IListManager::sendMessage(), NLAIAGENT::CAgentTimerHandle::sendMessage(), NLAIAGENT::CAgentScript::sendMessage(), NLAIAGENT::CAgentScript::sendMethod(), NLAISCRIPT::COperandSimple::serial(), NLAISCRIPT::CObjectUnknown::setBaseType(), NLAISCRIPT::CCompilateur::setChaineVar(), NLAISCRIPT::CClassInterpretFactory::setClass(), NLAIC::CSelfClassFactory::setClass(), NLAISCRIPT::IClassInterpret::setClassName(), NLAISCRIPT::CObjectUnknown::setClassType(), NLAIAGENT::IMessageBase::setContinuation(), NLAILOGIC::IBaseOperator::setGoal(), NLAISCRIPT::COperatorClass::setGoal(), NLAISCRIPT::CCompilateur::setImediateVar(), NLAISCRIPT::CCompilateur::setImediateVarNill(), NLAISCRIPT::CParam::setInfo(), NLAISCRIPT::CAgentClass::setInheritanceName(), NLAISCRIPT::CCompilateur::setListVar(), NLAIAGENT::IMessageBase::setMessageGroup(), NLAISCRIPT::CCompilateur::setMethodVar(), NLAILOGIC::IBaseVar::setName(), NLAIAGENT::CAgentOperation::setName(), NLAISCRIPT::CMethodeName::setName(), NLAIAGENT::IRefrence::setNumRef(), NLAISCRIPT::CConstraintFindRun::setOpCode(), NLAISCRIPT::CConstraintMethode::setOpCode(), NLAISCRIPT::CCompilateur::setPerformative(), NLAILOGIC::CInternalGoal::setProperty(), NLAIAGENT::IMessageBase::setReceiver(), NLAIAGENT::IMessageBase::setSender(), NLAILOGIC::CValueSet::setSize(), NLAISCRIPT::CCompilateur::setStackVar(), NLAIAGENT::CMessageScript::setStaticMember(), NLAIAGENT::CAgentScript::setStaticMember(), NLAISCRIPT::IClassInterpret::setType(), NLAISCRIPT::CFunctionTag::setTypeObject(), NLAISCRIPT::CMethodeName::setTypeOfMethode(), NLAILOGIC::CVar::setValue(), NLAIAGENT::CAgentOperation::setValue(), NLAIAGENT::IAgentInput::setValue(), NLAILOGIC::CValueSet::unify(), NLAISCRIPT::COperatorClass::unifyBackward(), NLAILOGIC::CFirstOrderOperator::unifyBackward(), NLAISCRIPT::COperatorClass::unifyForward(), NLAILOGIC::CFirstOrderOperator::unifyForward(), NLAILOGIC::CRule::unifyLiaisonBack(), NLAISCRIPT::CAddParamNameDebug::~CAddParamNameDebug(), NLAISCRIPT::CAgentClass::~CAgentClass(), NLAIAGENT::CAgentOperation::~CAgentOperation(), NLAIAGENT::CAgentScript::~CAgentScript(), NLAIAGENT::CAgentTimerHandle::~CAgentTimerHandle(), NLAIAGENT::CAgentWatchTimer::~CAgentWatchTimer(), NLAISCRIPT::CClassInterpretFactory::~CClassInterpretFactory(), NLAISCRIPT::CCodeBrancheRunDebug::~CCodeBrancheRunDebug(), NLAISCRIPT::CCompilateur::~CCompilateur(), NLAIAGENT::CComponentHandle::~CComponentHandle(), NLAISCRIPT::CConstraintChkMethodeType::~CConstraintChkMethodeType(), NLAISCRIPT::CConstraintMethode::~CConstraintMethode(), NLAISCRIPT::CConstraintStackComp::~CConstraintStackComp(), NLAILOGIC::CFact::~CFact(), NLAISCRIPT::CFindRunMsg::~CFindRunMsg(), NLAILOGIC::CFirstOrderAssert::~CFirstOrderAssert(), NLAISCRIPT::CFunctionTag::~CFunctionTag(), NLAIC::CIdentType::~CIdentType(), NLAIAGENT::CIdMethod::~CIdMethod(), NLAILOGIC::CInternalGoal::~CInternalGoal(), NLAIAGENT::CKeyObject::~CKeyObject(), NLAISCRIPT::CLdbNewOpCode::~CLdbNewOpCode(), NLAISCRIPT::CLdbOpCode::~CLdbOpCode(), NLAISCRIPT::CLibCallInheritedMethod::~CLibCallInheritedMethod(), NLAISCRIPT::CLibCallMethod::~CLibCallMethod(), NLAISCRIPT::CLibCallMethodi::~CLibCallMethodi(), ~CLocalMailBox(), NLAIAGENT::CMainAgentScript::~CMainAgentScript(), NLAISCRIPT::CLibTest::CMethodCall::~CMethodCall(), NLAIAGENT::CAgentScript::CMethodCall::~CMethodCall(), NLAISCRIPT::CMethodeName::~CMethodeName(), NLAISCRIPT::CAgentClass::CMethodType::~CMethodType(), NLAISCRIPT::CObjectUnknown::~CObjectUnknown(), NLAISCRIPT::COperandSimple::~COperandSimple(), NLAISCRIPT::COperandUnknown::~COperandUnknown(), NLAISCRIPT::COperationType::~COperationType(), NLAISCRIPT::COperationTypeGD::~COperationTypeGD(), NLAISCRIPT::COperatorClass::~COperatorClass(), NLAIAGENT::CPairType::~CPairType(), NLAIC::CSelfClassFactory::~CSelfClassFactory(), NLAIAGENT::CStringType::~CStringType(), NLAILOGIC::CValueSet::~CValueSet(), NLAILOGIC::CVar::~CVar(), NLAIAGENT::CVolatilMemmory::~CVolatilMemmory(), NLAIAGENT::IAgentInput::~IAgentInput(), NLAILOGIC::IBaseAssert::~IBaseAssert(), NLAILOGIC::IBaseOperator::~IBaseOperator(), NLAILOGIC::IBaseVar::~IBaseVar(), NLAIAGENT::IBasicAgent::~IBasicAgent(), NLAISCRIPT::IBlock::~IBlock(), NLAISCRIPT::IClassInterpret::~IClassInterpret(), NLAILOGIC::IGoal::~IGoal(), NLAIAGENT::IListBasicManager::~IListBasicManager(), NLAIAGENT::IMessageBase::~IMessageBase(), NLAIAGENT::IRefrence::~IRefrence(), and NLAICHARACTER::IZone::~IZone(). +

+

00087                 {
+00088                         if(decRef() == 0) 
+00089                                         delete this;
+00090                 }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::removeConnection IConnectIA Agent  )  [inherited]
+
+ + + + + +
+   + + +

+To release a connection. +

+ +

+Definition at line 561 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::removeInConnectedList(), and NLAIAGENT::IConnectIA::removeInConnectionList(). +

+Referenced by NLAIAGENT::CAgentWatchTimer::detach(), NLAIAGENT::IAgent::onKill(), NLAIAGENT::IAgentInput::releaseInputConnexion(), and removeMailBox(). +

+

00562         {               
+00563                 Agent->removeInConnectedList(this);
+00564                 removeInConnectionList(Agent);                  
+00565         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::removeInConnectedList const IConnectIA a  )  [protected, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 600 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::_Connected, and NLAIAGENT::IConnectIA::TListIBasicItr. +

+Referenced by NLAIAGENT::IConnectIA::Kill(), and NLAIAGENT::IConnectIA::removeConnection(). +

+

00601         {
+00602                 TListIBasicItr i = _Connected.find(a);
+00603                 if(i != _Connected.end())
+00604                                                 _Connected.erase(i);
+00605                 /*TListIBasicItr i = _Connected.begin();
+00606                 while(i != _Connected.end())
+00607                 {                       
+00608                         const IConnectIA *o = *i;
+00609                         if(o == a)
+00610                         {                                       
+00611                                 _Connected.erase(i);
+00612                                 return;
+00613                         }
+00614                         i++;
+00615                 }*/
+00616         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::removeInConnectionList IConnectIA a  )  [protected, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 577 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::_Connection, and NLAIAGENT::IConnectIA::TListIBasicItr. +

+Referenced by NLAIAGENT::IConnectIA::Kill(), and NLAIAGENT::IConnectIA::removeConnection(). +

+

00578         {
+00579 
+00580                 TListIBasicItr i = _Connection.find(a);
+00581                 if(i != _Connection.end())
+00582                                                         _Connection.erase(i);
+00583                 /*TListIBasicItr i = _Connection.begin();
+00584                 while(i != _Connection.end())
+00585                 {                               
+00586                         if(*i == a)
+00587                         {
+00588                                 _Connection.erase(i);
+00589                                 return;
+00590                         }
+00591                         i++;
+00592                 }*/
+00593         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::removeMailBox IMailBox mail  )  [virtual]
+
+ + + + + +
+   + + +

+Remove a mail box. +

+ +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 114 of file mailbox.cpp. +

+References _ListMailBox, and NLAIAGENT::IConnectIA::removeConnection(). +

+

00115         {                               
+00116                 eraseFromList<IMailBox *>(&_ListMailBox,mail);
+00117                 removeConnection(mail);
+00118         }
+
+

+ + + + +
+ + + + + + + + + +
const IObjectIA::CProcessResult & NLAIAGENT::CLocalMailBox::run  )  [virtual]
+
+ + + + + +
+   + + +

+Some where Run method define the process of the agen. +

+Implements NLAIAGENT::IObjectIA. +

+Definition at line 226 of file mailbox.cpp. +

+References getState(). +

+

00227         {               
+00228                 return getState();
+00229         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
IObjectIA::CProcessResult NLAIAGENT::IObjectIA::runMethodeMember sint32  index,
IObjectIA
[virtual, inherited]
+
+ + + + + +
+   + + +

+The methode runMethodeMember(sint32 index,IObjectIA *param) allow us to run a own member method.

+index: is the method id return by the isMember(const IVarName *,const IVarName *,const IObjectIA &) const method. param: is the parametre for the method. +

+Reimplemented in NLAIAGENT::CActor, NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CLibTimerManager, NLAIAGENT::CAgentWatchTimer, NLAIAGENT::CAgentTimerHandle, NLAILOGIC::CGoalStack, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CSuccessMsg, NLAIAGENT::CFailureMsg, NLAIAGENT::CFactMsg, NLAIAGENT::CGetValueMsg, NLAIAGENT::CGoalMsg, NLAIAGENT::CCancelGoalMsg, NLAIAGENT::CSetValueMsg, NLAIFUZZY::IFuzzySet, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFact, NLAILOGIC::CGoal, NLAILOGIC::CInternalGoal, NLAILOGIC::CGoalStack, NLAILOGIC::IBaseVar, NLAISCRIPT::CCallPrint, NLAISCRIPT::CLibTest, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >. +

+Definition at line 266 of file baseai.cpp. +

+References NLAIAGENT::IDigital< sint32 >::getNumber(), NLAIAGENT::IObjectIA::getStaticMember(), NLAIAGENT::CStringType::getStr(), param, NLAIAGENT::IListBasicManager::pop(), r, NLAIC::IPointerGestion::release(), NLAIAGENT::IObjectIA::run(), NLAIAGENT::IObjectIA::sendMessage(), NLAIAGENT::IMessageBase::setPerformatif(), NLAIAGENT::IMessageBase::setReceiver(), sint, and sint32. +

+

00267         {
+00268                 
+00269                 switch(id)
+00270                 {
+00271                 case 0:
+00272                         {
+00273                                 IMessageBase *msg;
+00274 
+00275                                 IPerformative *p;
+00276                                 msg = (IMessageBase *)((IBaseGroupType *)a)->pop();
+00277                                 //this->incRef();
+00278                                 msg->setReceiver(this);
+00279                                 p = (IPerformative *)((IBaseGroupType *)a)->pop();
+00280                                 msg->setPerformatif((IMessageBase::TPerformatif)(sint)p->getNumber());
+00281                                 p->release();
+00282                                 if(((IBaseGroupType *)a)->size())
+00283                                 {                                       
+00284                                         CStringType *name = (CStringType *)((IBaseGroupType *)a)->pop();
+00285                                         IObjectIA::CProcessResult r = sendMessage(name->getStr(),msg);
+00286                                         name->release();
+00287                                         return r;
+00288                                         
+00289                                 }                               
+00290                                 return sendMessage(msg);
+00291                         }                       
+00292                         break;
+00293                 case 1:                 
+00294                         break;
+00295                 case 2:
+00296                         return run();
+00297                         break;
+00298 
+00299                 case 3:
+00300                         {
+00301                                 CProcessResult r;
+00302                                 NLAIAGENT::IBaseGroupType *param = (NLAIAGENT::IBaseGroupType *)a;
+00303                                 r.Result =      (IObjectIA *)getStaticMember((sint)((NLAIAGENT::INombreDefine *)param->get())->getNumber());
+00304                                 r.Result->incRef();
+00305                                 return r;
+00306                         }
+00307                 }
+00308                 return CProcessResult();
+00309         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +
IObjectIA::CProcessResult NLAIAGENT::IObjectIA::runMethodeMember sint32 ,
sint32 ,
IObjectIA
[virtual, inherited]
+
+ + + + + +
+   + + +

+The methode runMethodeMember(sint32 heritance, sint32 index, IObjectIA *param) allow us to run a member method.

+heritance: is the id returned by the methodisClassInheritedFrom(const IVarName &). index: is the method id return by the isMember(const IVarName *,const IVarName *,const IObjectIA &) const method. param: is the parametre for the method. +

+Reimplemented in NLAIAGENT::IBasicAgent, NLAIAGENT::IVector, NLAIAGENT::CLocalAgentMail, NLAIAGENT::INombre< tNombre >, NLAIAGENT::CPairType, NLAIAGENT::IBaseGroupType, NLAIAGENT::CVectorGroupType, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CAgentTimerHandle, NLAILOGIC::CGoalStack, NLAIAGENT::IListBasicManager, NLAIAGENT::CMessageScript, NLAIAGENT::IMessageBase, NLAIAGENT::CSuccessMsg, NLAIAGENT::CFailureMsg, NLAIAGENT::CFactMsg, NLAIAGENT::CGetValueMsg, NLAIAGENT::CGoalMsg, NLAIAGENT::CCancelGoalMsg, NLAIAGENT::CSetValueMsg, NLAIFUZZY::CFuzzyVar, NLAILOGIC::CFact, NLAILOGIC::CGoal, NLAILOGIC::CInternalGoal, NLAILOGIC::CGoalStack, NLAISCRIPT::CCallPrint, NLAISCRIPT::CLibTest, NLAIAGENT::INombre< double >, NLAIAGENT::INombre< uint16 >, NLAIAGENT::INombre< float >, NLAIAGENT::INombre< sint8 >, NLAIAGENT::INombre< uint64 >, NLAIAGENT::INombre< sint16 >, NLAIAGENT::INombre< uint8 >, NLAIAGENT::INombre< uint32 >, and NLAIAGENT::INombre< sint32 >. +

+Definition at line 257 of file baseai.cpp. +

+References sint32. +

+Referenced by NLAISCRIPT::CLibHeapMemberMethod::runOpCode(), NLAISCRIPT::CLibStackNewMemberMethod::runOpCode(), NLAISCRIPT::CLibStackMemberMethod::runOpCode(), NLAISCRIPT::CLibCallMethodi::runOpCode(), NLAISCRIPT::CLibCallInheritedMethod::runOpCode(), NLAISCRIPT::CLibCallMethod::runOpCode(), and NLAISCRIPT::CLibMemberMethodi::runOpCode(). +

+

00258         {
+00259                 /*char text[2048*8];
+00260                 sprintf(text,"method  runMethodeMember(sint32 h, sint32 id,const IObjectIA &) not implemented for the '%s' interface",(const char *)getType());
+00261                 throw NLAIE::CExceptionNotImplemented(text);
+00262                 return CProcessResult();*/
+00263                 return IObjectIA::runMethodeMember(id,a);
+00264         }
+
+

+ + + + +
+ + + + + + + + + +
const IObjectIA::CProcessResult & NLAIAGENT::IObjectIA::runStep  )  [virtual, inherited]
+
+ + + + + +
+   + + +

+Some where Run method define the process of the agen. +

+Reimplemented in NLAIAGENT::IAgent, and NLAIAGENT::CAgentScript. +

+Definition at line 163 of file baseai.cpp. +

+References NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild(). +

+Referenced by NLAIAGENT::IAgent::runChildrenStepByStep(). +

+

00164         {
+00165                 std::string text;
+00166                 text = NLAIC::stringGetBuild("const CProcessResult &IObjectIA::runStep() note implementaited for the '%s' interface",(const char *)getType());
+00167                 throw NLAIE::CExceptionNotImplemented(text.c_str());
+00168                 return IObjectIA::ProcessNotComplit;
+00169         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::save NLMISC::IStream os  )  [virtual]
+
+ + + + + +
+   + + +

+programmer have to call this method to load or save internal attribut. +

+Implements NLAIAGENT::IMailBox. +

+Definition at line 170 of file mailbox.cpp. +

+References _ListMailBox, _ListMessageIn, NLAIC::IBasicType::getType(), NLAIAGENT::IMessageBase::save(), NLMISC::IStream::serial(), sint32, size, TListMailBoxCstIter, and TListMessageIter. +

+

00171         {       
+00172                 IMailBox::save(os);
+00173                 sint32 size = _ListMailBox.size();
+00174                 os.serial( size );
+00175                 TListMailBoxCstIter k = _ListMailBox.begin();
+00176                 while(k != _ListMailBox.end())
+00177                 {
+00178                         IMailBox *mail = *k++;                                  
+00179                         ((IWordNumRef *)(const NLAIAGENT::IWordNumRef *)*mail)->save(os);
+00180                 }
+00181 
+00182                 size = _ListMessageIn.size();
+00183                 os.serial( size );
+00184                 TListMessageIter msgItr = _ListMessageIn.begin();
+00185                 while(msgItr != _ListMessageIn.end())
+00186                 {
+00187                         IMessageBase *msg = (IMessageBase *)*msgItr++;
+00188                         os.serial( (NLAIC::CIdentType &) (msg->getType()) );
+00189                         msg->save(os);
+00190                 }
+00191                                 
+00192         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
IObjectIA::CProcessResult NLAIAGENT::IObjectIA::sendMessage const IVarName,
IObjectIA
[virtual, inherited]
+
+ + + + + +
+   + + +

+This method allow to send a message to an compoment given by an string IVarName. +

+Reimplemented in NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, and NLAIAGENT::IMessageBase. +

+Definition at line 334 of file baseai.cpp. +

+References NLAIAGENT::IVarName::getString(), NLAIC::IBasicType::getType(), and NLAIC::stringGetBuild(). +

+

00335         {
+00336                 std::string text;
+00337                 text = NLAIC::stringGetBuild("method 'sendMessage(%s,const IObjectIA &)' '%s' interface",name.getString(), (const char *)getType());
+00338                 throw NLAIE::CExceptionNotImplemented(text.c_str());
+00339                 return CProcessResult();
+00340         }
+
+

+ + + + +
+ + + + + + + + + + +
virtual IObjectIA::CProcessResult NLAIAGENT::IConnectIA::sendMessage IObjectIA m  )  [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+sendMessage allow agent to send a message to an ather agent. The message is a IMessageBase. +

+Reimplemented from NLAIAGENT::IObjectIA. +

+Reimplemented in NLAIAGENT::CActorScript, NLAIAGENT::CLocalAgentMail, NLAIAGENT::CProxyAgentMail, NLAIAGENT::CAgentScript, and NLAIAGENT::CMainAgentScript. +

+Definition at line 451 of file baseai.h. +

+

00452                 {
+00453                         return sendMessage((IMessageBase *)m);
+00454                 }
+
+

+ + + + +
+ + + + + + + + + + +
IObjectIA::CProcessResult NLAIAGENT::CLocalMailBox::sendMessage IMessageBase  )  [virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NLAIAGENT::IConnectIA. +

+Definition at line 93 of file mailbox.cpp. +

+References NLAIC::IPointerGestion::release(). +

+

00094         {
+00095                 m->release();           
+00096                 return IObjectIA::ProcessRun;
+00097         }
+
+

+ + + + +
+ + + + + + + + + + +
virtual void NLAIC::IBasicInterface::serial NLMISC::IStream f  )  throw (NLMISC::EStream) [inline, virtual, inherited]
+
+ + + + + +
+   + + +

+ +

+Reimplemented from NLAIC::IPointerGestion. +

+Definition at line 328 of file abstract_interface.h. +

+References NLAIC::IBasicInterface::load(), and NLAIC::IBasicInterface::save(). +

+

00329                 {
+00330                         if ( f.isReading() )
+00331                                 load( f );
+00332                         else
+00333                                 save( f );
+00334                 }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IRefrence::setNumRef const IWordNumRef ref  )  [protected, inherited]
+
+ + + + + +
+   + + +

+ +

+Definition at line 461 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::_NumRef, NLAIAGENT::IWordNumRef::getNumIdent(), and NLAIC::IPointerGestion::release(). +

+

00462         {
+00463                 if(_NumRef != NULL) _NumRef->release();
+00464                 _NumRef = new CLocWordNumRef(ref.getNumIdent(),this);
+00465         }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IConnectIA::setParent const IWordNumRef parent  )  [virtual, inherited]
+
+ + + + + +
+   + + +

+to set the parent of the agents. +

+ +

+Reimplemented from NLAIAGENT::IRefrence. +

+Definition at line 661 of file baseai.cpp. +

+References NLAIAGENT::IConnectIA::connect(), and NLAIAGENT::IConnectIA::getParent(). +

+Referenced by NLAIAGENT::CAgentScript::addDynamicAgent(), NLAIAGENT::IAgentComposite::deleteListe(), NLAIAGENT::IBasicAgent::IBasicAgent(), NLAIAGENT::IConnectIA::onKill(), NLAIAGENT::CProxyAgentMail::sendMessage(), NLAIAGENT::CLocalAgentMail::sendMessage(), and NLAIAGENT::IBasicAgent::~IBasicAgent(). +

+

00662         {               
+00663                 IRefrence::setParent(parent);
+00664                 IConnectIA *p = (IConnectIA *)getParent();
+00665 
+00666                 if(p != NULL) connect(p);
+00667         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NLAIAGENT::CLocalMailBox::setState TProcessStatement  state,
IObjectIA result
[virtual]
+
+ + + + + +
+   + + +

+ +

+Implements NLAIAGENT::IConnectIA. +

+Definition at line 220 of file mailbox.cpp. +

+References NLAIAGENT::IObjectIA::CProcessResult::Result, and NLAIAGENT::IObjectIA::CProcessResult::ResultState. +

+

00221         {
+00222                 _RunState.ResultState = state;
+00223                 _RunState.Result = result;
+00224         }       
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
bool NLAIAGENT::IObjectIA::setStaticMember sint32 ,
IObjectIA
[virtual, inherited]
+
+ + + + + +
+   + + +

+to cahnge a given components given by a string. +

+Reimplemented in NLAIAGENT::CLocalAgentMail, NLAIAGENT::CAgentScript, NLAIAGENT::CMessageScript, and NLAISCRIPT::CAgentClass. +

+Definition at line 198 of file baseai.cpp. +

+References NLAIC::IBasicType::getType(), sint32, and NLAIC::stringGetBuild(). +

+

00199         {
+00200                 std::string text;
+00201                 text = NLAIC::stringGetBuild("Function void IObjectIA::setStaticMember(sint32,IObjectIA *) note implementaited for the '%s' interface",(const char *)getType());
+00202                 throw NLAIE::CExceptionNotImplemented(text.c_str());
+00203                 return false;
+00204         }
+
+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
bool NLAIAGENT::IObjectIA::setStaticMember const IVarName compName,
IObjectIA change
[inline, inherited]
+
+ + + + + +
+   + + +

+to cahnge a given components given by an index. +

+Definition at line 268 of file baseai.h. +

+References NLAIAGENT::IObjectIA::getStaticMemberIndex(). +

+Referenced by NLAISCRIPT::CAffHeapMemberiOpCode::runOpCode(), NLAISCRIPT::CAffMemberiOpCode::runOpCode(), and NLAIAGENT::CLocalAgentMail::setStaticMember(). +

+

00269                 {
+00270                         return setStaticMember(getStaticMemberIndex(compName),change);
+00271                 }
+
+

+ + + + +
+ + + + + + + + + + +
void NLAIAGENT::IRefrence::setTypeAt uint64  t  )  [inherited]
+
+ + + + + +
+   + + +

+That function allow user to change the 7 bit of the type field in the sid agent number;. +

+ +

+Definition at line 485 of file baseai.cpp. +

+References NLAIAGENT::IRefrence::_NumRef, NLAIAGENT::CNumericIndex::getId(), NLAIAGENT::IWordNumRef::getNumIdent(), t, and uint64. +

+Referenced by NLAIAGENT::IRefrence::IRefrence(). +

+

00486         {
+00487                 ((CAgentNumber &)(_NumRef->getNumIdent().getId())).setTypeAt(t);
+00488         }
+
+

+ + + + +
+ + + + + + + + + +
virtual sint NLAIAGENT::CLocalMailBox::size  )  const [inline, virtual]
+
+ + + + + +
+   + + +

+ +

+Definition at line 146 of file mailbox.h. +

+References sint. +

+

00147                         {
+00148                                 return _Size;
+00149                         }                       
+
+


Field Documentation

+

+ + + + +
+ + +
TListIBasic NLAIAGENT::IConnectIA::_Connected [protected, inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 427 of file baseai.h. +

+Referenced by NLAIAGENT::IConnectIA::addInConnectedList(), NLAIAGENT::IConnectIA::Kill(), NLAIAGENT::IConnectIA::removeInConnectedList(), and NLAIAGENT::IConnectIA::save().

+

+ + + + +
+ + +
TListIBasic NLAIAGENT::IConnectIA::_Connection [protected, inherited] +
+
+ + + + + +
+   + + +

+ +

+Reimplemented in NLAIAGENT::CAgentOperation. +

+Definition at line 426 of file baseai.h. +

+Referenced by NLAIAGENT::IConnectIA::addInConnectionList(), NLAIAGENT::IConnectIA::Kill(), NLAIAGENT::IConnectIA::removeInConnectionList(), and NLAIAGENT::IConnectIA::save().

+

+ + + + +
+ + +
TListMailBox NLAIAGENT::CLocalMailBox::_ListMailBox [private] +
+
+ + + + + +
+   + + +

+List of mailboxs connected. +

+ +

+Definition at line 110 of file mailbox.h. +

+Referenced by addMailBox(), load(), onKill(), removeMailBox(), and save().

+

+ + + + +
+ + +
TListMessage NLAIAGENT::CLocalMailBox::_ListMessageIn [private] +
+
+ + + + + +
+   + + +

+List of reciption messages. +

+ +

+Definition at line 108 of file mailbox.h. +

+Referenced by addMessage(), getMessage(), getMesseageListe(), onKill(), popMessage(), save(), and ~CLocalMailBox().

+

+ + + + +
+ + +
IObjectIA::CProcessResult NLAIAGENT::CLocalMailBox::_RunState [private] +
+
+ + + + + +
+   + + +

+Statue of run. +

+ +

+Definition at line 106 of file mailbox.h.

+

+ + + + +
+ + +
sint NLAIAGENT::CLocalMailBox::_Size [private] +
+
+ + + + + +
+   + + +

+Count of messages. +

+ +

+Definition at line 112 of file mailbox.h.

+

+ + + + +
+ + +
const NLAIC::CIdentType CLocalMailBox::IdLocalMailBox [static] +
+
+ + + + + +
+   + + +

+ +

+Referenced by getType().

+

+ + + + +
+ + +
TProcessStatement NLAIAGENT::IObjectIA::ProcessBuzzy = processBuzzy [static, inherited] +
+
+ + + + + +
+   + + +

+Define the an buzzy state for an agent all time in this state. +

+Definition at line 147 of file baseai.cpp.

+

+ + + + +
+ + +
TProcessStatement NLAIAGENT::IObjectIA::ProcessEnd = processEnd [static, inherited] +
+
+ + + + + +
+   + + +

+Define the an end state for an agent all time in this state. +

+Definition at line 148 of file baseai.cpp.

+

+ + + + +
+ + +
TProcessStatement NLAIAGENT::IObjectIA::ProcessError = processError [static, inherited] +
+
+ + + + + +
+   + + +

+Define the an error state for an agent all time in this state. +

+Definition at line 149 of file baseai.cpp.

+

+ + + + +
+ + +
TProcessStatement NLAIAGENT::IObjectIA::ProcessIdle = processIdle [static, inherited] +
+
+ + + + + +
+   + + +

+Define the an idle state for an agent all time in this state. +

+Definition at line 145 of file baseai.cpp.

+

+ + + + +
+ + +
TProcessStatement NLAIAGENT::IObjectIA::ProcessLocked = processLocked [static, inherited] +
+
+ + + + + +
+   + + +

+Define the an locked state for an agent all time in this state. +

+Definition at line 146 of file baseai.cpp.

+

+ + + + +
+ + +
IObjectIA::CProcessResult NLAIAGENT::IObjectIA::ProcessNotComplit = IObjectIA::CProcessResult(processNotComplete) [static, inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 144 of file baseai.cpp.

+

+ + + + +
+ + +
IObjectIA::CProcessResult NLAIAGENT::IObjectIA::ProcessRun = IObjectIA::CProcessResult() [static, inherited] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 143 of file baseai.cpp.

+


The documentation for this class was generated from the following files: +
Generated on Tue Mar 16 09:18:42 2004 for NeL by + +doxygen +1.3.6
+ + -- cgit v1.2.1