From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- .../nel/agent__local__mailer_8cpp-source.html | 176 +++++++++++++++++++++ 1 file changed, 176 insertions(+) create mode 100644 docs/doxygen/nel/agent__local__mailer_8cpp-source.html (limited to 'docs/doxygen/nel/agent__local__mailer_8cpp-source.html') diff --git a/docs/doxygen/nel/agent__local__mailer_8cpp-source.html b/docs/doxygen/nel/agent__local__mailer_8cpp-source.html new file mode 100644 index 00000000..3e49e92c --- /dev/null +++ b/docs/doxygen/nel/agent__local__mailer_8cpp-source.html @@ -0,0 +1,176 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# 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  
+

agent_local_mailer.cpp

Go to the documentation of this file.
00001 
+00006 /* Copyright, 2000 Nevrax Ltd.
+00007  *
+00008  * This file is part of NEVRAX NEL.
+00009  * NEVRAX NEL is free software; you can redistribute it and/or modify
+00010  * it under the terms of the GNU General Public License as published by
+00011  * the Free Software Foundation; either version 2, or (at your option)
+00012  * any later version.
+00013 
+00014  * NEVRAX NEL is distributed in the hope that it will be useful, but
+00015  * WITHOUT ANY WARRANTY; without even the implied warranty of
+00016  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+00017  * General Public License for more details.
+00018 
+00019  * You should have received a copy of the GNU General Public License
+00020  * along with NEVRAX NEL; see the file COPYING. If not, write to the
+00021  * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+00022  * MA 02111-1307, USA.
+00023  */
+00024 
+00025 #include "nel/ai/agent/agent_local_mailer.h"
+00026 #include "nel/ai/script/interpret_object_message.h"
+00027 #include "nel/ai/agent/agent_digital.h"
+00028 
+00029 namespace NLAIAGENT
+00030 {
+00031         CLocalAgentMail::CLocalAgentMail(IBasicAgent *host):IAgent(NULL)
+00032         {
+00033                 _HostAgent = host;
+00034                 if(_HostAgent != NULL) connect(_HostAgent);
+00035                 //
+00036         }
+00037 
+00038         CLocalAgentMail::~CLocalAgentMail()
+00039         {
+00040                 /*if(_HostAgent) 
+00041                 {
+00042                         //_HostAgent->onKill(this);                     
+00043                         Kill();
+00044 
+00045                         //_HostAgent->release();
+00046 
+00047                 }
+00048                 else Kill();*/
+00049         }
+00050 
+00051         void CLocalAgentMail::runChildren()
+00052         {
+00053 
+00054         }
+00055         void CLocalAgentMail::processMessages()
+00056         {
+00057         }
+00058         void CLocalAgentMail::onKill(IConnectIA *a)
+00059         {
+00060                 if(a == _HostAgent)
+00061                 {
+00062                         _HostAgent = NULL;
+00063                         IAgent::onKill(a);
+00064                         release();
+00065                 }
+00066                 else
+00067                 {
+00068                         IAgent::onKill(a);
+00069                 }
+00070                 
+00071         }
+00072 
+00073         tQueue CLocalAgentMail::isMember(const IVarName *h,const IVarName *m,const IObjectIA &p) const
+00074         {
+00075                 if(_HostAgent)
+00076                 {
+00077                         return _HostAgent->isMember(h,m,p);
+00078                 }
+00079                 else
+00080                 {
+00081                         const NLAIAGENT::IObjectIA *cl = (const NLAIAGENT::IObjectIA *)(IAgent::IdAgent->getFactory())->getClass();
+00082                         return cl->isMember(h,m,p);
+00083                 }
+00084         }
+00085         
+00086 
+00087         IObjectIA::CProcessResult CLocalAgentMail::sendMessage(IObjectIA *m)
+00088         {
+00089                 IMessageBase *msg = (IMessageBase *)m;
+00090 
+00091                 if(NLAISCRIPT::CMsgNotifyParentClass::IdMsgNotifyParentClass == msg->getType() )
+00092                 {                       
+00093                         const INombreDefine *n = (const INombreDefine *)msg->getFront();
+00094                         if(n->getNumber() != 0.0)
+00095                         {
+00096                                 const CLocalAgentMail *parent = (const CLocalAgentMail *)msg->get();
+00097                                 setParent((const IWordNumRef *)*parent->getHost());
+00098                         }
+00099                         return IObjectIA::CProcessResult();                     
+00100                 }
+00101                 else
+00102                 {
+00103                         return ((IObjectIA  *)_HostAgent)->sendMessage(msg);
+00104                 }
+00105         }       
+00106 }
+
+ + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1