LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
ProductSemantics.h
Go to the documentation of this file.
1 #ifndef art_Utilities_ProductSemantics_h
2 #define art_Utilities_ProductSemantics_h
3 
5 
6 namespace art {
7 
8  template <Level>
9  struct FullSemantic {};
10 
11  template <Level L>
12  struct FragmentSemantic {};
13 
14  template <Level>
16  explicit RangedFragmentSemantic(RangeSet const& r) : rs{r} {}
18  };
19 
20  // constexpr implies inline
21  constexpr auto
23  {
24  return FullSemantic<Level::Run>{};
25  }
26  constexpr auto
28  {
30  }
31 
32  constexpr auto
34  {
36  }
37  constexpr auto
39  {
41  }
42 
43  inline auto
44  runFragment(RangeSet const& rs)
45  {
47  }
48  inline auto
50  {
52  }
53 
54 } // namespace art
55 
56 #endif /* art_Utilities_ProductSemantics_h */
57 
58 // Local variables:
59 // mode: c++
60 // End:
TRandom r
Definition: spectrum.C:23
constexpr auto fullRun()
constexpr auto runFragment()
RangedFragmentSemantic(RangeSet const &r)
constexpr auto subRunFragment()
static RangeSet invalid()
Definition: RangeSet.cc:45
Definition: MVAAlg.h:12
constexpr auto fullSubRun()