ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Betchart/TopRefTuple/python/tuple.py
Revision: 1.6
Committed: Fri Nov 9 18:33:27 2012 UTC (12 years, 5 months ago) by bbetchar
Content type: text/x-python
Branch: MAIN
Changes since 1.5: +13 -12 lines
Log Message:
Rename MakeTree-->TreeMaker

File Contents

# Content
1 import operator
2 from FWCore.ParameterSet import Config as cms
3
4 class Tuple(object) :
5
6 def __init__(self,process,options) :
7 self.process = process
8 self.options = options
9 self.empty = process.empty = cms.Sequence()
10
11 def path(self) :
12 return cms.Path( self.events() *
13 self.gen() *
14 self.triggers() * # FIXME
15 self.electron() *
16 self.muon() *
17 #jet
18 #met
19 #vertex
20 #triggers
21 self.tree() )
22
23 def attr(self, item) : return getattr(self.process, item)
24
25 def tree(self) :
26 self.process.topRef = cms.EDAnalyzer( "TreeMaker", outputCommands = cms.untracked.vstring(
27 'drop *',
28 'keep *_tuple*_*_*',) )
29 return self.process.topRef
30
31 def events(self) :
32 self.process.tupleEvents = cms.EDProducer("Tuple_Event")
33 return self.empty + self.process.tupleEvents
34
35 def gen(self) :
36 if self.options.isData : return self.empty
37 self.process.tupleGen = cms.EDProducer("Tuple_GenParticle",
38 InputTag = cms.InputTag('genParticles'),
39 JetCollections = cms.VInputTag("ak5GenJetsNoNu"),
40 Prefix = cms.string('gen'),
41 Suffix = cms.string(''),
42 GenStatus1PtCut = cms.double(10.0),
43 GenJetPtCut = cms.double(10.0),
44 )
45 self.process.tuplePileup = cms.EDProducer("Tuple_PileupSummary",
46 InputTag = cms.InputTag('addPileupInfo'),
47 Prefix = cms.string('pileup'),
48 Suffix = cms.string('')
49 )
50 return self.empty + self.process.tupleGen + self.process.tuplePileup
51
52 def triggers(self) :
53 if not self.options.isData : return self.empty
54 return self.empty
55
56 def electron(self) :
57 self.process.tupleElectron = cms.EDProducer("Tuple_Electron",
58 electronTag = cms.InputTag('selectedPatElectrons'+self.options.postfix),
59 vertexTag = cms.InputTag('goodOfflinePrimaryVertices'),
60 prefix = cms.string('el'),
61 electronIDs = cms.vstring('mvaTrigV0')
62 )
63 return self.empty + self.process.tupleElectron
64
65
66 def muon(self) :
67 self.process.tupleMuon = cms.EDProducer("Tuple_Muon",
68 muonTag = cms.InputTag('selectedPatMuons'+self.options.postfix),
69 prefix = cms.string('mu') )
70 return self.empty + self.process.tupleMuon
71