00001 /********************************************************************** 00002 ** This program is part of 'MOOSE', the 00003 ** Messaging Object Oriented Simulation Environment. 00004 ** Copyright (C) 2003-2010 Upinder S. Bhalla. and NCBS 00005 ** It is made available under the terms of the 00006 ** GNU Lesser General Public License version 2.1 00007 ** See the file COPYING.LIB for the full notice. 00008 **********************************************************************/ 00009 00010 #ifndef _ZOMBIE_FUNCTION_H 00011 #define _ZOMBIE_FUNCTION_H 00012 00013 class ZombieFunction: public Function 00014 { 00015 public: 00016 ZombieFunction(); 00017 ~ZombieFunction(); 00018 00020 // Field assignment stuff 00022 void setExpr( const Eref& e, string val ); 00023 00025 // Dest funcs 00027 void process(const Eref &e, ProcPtr p); 00028 void reinit(const Eref &e, ProcPtr p); 00029 00031 // utility funcs 00033 00034 void setSolver( Id solver, Id orig ); 00035 00036 static void zombify( Element* orig, const Cinfo* zClass, 00037 Id ksolve, Id dsolve ); 00038 00039 static const Cinfo* initCinfo(); 00040 private: 00041 }; 00042 00043 #endif // _ZOMBIE_FUNCTION_H