# 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_object_message.h

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 #ifndef NL_INTERPRET_OBJECT_MESSAGE_H
00025 #define NL_INTERPRET_OBJECT_MESSAGE_H
00026 
00027 #include "nel/ai/script/interpret_object_agent.h"
00028 
00029 namespace NLAISCRIPT 
00030 {
00031         class CMessageClass: public CAgentClass
00032         {
00033         public:
00034                 static const NLAIC::CIdentType IdMessageClass;
00035         public:
00036                 CMessageClass(const NLAIAGENT::IVarName &);
00037                 CMessageClass(const NLAIC::CIdentType &);
00038                 CMessageClass(const NLAIAGENT::IVarName &, const NLAIAGENT::IVarName &);
00039                 CMessageClass(const CMessageClass &);
00040                 CMessageClass();
00041 
00043 
00044                 virtual const NLAIC::IBasicType *clone() const;
00045                 virtual const NLAIC::IBasicType *newInstance() const;
00046                 virtual void getDebugString(std::string &) const;
00047                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00049 
00050                 virtual NLAIC::CTypeOfObject getTypeClass() const               
00051                 {
00052                         uint b = NLAIC::CTypeOfObject::tObject | NLAIC::CTypeOfObject::tMessage;
00053                         return NLAIC::CTypeOfObject((uint)IClassInterpret::getTypeClass() | b);
00054                 }
00055 
00056                 virtual const NLAIC::CIdentType &getType() const;
00057 
00058                 virtual ~CMessageClass();
00059         };
00060 
00061         class CMsgNotifyParentClass: public CMessageClass
00062         {
00063         public:
00064                 static const NLAIC::CIdentType IdMsgNotifyParentClass;
00065         public:
00066                 CMsgNotifyParentClass(const NLAIAGENT::IVarName &);
00067                 CMsgNotifyParentClass(const NLAIC::CIdentType &);
00068                 CMsgNotifyParentClass();
00069                 ~CMsgNotifyParentClass(){}
00070 
00072 
00073                 virtual const NLAIC::IBasicType *clone() const;
00074                 virtual const NLAIC::IBasicType *newInstance() const;
00075                 virtual const NLAIC::CIdentType &getType() const
00076                 {
00077                         return IdMsgNotifyParentClass;
00078                 }
00079                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00081         };
00082 
00083         class CGoalMsgClass : public CMessageClass
00084         {
00085         public:
00086                 static const NLAIC::CIdentType IdGoalMsgClass;
00087         public:
00088                 CGoalMsgClass(const NLAIAGENT::IVarName &);
00089                 CGoalMsgClass(const NLAIC::CIdentType &);
00090                 CGoalMsgClass();
00091                 virtual ~CGoalMsgClass(){}
00092 
00094 
00095                 virtual const NLAIC::IBasicType *clone() const;
00096                 virtual const NLAIC::IBasicType *newInstance() const;
00097                 virtual const NLAIC::CIdentType &getType() const
00098                 {
00099                         return IdGoalMsgClass;
00100                 }
00101                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00103         };
00104 
00105         class CCancelGoalMsgClass : public CMessageClass
00106         {
00107         public:
00108                 static const NLAIC::CIdentType IdCancelGoalMsgClass;
00109         public:
00110                 CCancelGoalMsgClass(const NLAIAGENT::IVarName &);
00111                 CCancelGoalMsgClass(const NLAIC::CIdentType &);
00112                 CCancelGoalMsgClass();
00113                 virtual ~CCancelGoalMsgClass(){}
00114 
00116 
00117                 virtual const NLAIC::IBasicType *clone() const;
00118                 virtual const NLAIC::IBasicType *newInstance() const;
00119                 virtual const NLAIC::CIdentType &getType() const
00120                 {
00121                         return IdCancelGoalMsgClass;
00122                 }
00123                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00125         };
00126 
00127         class CFactMsgClass : public CMessageClass
00128         {
00129         public:
00130                 static const NLAIC::CIdentType IdFactMsgClass;
00131         public:
00132                 CFactMsgClass(const NLAIAGENT::IVarName &);
00133                 CFactMsgClass(const NLAIC::CIdentType &);
00134                 CFactMsgClass();
00135                 virtual ~CFactMsgClass(){}
00136 
00138 
00139                 virtual const NLAIC::IBasicType *clone() const;
00140                 virtual const NLAIC::IBasicType *newInstance() const;
00141                 virtual const NLAIC::CIdentType &getType() const
00142                 {
00143                         return IdFactMsgClass;
00144                 }
00145                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00147         };
00148 
00149         class CDebugMsgClass : public CMessageClass
00150         {
00151         public:
00152                 static const NLAIC::CIdentType IdDebugMsgClass;
00153         public:
00154                 CDebugMsgClass(const NLAIAGENT::IVarName &);
00155                 CDebugMsgClass(const NLAIC::CIdentType &);
00156                 CDebugMsgClass();
00157                 virtual ~CDebugMsgClass(){}
00158 
00160 
00161                 virtual const NLAIC::IBasicType *clone() const;
00162                 virtual const NLAIC::IBasicType *newInstance() const;
00163                 virtual const NLAIC::CIdentType &getType() const
00164                 {
00165                         return IdDebugMsgClass;
00166                 }
00167                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00169         };
00170 
00171         class COnChangeMsgClass : public CMessageClass
00172         {
00173         public:
00174                 static const NLAIC::CIdentType IdOnChangeMsgClass;
00175         public:
00176                 COnChangeMsgClass(const NLAIAGENT::IVarName &);
00177                 COnChangeMsgClass(const NLAIC::CIdentType &);
00178                 COnChangeMsgClass();
00179                 virtual ~COnChangeMsgClass(){}
00180 
00182 
00183                 virtual const NLAIC::IBasicType *clone() const;
00184                 virtual const NLAIC::IBasicType *newInstance() const;
00185                 virtual const NLAIC::CIdentType &getType() const
00186                 {
00187                         return IdOnChangeMsgClass;
00188                 }
00189                 virtual NLAIAGENT::IObjectIA *buildNewInstance() const;         
00191         };
00192 }
00193 #endif