00001 #ifndef ACTIVITIES_HXX_ 00002 # define ACTIVITIES_HXX_ 00003 00004 namespace tasks 00005 { 00006 inline const std::string & 00007 ActivityMaker::get_name() 00008 { 00009 return _name; 00010 } 00011 00012 template<typename ACTIVITY_CLASS> 00013 DefActivityMaker<ACTIVITY_CLASS>::DefActivityMaker() : ActivityMaker() 00014 { 00015 _name = ACTIVITY_CLASS::get_static_name(); 00016 } 00017 00018 template<typename ACTIVITY_CLASS> 00019 Activity & 00020 DefActivityMaker<ACTIVITY_CLASS>::make() 00021 { 00022 return *new ACTIVITY_CLASS(); 00023 } 00024 } 00025 00026 #endif