1 #ifndef art_Framework_Principal_Principal_h 2 #define art_Framework_Principal_Principal_h 75 std::unique_ptr<DelayedReader>&&);
81 std::unique_ptr<DelayedReader>&& reader =
82 std::make_unique<NoDelayedReader>());
88 std::unique_ptr<DelayedReader>&& reader =
89 std::make_unique<NoDelayedReader>());
95 std::unique_ptr<History>&&
history = std::make_unique<History>(),
96 std::unique_ptr<DelayedReader>&& reader =
97 std::make_unique<NoDelayedReader>(),
98 bool lastInSubRun =
false);
104 std::unique_ptr<DelayedReader>&& reader =
105 std::make_unique<NoDelayedReader>());
171 bool const alwaysEnableLookupOfProducedProducts =
false)
const;
209 std::unique_ptr<ProductProvenance const>&&,
210 std::unique_ptr<EDProduct>&&,
211 std::unique_ptr<RangeSet>&&);
269 std::vector<ProductID>
const& vpid,
Principal & operator=(Principal const &)=delete
const_iterator cend() const
std::atomic< bool > processHistoryModified_
cet::exempt_ptr< RunPrincipal const > runPrincipalExemptPtr() const
size_t findGroups(ProcessLookup const &, ModuleContext const &, SelectorBase const &, std::vector< cet::exempt_ptr< Group >> &groups) const
EventID const & eventID() const
EDProductGetter const * productGetter(ProductID const &pid) const
std::map< std::string, std::vector< ProductID >> ProcessLookup
std::atomic< bool > enableLookupOfProducedProducts_
Principal(BranchType, ProcessConfiguration const &, cet::exempt_ptr< ProductTable const > presentProducts, ProcessHistoryID const &, std::unique_ptr< DelayedReader > &&)
RunID const & runID() const
auto tryNextSecondaryFile() const
const_iterator end() const
std::vector< InputTag > getInputTags(ModuleContext const &mc, WrappedTypeID const &wrapped, SelectorBase const &, ProcessTag const &) const
Timestamp const & time() const
ProcessHistory processHistory_
Timestamp const & beginTime() const
SubRunPrincipal const * subRunPrincipalPtr() const
EventAuxiliary::ExperimentType ExperimentType() const
History const & history() const
void addToProcessHistory()
std::vector< cet::exempt_ptr< Group > > matchingSequenceFromInputFile(ModuleContext const &, SelectorBase const &) const
SubRunAuxiliary const & subRunAux() const
std::atomic< SubRunPrincipal const * > subRunPrincipal_
size_t findGroupsFromInputFile(ModuleContext const &, WrappedTypeID const &wrapped, SelectorBase const &, std::vector< cet::exempt_ptr< Group >> &results) const
void updateSeenRanges(RangeSet const &rs)
std::recursive_mutex groupMutex_
void readImmediate() const
bool isLastInSubRun() const
std::vector< EventSelectionID > EventSelectionIDVector
EventNumber_t event() const
GroupQueryResult getBySelector(ModuleContext const &mc, WrappedTypeID const &wrapped, SelectorBase const &, ProcessTag const &) const
void createGroupsForProducedProducts(ProductTables const &producedProducts)
bool presentFromSource(ProductID) const
RangeSet seenRanges() const
void removeCachedProduct(ProductID) const
std::atomic< ProductTable const * > producedProducts_
std::unique_ptr< History > history_
OutputHandle getForOutput(ProductID const &, bool resolveProd) const
cet::exempt_ptr< BranchDescription const > getProductDescription(ProductID const pid, bool const alwaysEnableLookupOfProducedProducts=false) const
EDProductGetter const * getEDProductGetter_(ProductID const &) const override
void setProcessHistoryIDcombined(ProcessHistoryID const &)
SubRunID subRunID() const
void put(BranchDescription const &, std::unique_ptr< ProductProvenance const > &&, std::unique_ptr< EDProduct > &&, std::unique_ptr< RangeSet > &&)
IDNumber_t< Level::SubRun > SubRunNumber_t
virtual ~Principal() noexcept
void setRunPrincipal(cet::exempt_ptr< RunPrincipal const > rp)
void enableLookupOfProducedProducts(ProductTables const &producedProducts)
std::vector< cet::exempt_ptr< Group > > getMatchingSequence(ModuleContext const &, SelectorBase const &, ProcessTag const &) const
std::atomic< ProductTable const * > presentProducts_
void setSubRunPrincipal(cet::exempt_ptr< SubRunPrincipal const > srp)
void ctor_fetch_process_history(ProcessHistoryID const &)
std::vector< cet::exempt_ptr< Group > > findGroupsForProduct(ModuleContext const &mc, WrappedTypeID const &wrapped, SelectorBase const &, ProcessTag const &) const
RunAuxiliary const & runAux() const
void ctor_create_groups(cet::exempt_ptr< ProductTable const >)
ProcessHistory const & processHistory() const
cet::exempt_ptr< ProductProvenance const > branchToProductProvenance(ProductID const &) const
ProcessConfiguration const & processConfiguration() const
RunPrincipal const & runPrincipal() const
int nextSecondaryFileIdx_
ResultsAuxiliary const & resultsAux() const
ProcessConfiguration const & processConfiguration_
std::atomic< EventAuxiliary * > eventAux_
static RangeSet invalid()
void ctor_read_provenance()
EventAuxiliary const & eventAux() const
cet::exempt_ptr< Group > getGroupLocal(ProductID const) const
IDNumber_t< Level::Event > EventNumber_t
std::vector< GroupQueryResult > getMany(ModuleContext const &mc, WrappedTypeID const &wrapped, SelectorBase const &, ProcessTag const &) const
std::map< ProductID, std::unique_ptr< Group >> GroupCollection
void fillGroup(BranchDescription const &)
SubRunPrincipal const & subRunPrincipal() const
GroupQueryResult getByLabel(ModuleContext const &mc, WrappedTypeID const &wrapped, std::string const &label, std::string const &productInstanceName, ProcessTag const &processTag) const
std::unique_ptr< DelayedReader > delayedReader_
void markProcessHistoryAsModified()
ResultsAuxiliary resultsAux_
GroupQueryResult getByProductID(ProductID const pid) const
std::vector< std::unique_ptr< Principal > > secondaryPrincipals_
GroupCollection::const_iterator const_iterator
SubRunAuxiliary subRunAux_
Timestamp const & endTime() const
bool producedInProcess(ProductID) const
cet::exempt_ptr< Group const > getGroupTryAllFiles(ProductID const) const
const_iterator cbegin() const
size_t findGroupsForProcess(std::vector< ProductID > const &vpid, ModuleContext const &mc, SelectorBase const &selector, std::vector< cet::exempt_ptr< Group >> &groups) const
SubRunNumber_t subRun() const
const_iterator begin() const
BranchType branchType() const
cet::exempt_ptr< RunPrincipal const > runPrincipal_
EventSelectionIDVector const & eventSelectionIDs() const
IDNumber_t< Level::Run > RunNumber_t