# 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  

interpret_message_connect.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 #include "nel/ai/c/registry_class.h"
00025 #include "nel/ai/agent/message_script.h"
00026 #include "nel/ai/script/lexsupport.h"
00027 #include "nel/ai/script/interpret_message_connect.h"
00028 #include "nel/ai/agent/msg_connect.h"
00029 
00030 namespace NLAISCRIPT
00031 {
00032 
00033 //#########################################
00034 //              CConnectObjectValueMsgClass
00035 //#########################################
00036 
00037         CConnectObjectValueMsgClass::CConnectObjectValueMsgClass(const NLAIAGENT::IVarName &s):CMessageClass(s)
00038         {
00039                 setBaseObjectInstance((NLAIAGENT::IObjectIA *)NLAIAGENT::CConnectObjectValueMsg::IdConnectObjectValueMsg.getFactory()->getClass());             
00040                 registerComponent(NLAIAGENT::CStringVarName("String"),NLAIAGENT::CStringVarName("ComponentName"));
00041                 setInheritanceName(NLAIAGENT::CStringVarName("Message"));
00042                 setClassName(NLAIAGENT::CStringVarName("CConnectObjectValueMsgClass"));
00043                 buildVTable();
00044         }
00045 
00046         CConnectObjectValueMsgClass::CConnectObjectValueMsgClass(const NLAIC::CIdentType &id):CMessageClass(id)
00047         {
00048                 setBaseObjectInstance((NLAIAGENT::IObjectIA *)NLAIAGENT::CConnectObjectValueMsg::IdConnectObjectValueMsg.getFactory()->getClass());             
00049                 registerComponent(NLAIAGENT::CStringVarName("String"),NLAIAGENT::CStringVarName("ComponentName"));
00050                 setInheritanceName(NLAIAGENT::CStringVarName("Message"));
00051                 setClassName(NLAIAGENT::CStringVarName("CConnectObjectValueMsgClass"));
00052                 buildVTable();
00053         }
00054 
00055         CConnectObjectValueMsgClass::CConnectObjectValueMsgClass() : CMessageClass()
00056         {               
00057                 setBaseObjectInstance((NLAIAGENT::IObjectIA *)NLAIAGENT::CConnectObjectValueMsg::IdConnectObjectValueMsg.getFactory()->getClass());             
00058                 registerComponent(NLAIAGENT::CStringVarName("String"),NLAIAGENT::CStringVarName("ComponentName"));
00059                 setInheritanceName(NLAIAGENT::CStringVarName("Message"));
00060                 setClassName(NLAIAGENT::CStringVarName("CConnectObjectValueMsgClass"));
00061                 buildVTable();
00062         }
00063         
00064         const NLAIC::IBasicType *CConnectObjectValueMsgClass::clone() const
00065         {
00066                 return new CConnectObjectValueMsgClass();
00067         }
00068 
00069         const NLAIC::IBasicType *CConnectObjectValueMsgClass::newInstance() const
00070         {
00071                 return new CConnectObjectValueMsgClass();
00072         }
00073 
00074         NLAIAGENT::IObjectIA *CConnectObjectValueMsgClass::buildNewInstance() const
00075         {
00076                 std::list<NLAIAGENT::IObjectIA *> components;
00077                 createBaseClassComponents( components );
00078 
00079                 NLAIAGENT::IObjectIA *x = new NLAIAGENT::CConnectObjectValueMsg( components,  (CMessageClass *) this );         
00080                 return x;
00081         }       
00082 }