38 def makeAlgs(self, config):
39
40 alg = config.createAlgorithm('CP::JetReclusteringAlg', 'JetReclusteringAlg')
41
42 alg.jets, alg.jetSelection = config.readNameAndSelection(self.jets)
43 alg.reclusteredJets = config.writeName(self.containerName)
44 alg.smallRjetIndices = 'smallRjetIndices_%SYS%'
45 alg.rcJetEnergy = 'e_%SYS%'
46 alg.clusteringAlgorithm = self.clusteringAlgorithm
47 alg.reclusteredJetsRadius = self.reclusteredJetsRadius
48
49
50 if self.minPt > 0 or self.maxEta > 0 or self.maxRapidity > 0 :
51 selAlg = config.createAlgorithm('CP::AsgSelectionAlg', 'RCJetsMinPtAlg')
52 selAlg.selectionDecoration = 'passed_sel,as_bits'
53 config.addPrivateTool('selectionTool', 'CP::AsgPtEtaSelectionTool')
54 selAlg.selectionTool.minPt = self.minPt
55 selAlg.selectionTool.maxEta = self.maxEta
56 selAlg.selectionTool.maxRapidity = self.maxRapidity
57 selAlg.particles = config.readName(self.containerName)
58 selAlg.preselection = config.getPreselection(self.containerName, '')
59 config.addSelection(self.containerName, 'passed_sel', selAlg.selectionDecoration)
60
61 config.addOutputVar(self.containerName, 'pt', 'pt')
62 config.addOutputVar(self.containerName, 'eta', 'eta')
63 config.addOutputVar(self.containerName, 'phi', 'phi')
64 config.addOutputVar(self.containerName, 'm', 'm')
65 config.addOutputVar(self.containerName, alg.rcJetEnergy, 'e')
66 config.addOutputVar(self.containerName, alg.smallRjetIndices, 'small_r_jet_indices')