Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
import FWCore.ParameterSet.Config as cms

# 1. HLT filter
#------------------------------------------------------
import HLTrigger.HLTfilters.hltHighLevel_cfi as _hlt
ALCARECOPPSCalMaxTracksFilter = _hlt.hltHighLevel.clone(eventSetupPathsKey = 'PPSCalMaxTracks')


# 2. RAW2DIGI
#------------------------------------------------------

from EventFilter.CTPPSRawToDigi.ctppsRawToDigi_cff import *
from EventFilter.CTPPSRawToDigi.ctppsRawToDigi_cff import ctppsDiamondRawToDigi as _ctppsDiamondRawToDigi
from EventFilter.CTPPSRawToDigi.ctppsRawToDigi_cff import totemTimingRawToDigi as _totemTimingRawToDigi
from EventFilter.CTPPSRawToDigi.ctppsRawToDigi_cff import ctppsPixelDigis as _ctppsPixelDigis
from EventFilter.L1TRawToDigi.gtStage2Digis_cfi import gtStage2Digis as _gtStage2Digis

ctppsDiamondRawToDigiAlCaRecoProducer  = _ctppsDiamondRawToDigi.clone(rawDataTag = 'hltPPSCalibrationRaw')
totemTimingRawToDigiAlCaRecoProducer = _totemTimingRawToDigi.clone(rawDataTag = 'hltPPSCalibrationRaw')
ctppsPixelDigisAlCaRecoProducer = _ctppsPixelDigis.clone(inputLabel = 'hltPPSCalibrationRaw')
gtStage2DigisAlCaRecoProducer = _gtStage2Digis.clone(InputLabel="hltFEDSelectorL1")

ctppsRawToDigiTaskAlCaRecoProducer = cms.Task(
    ctppsDiamondRawToDigiAlCaRecoProducer,
    totemTimingRawToDigiAlCaRecoProducer,
    ctppsPixelDigisAlCaRecoProducer,
    gtStage2DigisAlCaRecoProducer
)

ALCARECOPPSCalMaxTracksRaw2Digi = cms.Sequence(ctppsRawToDigiTaskAlCaRecoProducer)

# 3 a). RECO - PIXELS
#------------------------------------------------------

from RecoPPS.Configuration.recoCTPPS_cff import *
from RecoPPS.Local.ctppsPixelClusters_cfi import ctppsPixelClusters as _ctppsPixelClusters
from RecoPPS.Local.ctppsPixelRecHits_cfi import ctppsPixelRecHits as _ctppsPixelRecHits
from RecoPPS.Local.ctppsPixelLocalTracks_cfi import ctppsPixelLocalTracks as _ctppsPixelLocalTracks

ctppsPixelClustersAlCaRecoProducer = _ctppsPixelClusters.clone(tag = 'ctppsPixelDigisAlCaRecoProducer')
ctppsPixelRecHitsAlCaRecoProducer = _ctppsPixelRecHits.clone(RPixClusterTag = 'ctppsPixelClustersAlCaRecoProducer')
ctppsPixelLocalTracksAlCaRecoProducer = _ctppsPixelLocalTracks.clone(tag = 'ctppsPixelRecHitsAlCaRecoProducer')

ctppsPixelLocalReconstructionTaskAlCaRecoProducer = cms.Task(
    ctppsPixelClustersAlCaRecoProducer,
    ctppsPixelRecHitsAlCaRecoProducer,
    ctppsPixelLocalTracksAlCaRecoProducer
)

# 3 b). RECO - CTPPS DIAMONDS
#------------------------------------------------------

from RecoPPS.Local.ctppsDiamondRecHits_cfi import ctppsDiamondRecHits as _ctppsDiamondRecHits
from RecoPPS.Local.ctppsDiamondLocalTracks_cfi import ctppsDiamondLocalTracks as _ctppsDiamondLocalTracks
ctppsDiamondRecHitsAlCaRecoProducer = _ctppsDiamondRecHits.clone(digiTag = 'ctppsDiamondRawToDigiAlCaRecoProducer:TimingDiamond')
ctppsDiamondLocalTracksAlCaRecoProducer = _ctppsDiamondLocalTracks.clone(recHitsTag = 'ctppsDiamondRecHitsAlCaRecoProducer')

ctppsDiamondLocalReconstructionTaskAlCaRecoProducer = cms.Task(
    ctppsDiamondRecHitsAlCaRecoProducer,
    ctppsDiamondLocalTracksAlCaRecoProducer
)

# 3 c). RECO - TIMING DIAMONDS
#------------------------------------------------------

from RecoPPS.Local.totemTimingRecHits_cfi import totemTimingRecHits as _totemTimingRecHits
from RecoPPS.Local.diamondSampicLocalTracks_cfi import diamondSampicLocalTracks as _diamondSampicLocalTracks

totemTimingRecHitsAlCaRecoProducer = _totemTimingRecHits.clone(digiTag = 'totemTimingRawToDigiAlCaRecoProducer:TotemTiming')
diamondSampicLocalTracksAlCaRecoProducer = _diamondSampicLocalTracks.clone(recHitsTag = 'totemTimingRecHitsAlCaRecoProducer')

diamondSampicLocalReconstructionTaskAlCaRecoProducer = cms.Task(
    totemTimingRecHitsAlCaRecoProducer,
    diamondSampicLocalTracksAlCaRecoProducer
)

# 4. RECO - TRACKS and PROTONS
#------------------------------------------------------

from RecoPPS.Local.ctppsLocalTrackLiteProducer_cff import ctppsLocalTrackLiteProducer as _ctppsLocalTrackLiteProducer

ctppsLocalTrackLiteProducerAlCaRecoProducer = _ctppsLocalTrackLiteProducer.clone(
    includeStrips = False,
    includeDiamonds = True,
    includePixels = True,
    tagDiamondTrack = 'ctppsDiamondLocalTracksAlCaRecoProducer',
    tagPixelTrack = 'ctppsPixelLocalTracksAlCaRecoProducer'
)

from RecoPPS.ProtonReconstruction.ctppsProtons_cff import ctppsProtons as _ctppsProtons
ctppsProtonsAlCaRecoProducer = _ctppsProtons.clone(tagLocalTrackLite = 'ctppsLocalTrackLiteProducerAlCaRecoProducer')

# 5. RECO - final task assembly
#------------------------------------------------------

recoPPSTaskAlCaRecoProducer = cms.Task(
    ctppsDiamondLocalReconstructionTaskAlCaRecoProducer ,
    diamondSampicLocalReconstructionTaskAlCaRecoProducer ,
    ctppsPixelLocalReconstructionTaskAlCaRecoProducer ,
    ctppsLocalTrackLiteProducerAlCaRecoProducer ,
    ctppsProtonsAlCaRecoProducer
)
recoPPSSequenceAlCaRecoProducer = cms.Sequence(recoPPSTaskAlCaRecoProducer)

# 6. master sequence object
#------------------------------------------------------

seqALCARECOPPSCalMaxTracksReco = cms.Sequence( ALCARECOPPSCalMaxTracksFilter  + ALCARECOPPSCalMaxTracksRaw2Digi + recoPPSSequenceAlCaRecoProducer)