LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
SubRunPrincipal.h
Go to the documentation of this file.
1 #ifndef art_Framework_Principal_SubRunPrincipal_h
2 #define art_Framework_Principal_SubRunPrincipal_h
3 // vim: set sw=2 expandtab :
4 
10 #include "cetlib/exempt_ptr.h"
11 
12 #include <memory>
13 
14 namespace art {
15 
16  class SubRunPrincipal final : public Principal {
17  public:
20 
23  SubRunAuxiliary const&,
24  ProcessConfiguration const&,
25  cet::exempt_ptr<ProductTable const>,
26  std::unique_ptr<DelayedReader>&& = std::make_unique<NoDelayedReader>());
27 
29  RangeSet const& rs = RangeSet::invalid());
30  SubRun makeSubRun(ModuleContext const& mc) const;
31 
32  Timestamp const& beginTime() const;
33  Timestamp const& endTime() const;
34  RunPrincipal const& runPrincipal() const;
35  RunID const& runID() const;
36  RunNumber_t run() const;
37  SubRunAuxiliary const& subRunAux() const;
38  SubRunNumber_t subRun() const;
39  SubRunID subRunID() const;
41 
42  void setRunPrincipal(cet::exempt_ptr<RunPrincipal const> rp);
43  void createGroupsForProducedProducts(ProductTables const& producedProducts);
44 
45  private:
46  cet::exempt_ptr<RunPrincipal const> runPrincipal_{nullptr};
48  };
49 
50 } // namespace art
51 
52 #endif /* art_Framework_Principal_SubRunPrincipal_h */
53 
54 // Local Variables:
55 // mode: c++
56 // End:
void setRunPrincipal(cet::exempt_ptr< RunPrincipal const > rp)
cet::exempt_ptr< RunPrincipal const > runPrincipal_
RunNumber_t run() const
SubRunAuxiliary aux_
void updateSeenRanges(RangeSet const &rs)
Definition: Principal.cc:707
RunPrincipal const & runPrincipal() const
static constexpr BranchType branch_type
IDNumber_t< Level::SubRun > SubRunNumber_t
Definition: IDNumber.h:119
SubRunPrincipal(SubRunAuxiliary const &, ProcessConfiguration const &, cet::exempt_ptr< ProductTable const >, std::unique_ptr< DelayedReader > &&=std::make_unique< NoDelayedReader >())
SubRunNumber_t subRun() const
static constexpr BranchType branch_type
static RangeSet invalid()
Definition: RangeSet.cc:45
BranchType
Definition: BranchType.h:20
Definition: MVAAlg.h:12
SubRun makeSubRun(ModuleContext const &mc, RangeSet const &rs=RangeSet::invalid())
Timestamp const & endTime() const
SubRunAuxiliary const & subRunAux() const
void createGroupsForProducedProducts(ProductTables const &producedProducts)
Timestamp const & beginTime() const
RunID const & runID() const
SubRunID subRunID() const
IDNumber_t< Level::Run > RunNumber_t
Definition: IDNumber.h:120