1 AlCaRecoMatrix = {
'AlCaLumiPixels' :
'LumiPixels',
2 'Charmonium' :
'TkAlJpsiMuMu',
3 'Commissioning' :
'HcalCalIsoTrk',
4 'Cosmics' :
'TkAlCosmics0T+MuAlGlobalCosmics+HcalCalHOCosmics+DtCalibCosmics',
5 'DoubleEG' :
'EcalCalZElectron+EcalUncalZElectron+HcalCalIterativePhiSym+HcalCalIsoTrkFilter',
6 'DoubleElectron' :
'EcalCalZElectron+EcalUncalZElectron+HcalCalIsoTrkFilter',
7 'DoubleMu' :
'MuAlCalIsolatedMu+MuAlOverlaps+DtCalib+TkAlZMuMu',
8 'DoubleMuon' :
'TkAlZMuMu+MuAlCalIsolatedMu+MuAlOverlaps+MuAlZMuMu+DtCalib',
9 'DoubleMuParked' :
'MuAlCalIsolatedMu+MuAlOverlaps+DtCalib+TkAlZMuMu',
10 'HLTPhysics' :
'SiStripCalMinBias+TkAlMinBias+HcalCalIsoTrkFilter',
11 'JetHT' :
'HcalCalDijets+HcalCalIsoTrkFilter',
12 'MET' :
'HcalCalNoise',
13 'MinimumBias' :
'SiStripCalMinBias+TkAlMinBias',
14 'MuOnia' :
'TkAlJpsiMuMu+TkAlUpsilonMuMu',
15 'MuOniaParked' :
'TkAlJpsiMuMu+TkAlUpsilonMuMu',
16 'SingleElectron' :
'EcalCalWElectron+EcalUncalWElectron+EcalCalZElectron+EcalUncalZElectron+EcalESAlign+HcalCalIterativePhiSym',
17 'SingleMu' :
'MuAlCalIsolatedMu+MuAlOverlaps+TkAlMuonIsolated+DtCalib+MuAlZMuMu+HcalCalHO',
18 'SingleMuon' :
'TkAlMuonIsolated+DtCalib+MuAlCalIsolatedMu+MuAlOverlaps+MuAlZMuMu+HcalCalIterativePhiSym',
19 'SinglePhoton' :
'HcalCalGammaJet',
20 'ZeroBias' :
'SiStripCalZeroBias+TkAlMinBias+LumiPixelsMinBias+SiStripCalMinBias',
21 'StreamExpress' :
'SiStripCalZeroBias+TkAlMinBias+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAfterAbortGap+DtCalib+Hotline+LumiPixelsMinBias',
22 'StreamExpressHI':
'SiStripCalZeroBias+TkAlMinBiasHI+SiStripPCLHistos+SiStripCalMinBias+SiStripCalMinBiasAfterAbortGap+DtCalibHI',
23 'ExpressCosmics' :
'SiStripCalZeroBias+TkAlCosmics0T',
27 'HcalNZS' :
'HcalCalMinBias'
34 """Takes a list of primary datasets (PDs) and the AlCaRecoMatrix (a dictinary) and returns a string with all the AlCaRecos for the selected PDs separated by the '+' character without duplicates."""
37 alCaRecoList.extend(matrix[pd].
split(
"+"))
39 alCaRecoList = set(alCaRecoList)
41 for alCaReco
in alCaRecoList:
43 stringList += alCaReco
45 stringList +=
'+'+alCaReco
49 autoAlca = {
'allForPrompt' :
buildList([
'Charmonium',
'Commissioning',
'DoubleEG',
'DoubleElectron',
'DoubleMu',
'DoubleMuParked',
'DoubleMuon',
'HLTPhysics',
'HcalNZS',
'JetHT',
'MET',
'MinimumBias',
'MuOnia',
'MuOniaParked',
'SingleElectron',
'SingleMu',
'SingleMuon',
'SinglePhoton',
'ZeroBias'], AlCaRecoMatrix),
50 'allForExpress' :
buildList([
'StreamExpress'], AlCaRecoMatrix),
51 'allForExpressHI' :
buildList([
'StreamExpressHI'], AlCaRecoMatrix),
52 'allForPromptCosmics' :
buildList([
'Cosmics'], AlCaRecoMatrix),
53 'allForExpressCosmics' :
buildList([
'ExpressCosmics'], AlCaRecoMatrix) }
54 autoAlca.update(AlCaRecoMatrix)