Scine::Readuct  6.0.0
This is the SCINE module ReaDuct.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
ReaductModule.h
Go to the documentation of this file.
1 
8 #ifndef READUCT_READUCTMODULE_H
9 #define READUCT_READUCTMODULE_H
10 
11 #include <Core/Module.h>
12 #include <boost/dll/alias.hpp>
13 #include <boost/hana/define_struct.hpp>
14 #include <memory>
15 
16 namespace Scine {
17 namespace Readuct {
18 
20  public:
21  BOOST_HANA_DEFINE_STRUCT(ReaductModule, (std::vector<std::string>, transition_state_optimizer),
22  (std::vector<std::string>, reaction_path_optimizer));
23 
24  ReaductModule() noexcept;
25 
26  std::string name() const noexcept final;
27 
28  boost::any get(const std::string& interface, const std::string& model) const final;
29 
30  bool has(const std::string& interface, const std::string& model) const noexcept final;
31 
32  std::vector<std::string> announceInterfaces() const noexcept final;
33 
34  std::vector<std::string> announceModels(const std::string& concept) const noexcept final;
35 
36  static std::shared_ptr<Module> make();
37 };
38 
39 } // namespace Readuct
40 } // namespace Scine
41 
42 // At global namespace, define the entry point for the module.
43 BOOST_DLL_ALIAS(Scine::Readuct::ReaductModule::make, moduleFactory)
44 
45 #endif // READUCT_READUCTMODULE_H
Definition: ReaductModule.h:19