LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
EnabledModules.h
Go to the documentation of this file.
1 #ifndef art_Framework_Core_detail_EnabledModules_h
2 #define art_Framework_Core_detail_EnabledModules_h
3 
5 
6 #include <string>
7 #include <vector>
8 
9 namespace art::detail {
11  public:
12  static EnabledModules none();
13  explicit EnabledModules(keytype_for_name_t&& enabled_modules,
14  module_entries_for_ordered_path_t&& trigger_paths,
17  bool end_paths_override);
18 
19  keytype_for_name_t const&
20  modules() const noexcept
21  {
22  return enabledModules_;
23  }
24 
26  trigger_path_specs() const noexcept
27  {
28  return triggerPaths_;
29  }
30 
31  bool
32  trigger_paths_override() const noexcept
33  {
34  return triggerPathsOverride_;
35  }
36  bool
37  end_paths_override() const noexcept
38  {
39  return endPathsOverride_;
40  }
41 
42  std::vector<std::string> trigger_path_names() const;
43 
45  end_paths() const noexcept
46  {
47  return endPaths_;
48  }
49 
50  private:
51  EnabledModules() = default;
55  bool triggerPathsOverride_{false};
56  bool endPathsOverride_{false};
57  };
58 }
59 
60 #endif /* art_Framework_Core_detail_EnabledModules_h */
61 
62 // Local Variables:
63 // mode: c++
64 // End:
keytype_for_name_t const & modules() const noexcept
std::map< std::string, ModuleKeyAndType > keytype_for_name_t
module_entries_for_ordered_path_t endPaths_
module_entries_for_ordered_path_t end_paths() const noexcept
module_entries_for_ordered_path_t const & trigger_path_specs() const noexcept
bool end_paths_override() const noexcept
keytype_for_name_t enabledModules_
bool trigger_paths_override() const noexcept
module_entries_for_ordered_path_t triggerPaths_
std::vector< std::pair< PathSpec, std::vector< ModuleSpec >>> module_entries_for_ordered_path_t
std::vector< std::string > trigger_path_names() const
static EnabledModules none()