Home | nevrax.com |
|
agent_manager.hGo to the documentation of this file.00001 00007 /* Copyright, 2000 Nevrax Ltd. 00008 * 00009 * This file is part of NEVRAX NEL. 00010 * NEVRAX NEL is free software; you can redistribute it and/or modify 00011 * it under the terms of the GNU General Public License as published by 00012 * the Free Software Foundation; either version 2, or (at your option) 00013 * any later version. 00014 00015 * NEVRAX NEL is distributed in the hope that it will be useful, but 00016 * WITHOUT ANY WARRANTY; without even the implied warranty of 00017 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00018 * General Public License for more details. 00019 00020 * You should have received a copy of the GNU General Public License 00021 * along with NEVRAX NEL; see the file COPYING. If not, write to the 00022 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, 00023 * MA 02111-1307, USA. 00024 */ 00025 00026 #ifndef NL_AGENTS_MANAGER_H 00027 #define NL_AGENTS_MANAGER_H 00028 00029 namespace NLAIAGENT 00030 { 00043 class IAgentManager : public IAgent 00044 { 00045 public: 00046 00048 IAgentManager(IBasicAgent *parent):IAgent(parent) 00049 { 00050 } 00051 00053 IAgentManager(IBasicAgent *parent,IMailBox *m):IAgent(parent,m) 00054 { 00055 } 00056 00058 IAgentManager(const IAgentManager &a):IAgent(a) 00059 { 00060 } 00066 virtual const IObjectIA *getAgentContext() const = 0; 00067 00069 virtual int getBaseMethodCount() const 00070 { 00071 return IAgent::getMethodIndexSize(); 00072 } 00073 00074 virtual~IAgentManager() 00075 { 00076 } 00077 00078 }; 00079 } 00080 00081 #endif |