29 #ifndef MODULE_DESCRIPTION_LOOKUP_H
30 #define MODULE_DESCRIPTION_LOOKUP_H
34 #include <boost/functional/factory.hpp>
35 #include <Modules/Factory/share.h>
49 struct ModuleLookupInfoLess
57 typedef std::map<Dataflow::Networks::ModuleLookupInfo, Dataflow::Networks::ModuleDescription, ModuleLookupInfoLess> Lookup;
59 bool includeTestingModules_;
62 template <
class ModuleType>
63 void addModuleDesc(
const std::string&
name,
const std::string& category,
const std::string& package,
const std::string& status,
const std::string& desc)
66 addModuleDesc<ModuleType>(info, status, desc);
69 template <
class ModuleType>
77 description.
maker_ = boost::factory<ModuleType*>();
81 lookup_[info] = description;
86 template <
class ModuleType>
87 void addModuleDesc(
const std::string& status,
const std::string& desc)
89 addModuleDesc<ModuleType>(ModuleType::staticInfo_, status, desc);
92 void addEssentialModules();
93 void addTestingModules();
94 void addBundleModules();
95 void addBrainSpecificModules();
96 void addMoreModules();
ModuleLookupInfo lookupInfo_
Definition: ModuleDescription.h:115
Definition: ModuleDescription.h:99
Definition: ModuleDescriptionLookup.h:41
Dataflow::Networks::ModuleDescriptionMap descMap_
Definition: ModuleDescriptionLookup.h:46
#define SCISHARE
Definition: share.h:39
static std::vector< SCIRun::Dataflow::Networks::OutputPortDescription > outputs()
Definition: Module.h:771
std::string module_name_
Definition: ModuleDescription.h:105
const char * name[]
Definition: BoostGraphExampleTests.cc:87
std::vector< InputPortDescription > input_ports_
Definition: ModuleDescription.h:119
std::map< std::string, std::map< std::string, std::map< std::string, ModuleDescription > > > ModuleDescriptionMap
Definition: NetworkFwd.h:88
std::string package_name_
Definition: ModuleDescription.h:103
std::string moduleInfo_
Definition: ModuleDescription.h:118
Definition: ModuleDescription.h:111
ModuleMaker maker_
Definition: ModuleDescription.h:126
std::string category_name_
Definition: ModuleDescription.h:104
std::string moduleStatus_
Definition: ModuleDescription.h:117
static std::vector< SCIRun::Dataflow::Networks::InputPortDescription > inputs()
Definition: Module.h:681
std::vector< OutputPortDescription > output_ports_
Definition: ModuleDescription.h:120