File indexing completed on 2024-04-06 12:12:43
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040 import FWCore.ParameterSet.Config as cms
0041
0042 process = cms.Process("PROD")
0043
0044 process.options = cms.untracked.PSet(
0045 numberOfStreams = cms.untracked.uint32(1)
0046 )
0047
0048 process.maxEvents = cms.untracked.PSet(
0049 input = cms.untracked.int32(3)
0050 )
0051
0052 process.source = cms.Source("EmptySource")
0053
0054 process.WhatsItESProducer = cms.ESProducer("WhatsItESProducer")
0055
0056 process.DoodadESSource = cms.ESSource("DoodadESSource")
0057
0058 process.thingProducer = cms.EDProducer("ThingProducer",
0059 offsetDelta = cms.int32(100),
0060 nThings = cms.int32(50)
0061 )
0062 process.thingProducer2 = cms.EDProducer("ThingProducer",
0063 offsetDelta = cms.int32(100),
0064 nThings = cms.int32(50)
0065 )
0066 process.thingProducerNotThinned = cms.EDProducer("ThingProducer",
0067 offsetDelta = cms.int32(100),
0068 nThings = cms.int32(50)
0069 )
0070
0071 process.thingProducer2alias = cms.EDAlias(
0072 thingProducer2 = cms.VPSet(
0073 cms.PSet(type = cms.string('edmtestThings'))
0074 )
0075 )
0076
0077 process.trackOfThingsProducerA = cms.EDProducer("TrackOfThingsProducer",
0078 inputTag = cms.InputTag('thingProducer'),
0079 keysToReference = cms.vuint32(0, 1, 2, 3, 4, 5, 6, 7, 8)
0080 )
0081
0082 process.trackOfThingsProducerB = cms.EDProducer("TrackOfThingsProducer",
0083 inputTag = cms.InputTag('thingProducer'),
0084 keysToReference = cms.vuint32(0, 1, 2, 3)
0085 )
0086
0087 process.trackOfThingsProducerC = cms.EDProducer("TrackOfThingsProducer",
0088 inputTag = cms.InputTag('thingProducer'),
0089 keysToReference = cms.vuint32(4, 5, 6, 7)
0090 )
0091
0092 process.trackOfThingsProducerD = cms.EDProducer("TrackOfThingsProducer",
0093 inputTag = cms.InputTag('thingProducer'),
0094 keysToReference = cms.vuint32(10, 11, 12, 13, 14, 15, 16, 17, 18)
0095 )
0096
0097 process.trackOfThingsProducerDPlus = cms.EDProducer("TrackOfThingsProducer",
0098 inputTag = cms.InputTag('thingProducer'),
0099 keysToReference = cms.vuint32(10, 11, 12, 13, 14, 15, 16, 17, 18, 21)
0100 )
0101
0102 process.trackOfThingsProducerE = cms.EDProducer("TrackOfThingsProducer",
0103 inputTag = cms.InputTag('thingProducer'),
0104 keysToReference = cms.vuint32(10, 11, 12, 13, 14)
0105 )
0106
0107 process.trackOfThingsProducerF = cms.EDProducer("TrackOfThingsProducer",
0108 inputTag = cms.InputTag('thingProducer'),
0109 keysToReference = cms.vuint32(14, 15, 16, 17)
0110 )
0111
0112 process.trackOfThingsProducerG = cms.EDProducer("TrackOfThingsProducer",
0113 inputTag = cms.InputTag('thingProducer'),
0114 keysToReference = cms.vuint32(20, 21, 22, 23, 24, 25, 26, 27, 28)
0115 )
0116
0117 process.trackOfThingsProducerH = cms.EDProducer("TrackOfThingsProducer",
0118 inputTag = cms.InputTag('thingProducer'),
0119 keysToReference = cms.vuint32(20, 21, 22, 23)
0120 )
0121
0122 process.trackOfThingsProducerI = cms.EDProducer("TrackOfThingsProducer",
0123 inputTag = cms.InputTag('thingProducer'),
0124 keysToReference = cms.vuint32(24, 25, 26, 27)
0125 )
0126
0127 process.trackOfThingsProducerJ = cms.EDProducer("TrackOfThingsProducer",
0128 inputTag = cms.InputTag('thingProducer'),
0129 keysToReference = cms.vuint32(30, 31, 32, 33, 34, 35, 36, 37, 38)
0130 )
0131
0132 process.trackOfThingsProducerK = cms.EDProducer("TrackOfThingsProducer",
0133 inputTag = cms.InputTag('thingProducer'),
0134 keysToReference = cms.vuint32(30, 31, 32, 33)
0135 )
0136
0137 process.trackOfThingsProducerL = cms.EDProducer("TrackOfThingsProducer",
0138 inputTag = cms.InputTag('thingProducer'),
0139 keysToReference = cms.vuint32(34, 35, 36, 37)
0140 )
0141
0142 process.trackOfThingsProducerM = cms.EDProducer("TrackOfThingsProducer",
0143 inputTag = cms.InputTag('thingProducer'),
0144 keysToReference = cms.vuint32(40, 41, 42, 43, 44, 45, 46, 47, 48)
0145 )
0146
0147 process.trackOfThingsProducerN = cms.EDProducer("TrackOfThingsProducer",
0148 inputTag = cms.InputTag('thingProducer'),
0149 keysToReference = cms.vuint32(40, 41, 42, 43)
0150 )
0151
0152 process.trackOfThingsProducerO = cms.EDProducer("TrackOfThingsProducer",
0153 inputTag = cms.InputTag('thingProducer'),
0154 keysToReference = cms.vuint32(44, 45, 46, 47)
0155 )
0156
0157 process.trackOfThingsProducerA2 = cms.EDProducer("TrackOfThingsProducer",
0158 inputTag = cms.InputTag('thingProducer2'),
0159 keysToReference = cms.vuint32(0, 1, 2, 3, 4, 5, 6, 7, 8)
0160 )
0161
0162 process.trackOfThingsProducerD2 = cms.EDProducer("TrackOfThingsProducer",
0163 inputTag = cms.InputTag('thingProducer2'),
0164 keysToReference = cms.vuint32(10, 11, 12, 13, 14, 15, 16, 17, 18)
0165 )
0166
0167 process.trackOfThingsProducerE2 = cms.EDProducer("TrackOfThingsProducer",
0168 inputTag = cms.InputTag('thingProducer2'),
0169 keysToReference = cms.vuint32(10, 11, 12, 13, 14)
0170 )
0171
0172 process.trackOfThingsProducerF2 = cms.EDProducer("TrackOfThingsProducer",
0173 inputTag = cms.InputTag('thingProducer2'),
0174 keysToReference = cms.vuint32(14, 15, 16, 17)
0175 )
0176
0177 process.thinningThingProducerA = cms.EDProducer("ThinningThingProducer",
0178 inputTag = cms.InputTag('thingProducer'),
0179 trackTag = cms.InputTag('trackOfThingsProducerA'),
0180 offsetToThinnedKey = cms.uint32(0),
0181 expectedCollectionSize = cms.uint32(50)
0182 )
0183
0184 process.thinningThingProducerB = cms.EDProducer("ThinningThingProducer",
0185 inputTag = cms.InputTag('thinningThingProducerA'),
0186 trackTag = cms.InputTag('trackOfThingsProducerB'),
0187 offsetToThinnedKey = cms.uint32(0),
0188 expectedCollectionSize = cms.uint32(9)
0189 )
0190
0191 process.thinningThingProducerC = cms.EDProducer("ThinningThingProducer",
0192 inputTag = cms.InputTag('thinningThingProducerA'),
0193 trackTag = cms.InputTag('trackOfThingsProducerC'),
0194 offsetToThinnedKey = cms.uint32(0),
0195 expectedCollectionSize = cms.uint32(9)
0196 )
0197
0198 process.thinningThingProducerD = cms.EDProducer("ThinningThingProducer",
0199 inputTag = cms.InputTag('thingProducer'),
0200 trackTag = cms.InputTag('trackOfThingsProducerD'),
0201 offsetToThinnedKey = cms.uint32(0),
0202 expectedCollectionSize = cms.uint32(50)
0203 )
0204
0205 process.thinningThingProducerE = cms.EDProducer("ThinningThingProducer",
0206 inputTag = cms.InputTag('thinningThingProducerD'),
0207 trackTag = cms.InputTag('trackOfThingsProducerE'),
0208 offsetToThinnedKey = cms.uint32(10),
0209 expectedCollectionSize = cms.uint32(9)
0210 )
0211
0212 process.thinningThingProducerF = cms.EDProducer("ThinningThingProducer",
0213 inputTag = cms.InputTag('thinningThingProducerD'),
0214 trackTag = cms.InputTag('trackOfThingsProducerF'),
0215 offsetToThinnedKey = cms.uint32(10),
0216 expectedCollectionSize = cms.uint32(9)
0217 )
0218
0219 process.thinningThingProducerG = cms.EDProducer("ThinningThingProducer",
0220 inputTag = cms.InputTag('thingProducer'),
0221 trackTag = cms.InputTag('trackOfThingsProducerG'),
0222 offsetToThinnedKey = cms.uint32(0),
0223 expectedCollectionSize = cms.uint32(50)
0224 )
0225
0226 process.thinningThingProducerH = cms.EDProducer("ThinningThingProducer",
0227 inputTag = cms.InputTag('thinningThingProducerG'),
0228 trackTag = cms.InputTag('trackOfThingsProducerH'),
0229 offsetToThinnedKey = cms.uint32(20),
0230 expectedCollectionSize = cms.uint32(9)
0231 )
0232
0233 process.thinningThingProducerI = cms.EDProducer("ThinningThingProducer",
0234 inputTag = cms.InputTag('thinningThingProducerG'),
0235 trackTag = cms.InputTag('trackOfThingsProducerI'),
0236 offsetToThinnedKey = cms.uint32(20),
0237 expectedCollectionSize = cms.uint32(9)
0238 )
0239
0240 process.thinningThingProducerJ = cms.EDProducer("ThinningThingProducer",
0241 inputTag = cms.InputTag('thingProducer'),
0242 trackTag = cms.InputTag('trackOfThingsProducerJ'),
0243 offsetToThinnedKey = cms.uint32(0),
0244 expectedCollectionSize = cms.uint32(50)
0245 )
0246
0247 process.thinningThingProducerK = cms.EDProducer("ThinningThingProducer",
0248 inputTag = cms.InputTag('thinningThingProducerJ'),
0249 trackTag = cms.InputTag('trackOfThingsProducerK'),
0250 offsetToThinnedKey = cms.uint32(30),
0251 expectedCollectionSize = cms.uint32(9)
0252 )
0253
0254 process.thinningThingProducerL = cms.EDProducer("ThinningThingProducer",
0255 inputTag = cms.InputTag('thinningThingProducerJ'),
0256 trackTag = cms.InputTag('trackOfThingsProducerL'),
0257 offsetToThinnedKey = cms.uint32(30),
0258 expectedCollectionSize = cms.uint32(9)
0259 )
0260
0261 process.thinningThingProducerM = cms.EDProducer("ThinningThingProducer",
0262 inputTag = cms.InputTag('thingProducer'),
0263 trackTag = cms.InputTag('trackOfThingsProducerM'),
0264 offsetToThinnedKey = cms.uint32(0),
0265 expectedCollectionSize = cms.uint32(50)
0266 )
0267
0268 process.aliasM = cms.EDAlias(
0269 thinningThingProducerM = cms.VPSet(
0270 cms.PSet(type = cms.string('edmtestThings')),
0271
0272 cms.PSet(type = cms.string('edmThinnedAssociation'))
0273 )
0274 )
0275
0276 process.thinningThingProducerN = cms.EDProducer("ThinningThingProducer",
0277 inputTag = cms.InputTag('thinningThingProducerM'),
0278 trackTag = cms.InputTag('trackOfThingsProducerN'),
0279 offsetToThinnedKey = cms.uint32(40),
0280 expectedCollectionSize = cms.uint32(9)
0281 )
0282
0283 process.aliasN = cms.EDAlias(
0284 thinningThingProducerN = cms.VPSet(
0285 cms.PSet(type = cms.string('edmtestThings')),
0286
0287 cms.PSet(type = cms.string('edmThinnedAssociation'))
0288 )
0289 )
0290
0291 process.thinningThingProducerO = cms.EDProducer("ThinningThingProducer",
0292 inputTag = cms.InputTag('aliasM'),
0293 trackTag = cms.InputTag('trackOfThingsProducerO'),
0294 offsetToThinnedKey = cms.uint32(40),
0295 expectedCollectionSize = cms.uint32(9)
0296 )
0297
0298 process.aliasO = cms.EDAlias(
0299 thinningThingProducerO = cms.VPSet(
0300 cms.PSet(type = cms.string('edmtestThings')),
0301
0302 cms.PSet(type = cms.string('edmThinnedAssociation'))
0303 )
0304 )
0305
0306 process.thinningThingProducerA2 = cms.EDProducer("ThinningThingProducer",
0307 inputTag = cms.InputTag('thingProducer2'),
0308 trackTag = cms.InputTag('trackOfThingsProducerA2'),
0309 offsetToThinnedKey = cms.uint32(0),
0310 expectedCollectionSize = cms.uint32(50)
0311 )
0312
0313 process.slimmingThingProducerA = cms.EDProducer("SlimmingThingProducer",
0314 inputTag = cms.InputTag('thingProducer'),
0315 trackTag = cms.InputTag('trackOfThingsProducerA'),
0316 offsetToThinnedKey = cms.uint32(0),
0317 expectedCollectionSize = cms.uint32(50)
0318 )
0319
0320 process.slimmingThingProducerA2 = cms.EDProducer("SlimmingThingProducer",
0321 inputTag = cms.InputTag('thingProducer2'),
0322 trackTag = cms.InputTag('trackOfThingsProducerA2'),
0323 offsetToThinnedKey = cms.uint32(0),
0324 expectedCollectionSize = cms.uint32(50)
0325 )
0326
0327 process.testA = cms.EDAnalyzer("ThinningTestAnalyzer",
0328 parentTag = cms.InputTag('thingProducer'),
0329 thinnedTag = cms.InputTag('thinningThingProducerA'),
0330 associationTag = cms.InputTag('thinningThingProducerA'),
0331 trackTag = cms.InputTag('trackOfThingsProducerA'),
0332 expectedParentContent = cms.vint32( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
0333 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
0334 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
0335 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
0336 40, 41, 42, 43, 44, 45, 46, 47, 48, 49
0337 ),
0338 expectedThinnedContent = cms.vint32(0, 1, 2, 3, 4, 5, 6, 7, 8),
0339 expectedIndexesIntoParent = cms.vuint32(0, 1, 2, 3, 4, 5, 6, 7, 8),
0340 expectedValues = cms.vint32(0, 1, 2, 3, 4, 5, 6, 7, 8)
0341 )
0342
0343 process.testB = cms.EDAnalyzer("ThinningTestAnalyzer",
0344 parentTag = cms.InputTag('thinningThingProducerA'),
0345 thinnedTag = cms.InputTag('thinningThingProducerB'),
0346 associationTag = cms.InputTag('thinningThingProducerB'),
0347 trackTag = cms.InputTag('trackOfThingsProducerB'),
0348 expectedParentContent = cms.vint32( 0, 1, 2, 3, 4, 5, 6, 7, 8),
0349 expectedThinnedContent = cms.vint32(0, 1, 2, 3),
0350 expectedIndexesIntoParent = cms.vuint32(0, 1, 2, 3),
0351 expectedValues = cms.vint32(0, 1, 2, 3)
0352 )
0353
0354 process.testC = cms.EDAnalyzer("ThinningTestAnalyzer",
0355 parentTag = cms.InputTag('thinningThingProducerA'),
0356 thinnedTag = cms.InputTag('thinningThingProducerC'),
0357 associationTag = cms.InputTag('thinningThingProducerC'),
0358 trackTag = cms.InputTag('trackOfThingsProducerC'),
0359 expectedParentContent = cms.vint32( 0, 1, 2, 3, 4, 5, 6, 7, 8),
0360 expectedThinnedContent = cms.vint32(4, 5, 6, 7),
0361 expectedIndexesIntoParent = cms.vuint32(4, 5, 6, 7),
0362 expectedValues = cms.vint32(4, 5, 6, 7)
0363 )
0364
0365 process.thinnedRefTestA = cms.EDAnalyzer("ThinnedRefFromTestAnalyzer",
0366 parentTag = cms.InputTag('thingProducer'),
0367 thinnedTag = cms.InputTag('thinningThingProducerA'),
0368 unrelatedTag = cms.InputTag('thingProducerNotThinned'),
0369 trackTag = cms.InputTag('trackOfThingsProducerA')
0370 )
0371
0372 process.thinnedRefTestA2 = cms.EDAnalyzer("ThinnedRefFromTestAnalyzer",
0373 parentTag = cms.InputTag('thingProducer'),
0374 thinnedTag = cms.InputTag('thinningThingProducerA'),
0375 unrelatedTag = cms.InputTag('thingProducer2'),
0376 trackTag = cms.InputTag('trackOfThingsProducerA')
0377 )
0378
0379 process.slimmingTestA = cms.EDAnalyzer("ThinningTestAnalyzer",
0380 parentTag = cms.InputTag('thingProducer'),
0381 thinnedTag = cms.InputTag('slimmingThingProducerA'),
0382 associationTag = cms.InputTag('slimmingThingProducerA'),
0383 trackTag = cms.InputTag('trackOfThingsProducerA'),
0384 thinnedSlimmedCount = cms.int32(1),
0385 expectedParentContent = cms.vint32( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
0386 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
0387 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
0388 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
0389 40, 41, 42, 43, 44, 45, 46, 47, 48, 49
0390 ),
0391 expectedThinnedContent = cms.vint32(0, 1, 2, 3, 4, 5, 6, 7, 8),
0392 expectedIndexesIntoParent = cms.vuint32(0, 1, 2, 3, 4, 5, 6, 7, 8),
0393 expectedValues = cms.vint32(0, 1, 2, 3, 4, 5, 6, 7, 8)
0394 )
0395
0396 process.slimmingTestA2 = cms.EDAnalyzer("ThinningTestAnalyzer",
0397 parentTag = cms.InputTag('thingProducer2'),
0398 thinnedTag = cms.InputTag('slimmingThingProducerA2'),
0399 associationTag = cms.InputTag('slimmingThingProducerA2'),
0400 trackTag = cms.InputTag('trackOfThingsProducerA2'),
0401 thinnedSlimmedCount = cms.int32(1),
0402 expectedParentContent = cms.vint32( 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
0403 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
0404 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
0405 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
0406 40, 41, 42, 43, 44, 45, 46, 47, 48, 49
0407 ),
0408 expectedThinnedContent = cms.vint32(0, 1, 2, 3, 4, 5, 6, 7, 8),
0409 expectedIndexesIntoParent = cms.vuint32(0, 1, 2, 3, 4, 5, 6, 7, 8),
0410 expectedValues = cms.vint32(0, 1, 2, 3, 4, 5, 6, 7, 8)
0411 )
0412
0413 process.out = cms.OutputModule("PoolOutputModule",
0414 fileName = cms.untracked.string('testThinningTest1.root'),
0415 outputCommands = cms.untracked.vstring(
0416 'keep *',
0417 'drop *_thingProducer2_*_*',
0418 'drop *_thinningThingProducerM_*_*',
0419 'drop *_thinningThingProducerN_*_*',
0420 'drop *_thinningThingProducerO_*_*'
0421 )
0422 )
0423
0424 process.out2 = cms.OutputModule("EventStreamFileWriter",
0425 fileName = cms.untracked.string('testThinningStreamerout.dat'),
0426 compression_level = cms.untracked.int32(1),
0427 use_compression = cms.untracked.bool(True),
0428 max_event_size = cms.untracked.int32(7000000),
0429 outputCommands = cms.untracked.vstring(
0430 'keep *',
0431 'drop *_thingProducer_*_*',
0432 'drop *_thingProducer2_*_*',
0433 'drop *_thingProducerNotThinned_*_*',
0434 'drop *_trackOfThingsProducerA2_*_*',
0435 'drop *_thinningThingProducerD_*_*',
0436 'drop *_thinningThingProducerH_*_*',
0437 'drop *_thinningThingProducerI_*_*',
0438 'drop *_thinningThingProducerJ_*_*',
0439 'drop *_thinningThingProducerK_*_*',
0440 'drop *_thinningThingProducerL_*_*',
0441 'drop *_thinningThingProducerM_*_*',
0442 'drop *_thinningThingProducerN_*_*',
0443 'drop *_thinningThingProducerO_*_*',
0444 'drop *_aliasM_*_*',
0445 'drop *_aliasN_*_*'
0446 )
0447 )
0448
0449 process.p = cms.Path(process.thingProducer * process.thingProducer2 * process.thingProducerNotThinned
0450 * process.trackOfThingsProducerA
0451 * process.trackOfThingsProducerB
0452 * process.trackOfThingsProducerC
0453 * process.trackOfThingsProducerD
0454 * process.trackOfThingsProducerDPlus
0455 * process.trackOfThingsProducerE
0456 * process.trackOfThingsProducerF
0457 * process.trackOfThingsProducerG
0458 * process.trackOfThingsProducerH
0459 * process.trackOfThingsProducerI
0460 * process.trackOfThingsProducerJ
0461 * process.trackOfThingsProducerK
0462 * process.trackOfThingsProducerL
0463 * process.trackOfThingsProducerM
0464 * process.trackOfThingsProducerN
0465 * process.trackOfThingsProducerO
0466 * process.trackOfThingsProducerA2
0467 * process.trackOfThingsProducerD2
0468 * process.trackOfThingsProducerE2
0469 * process.trackOfThingsProducerF2
0470 * process.thinningThingProducerA
0471 * process.thinningThingProducerB
0472 * process.thinningThingProducerC
0473 * process.thinningThingProducerD
0474 * process.thinningThingProducerE
0475 * process.thinningThingProducerF
0476 * process.thinningThingProducerG
0477 * process.thinningThingProducerH
0478 * process.thinningThingProducerI
0479 * process.thinningThingProducerJ
0480 * process.thinningThingProducerK
0481 * process.thinningThingProducerL
0482 * process.thinningThingProducerM
0483 * process.thinningThingProducerN
0484 * process.thinningThingProducerO
0485 * process.thinningThingProducerA2
0486 * process.slimmingThingProducerA
0487 * process.slimmingThingProducerA2
0488 * process.testA
0489 * process.testB
0490 * process.testC
0491 * process.thinnedRefTestA
0492 * process.thinnedRefTestA2
0493 * process.slimmingTestA
0494 * process.slimmingTestA2
0495 )
0496
0497 process.endPath = cms.EndPath(process.out * process.out2)