LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
CurrentModule.h
Go to the documentation of this file.
1 #ifndef art_Framework_Services_System_CurrentModule_h
2 #define art_Framework_Services_System_CurrentModule_h
3 
4 // ======================================================================
5 //
6 // CurrentModule: A Service to track and make available information re
7 // the currently-running module
8 //
9 // ======================================================================
10 
13 #include <string>
14 
15 namespace art {
16  class ActivityRegistry; // declaration only
17  class CurrentModule; // defined below
18 }
19 
20 // ----------------------------------------------------------------------
21 
23 
24  CurrentModule(CurrentModule const&) = delete;
25  CurrentModule operator=(CurrentModule const&) = delete;
26 
27 public:
29 
30  std::string const&
31  label() const
32  {
33  return desc_.moduleLabel();
34  }
35 
36 private:
38 
39  void track_module(art::ModuleDescription const& desc);
40 
41 }; // CurrentModule
42 
43 // ======================================================================
44 
46 #endif /* art_Framework_Services_System_CurrentModule_h */
47 
48 // Local Variables:
49 // mode: c++
50 // End:
#define DECLARE_ART_SYSTEM_SERVICE(svc, scope)
CurrentModule operator=(CurrentModule const &)=delete
std::string const & label() const
Definition: CurrentModule.h:31
CurrentModule(CurrentModule const &)=delete
std::string const & moduleLabel() const
void track_module(art::ModuleDescription const &desc)
HLT enums.
art::ModuleDescription desc_
Definition: CurrentModule.h:37