File indexing completed on 2025-02-27 07:20:10
0001 import FWCore.ParameterSet.Config as cms
0002 import argparse
0003
0004 parser = argparse.ArgumentParser(description='Create files for reduced ProcessHistory test')
0005 parser.add_argument("--version", type=str, help="CMSSW version to be used in the ProcessHistory (default is unset")
0006 parser.add_argument("--accelerators", type=str, nargs='+', help="Propagated to process.options.accelerators (default is unset)")
0007 parser.add_argument("--firstEvent", default=1, type=int, help="Number of first event")
0008 parser.add_argument("--lumi", default=1, type=int, help="LuminosityBlock number")
0009 parser.add_argument("--output", type=str, help="Output file name")
0010
0011 args = parser.parse_args()
0012
0013 class ProcessAcceleratorTest(cms.ProcessAccelerator):
0014 def __init__(self):
0015 super(ProcessAcceleratorTest,self).__init__()
0016 self._labels = ["test-one", "test-two"]
0017 def labels(self):
0018 return self._labels
0019 def enabledLabels(self):
0020 return self._labels
0021
0022
0023 process = cms.Process("PROD")
0024 if args.version:
0025 process._specialOverrideReleaseVersionOnlyForTesting(args.version)
0026 if args.accelerators:
0027 process.add_(ProcessAcceleratorTest())
0028 process.options.accelerators = args.accelerators
0029
0030 process.maxEvents.input = 10
0031
0032 from FWCore.Modules.modules import EmptySource
0033 process.source = EmptySource(
0034 firstEvent = args.firstEvent,
0035 firstLuminosityBlock = args.lumi,
0036 )
0037
0038 from IOPool.Output.modules import PoolOutputModule
0039 process.out = PoolOutputModule(
0040 fileName = args.output
0041 )
0042
0043 from FWCore.Framework.modules import IntProducer
0044 process.intProducer = IntProducer(ivalue = 42)
0045
0046 from FWCore.Integration.modules import ThingWithMergeProducer
0047 process.thingWithMergeProducer = ThingWithMergeProducer()
0048
0049 process.t = cms.Task(
0050 process.intProducer,
0051 process.thingWithMergeProducer,
0052 )
0053 process.p = cms.Path(process.t)
0054 process.ep = cms.EndPath(process.out)