Back to home page

Project CMSSW displayed by LXR

 
 

    


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)