#ifndef Hadrons____NAMESPACE_______FILEBASENAME____hpp_ #define Hadrons____NAMESPACE_______FILEBASENAME____hpp_ #include #include #include BEGIN_HADRONS_NAMESPACE /****************************************************************************** * ___FILEBASENAME___ * ******************************************************************************/ BEGIN_MODULE_NAMESPACE(___NAMESPACE___) class ___FILEBASENAME___Par: Serializable { public: GRID_SERIALIZABLE_CLASS_MEMBERS(___FILEBASENAME___Par, unsigned int, i); }; template class T___FILEBASENAME___: public Module<___FILEBASENAME___Par> { public: // constructor T___FILEBASENAME___(const std::string name); // destructor virtual ~T___FILEBASENAME___(void) {}; // dependency relation virtual std::vector getInput(void); virtual std::vector getOutput(void); // setup virtual void setup(void); // execution virtual void execute(void); }; MODULE_REGISTER_TMP(___FILEBASENAME___, T___FILEBASENAME___, ___NAMESPACE___); /****************************************************************************** * T___FILEBASENAME___ implementation * ******************************************************************************/ // constructor ///////////////////////////////////////////////////////////////// template T___FILEBASENAME___::T___FILEBASENAME___(const std::string name) : Module<___FILEBASENAME___Par>(name) {} // dependencies/products /////////////////////////////////////////////////////// template std::vector T___FILEBASENAME___::getInput(void) { std::vector in; return in; } template std::vector T___FILEBASENAME___::getOutput(void) { std::vector out = {getName()}; return out; } // setup /////////////////////////////////////////////////////////////////////// template void T___FILEBASENAME___::setup(void) { } // execution /////////////////////////////////////////////////////////////////// template void T___FILEBASENAME___::execute(void) { } END_MODULE_NAMESPACE END_HADRONS_NAMESPACE #endif // Hadrons____NAMESPACE_______FILEBASENAME____hpp_