LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
PathsInfo.h
Go to the documentation of this file.
1 #ifndef art_Framework_Core_PathsInfo_h
2 #define art_Framework_Core_PathsInfo_h
3 // vim: set sw=2 expandtab :
4 
8 
9 #include <atomic>
10 #include <cstddef>
11 #include <map>
12 #include <memory>
13 #include <string>
14 
15 namespace art {
16  class PathsInfo {
17  public:
18  ~PathsInfo();
19  std::map<std::string, std::shared_ptr<Worker>>& workers();
20  std::map<std::string, std::shared_ptr<Worker>> const& workers() const;
21  void add_path(ActionTable const&,
22  ActivityRegistry const&,
23  PathContext const&,
24  std::vector<WorkerInPath>&&,
26  std::vector<Path>& paths();
27  std::vector<Path> const& paths() const;
28  std::vector<std::string> pathNames() const;
30  void reset();
31  void reset_for_event();
34  std::size_t passedEvents() const;
35  std::size_t failedEvents() const;
36  std::size_t totalEvents() const;
37 
38  private:
39  // Maps module_label to Worker.
40  std::map<std::string, std::shared_ptr<Worker>> workers_{};
41  std::vector<Path> paths_{};
43  std::atomic<std::size_t> totalEvents_{};
44  std::atomic<std::size_t> passedEvents_{};
45  };
46 } // namespace art
47 
48 #endif /* art_Framework_Core_PathsInfo_h */
49 
50 // Local Variables:
51 // mode: c++
52 // End:
void add_path(ActionTable const &, ActivityRegistry const &, PathContext const &, std::vector< WorkerInPath > &&, GlobalTaskGroup &)
Definition: PathsInfo.cc:34
HLTGlobalStatus & pathResults()
Definition: PathsInfo.cc:92
std::vector< Path > & paths()
Definition: PathsInfo.cc:54
std::atomic< std::size_t > totalEvents_
Definition: PathsInfo.h:43
std::size_t passedEvents() const
Definition: PathsInfo.cc:110
std::size_t failedEvents() const
Definition: PathsInfo.cc:116
std::map< std::string, std::shared_ptr< Worker > > & workers()
Definition: PathsInfo.cc:22
std::size_t totalEvents() const
Definition: PathsInfo.cc:123
void reset_for_event()
Definition: PathsInfo.cc:85
std::vector< Path > paths_
Definition: PathsInfo.h:41
std::atomic< std::size_t > passedEvents_
Definition: PathsInfo.h:44
void incrementPassedEventCount()
Definition: PathsInfo.cc:104
Definition: MVAAlg.h:12
HLTGlobalStatus pathResults_
Definition: PathsInfo.h:42
std::map< std::string, std::shared_ptr< Worker > > workers_
Definition: PathsInfo.h:40
void reset()
Definition: PathsInfo.cc:77
std::vector< std::string > pathNames() const
Definition: PathsInfo.cc:66
void incrementTotalEventCount()
Definition: PathsInfo.cc:98