Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 11:02:21

0001 #include "FWCore/Framework/interface/RunForOutput.h"
0002 
0003 #include "FWCore/Framework/interface/RunPrincipal.h"
0004 #include "FWCore/Framework/interface/TransitionInfoTypes.h"
0005 #include "FWCore/Utilities/interface/Algorithms.h"
0006 #include "FWCore/Utilities/interface/get_underlying_safe.h"
0007 
0008 namespace edm {
0009 
0010   RunForOutput::RunForOutput(RunTransitionInfo const& info,
0011                              ModuleDescription const& md,
0012                              ModuleCallingContext const* mcc,
0013                              bool isAtEnd,
0014                              MergeableRunProductMetadata const* mrpm)
0015       : RunForOutput(info.principal(), md, mcc, isAtEnd, mrpm) {}
0016 
0017   RunForOutput::RunForOutput(RunPrincipal const& rp,
0018                              ModuleDescription const& md,
0019                              ModuleCallingContext const* moduleCallingContext,
0020                              bool isAtEnd,
0021                              MergeableRunProductMetadata const* mrpm)
0022       : OccurrenceForOutput(rp, md, moduleCallingContext, isAtEnd),
0023         aux_(rp.aux()),
0024         mergeableRunProductMetadata_(mrpm) {}
0025 
0026   RunForOutput::~RunForOutput() {}
0027 
0028   RunPrincipal const& RunForOutput::runPrincipal() const { return dynamic_cast<RunPrincipal const&>(principal()); }
0029 
0030   /**\return Reusable index which can be used to separate data for different simultaneous Runs.
0031    */
0032   RunIndex RunForOutput::index() const { return runPrincipal().index(); }
0033 
0034 }  // namespace edm