File indexing completed on 2024-04-06 12:12:09
0001 #include "FWCore/Framework/interface/EventForOutput.h"
0002
0003 #include "DataFormats/Common/interface/TriggerResults.h"
0004 #include "FWCore/Common/interface/TriggerResultsByName.h"
0005 #include "FWCore/Framework/interface/EventPrincipal.h"
0006 #include "FWCore/Framework/interface/LuminosityBlockForOutput.h"
0007 #include "FWCore/Framework/interface/TransitionInfoTypes.h"
0008 #include "FWCore/ParameterSet/interface/Registry.h"
0009 #include "FWCore/Utilities/interface/Algorithms.h"
0010 #include "FWCore/Utilities/interface/InputTag.h"
0011
0012 namespace edm {
0013
0014 EventForOutput::EventForOutput(EventTransitionInfo const& info,
0015 ModuleDescription const& md,
0016 ModuleCallingContext const* mcc)
0017 : EventForOutput(info.principal(), md, mcc) {}
0018
0019 EventForOutput::EventForOutput(EventPrincipal const& ep,
0020 ModuleDescription const& md,
0021 ModuleCallingContext const* moduleCallingContext)
0022 : OccurrenceForOutput(ep, md, moduleCallingContext, true ),
0023 aux_(ep.aux()),
0024 luminosityBlock_(ep.luminosityBlockPrincipalPtrValid()
0025 ? new LuminosityBlockForOutput(
0026 ep.luminosityBlockPrincipal(), md, moduleCallingContext, false )
0027 : nullptr),
0028 streamID_(ep.streamID()) {}
0029
0030 EventForOutput::~EventForOutput() {}
0031
0032 EventPrincipal const& EventForOutput::eventPrincipal() const {
0033 return dynamic_cast<EventPrincipal const&>(principal());
0034 }
0035
0036 RunForOutput const& EventForOutput::getRun() const { return getLuminosityBlock().getRun(); }
0037
0038 EventSelectionIDVector const& EventForOutput::eventSelectionIDs() const {
0039 return eventPrincipal().eventSelectionIDs();
0040 }
0041
0042 ProductProvenanceRetriever const* EventForOutput::productProvenanceRetrieverPtr() const {
0043 return eventPrincipal().productProvenanceRetrieverPtr();
0044 }
0045
0046 BranchListIndexes const& EventForOutput::branchListIndexes() const { return eventPrincipal().branchListIndexes(); }
0047
0048 EventToProcessBlockIndexes const& EventForOutput::eventToProcessBlockIndexes() const {
0049 return eventPrincipal().eventToProcessBlockIndexes();
0050 }
0051
0052 }