Home | nevrax.com |
|
interpret_message_setvalue.cppGo 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_setvalue.h" 00028 #include "nel/ai/agent/msg_setvalue.h" 00029 00030 namespace NLAISCRIPT 00031 { 00032 00033 CSetValueMsgClass::CSetValueMsgClass(const NLAIAGENT::IVarName &s):CMessageClass(s) 00034 { 00035 setBaseObjectInstance((NLAIAGENT::IObjectIA *)NLAIAGENT::CSetValueMsg::IdSetValueMsg.getFactory()->getClass()); 00036 setInheritanceName(NLAIAGENT::CStringVarName("Message")); 00037 setClassName(NLAIAGENT::CStringVarName("CSetValueMsgClass")); 00038 buildVTable(); 00039 } 00040 00041 CSetValueMsgClass::CSetValueMsgClass(const NLAIC::CIdentType &id):CMessageClass(id) 00042 { 00043 setBaseObjectInstance((NLAIAGENT::IObjectIA *)NLAIAGENT::CSetValueMsg::IdSetValueMsg.getFactory()->getClass()); 00044 setInheritanceName(NLAIAGENT::CStringVarName("Message")); 00045 setClassName(NLAIAGENT::CStringVarName("CSetValueMsgClass")); 00046 buildVTable(); 00047 } 00048 00049 CSetValueMsgClass::CSetValueMsgClass() : CMessageClass() 00050 { 00051 setBaseObjectInstance((NLAIAGENT::IObjectIA *)NLAIAGENT::CSetValueMsg::IdSetValueMsg.getFactory()->getClass()); 00052 setInheritanceName(NLAIAGENT::CStringVarName("Message")); 00053 setClassName(NLAIAGENT::CStringVarName("CSetValueMsgClass")); 00054 buildVTable(); 00055 } 00056 00057 const NLAIC::IBasicType *CSetValueMsgClass::clone() const 00058 { 00059 return new CSetValueMsgClass(); 00060 } 00061 00062 const NLAIC::IBasicType *CSetValueMsgClass::newInstance() const 00063 { 00064 return new CSetValueMsgClass(); 00065 } 00066 00067 NLAIAGENT::IObjectIA *CSetValueMsgClass::buildNewInstance() const 00068 { 00069 std::list<NLAIAGENT::IObjectIA *> components; 00070 createBaseClassComponents( components ); 00071 00072 NLAIAGENT::IObjectIA *x = new NLAIAGENT::CSetValueMsg( components, (CMessageClass *) this ); 00073 return x; 00074 } 00075 } |