ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/DGele/PhysicsTools/PatAlgos/plugins/PATPhotonProducer.h
Revision: 1.1.1.1 (vendor branch)
Committed: Tue Oct 20 17:15:14 2009 UTC (15 years, 6 months ago) by dgele
Content type: text/plain
Branch: ANA
CVS Tags: start
Changes since 1.1: +0 -0 lines
Log Message:
version CMSSW_2_2_10

File Contents

# User Rev Content
1 dgele 1.1 //
2     // $Id: PATPhotonProducer.h,v 1.12.4.2 2009/04/30 09:11:46 gpetrucc Exp $
3     //
4    
5     #ifndef PhysicsTools_PatAlgos_PATPhotonProducer_h
6     #define PhysicsTools_PatAlgos_PATPhotonProducer_h
7    
8     /**
9     \class pat::PATPhotonProducer PATPhotonProducer.h "PhysicsTools/PatAlgos/interface/PATPhotonProducer.h"
10     \brief Produces the pat::Photon
11    
12     The PATPhotonProducer produces the analysis-level pat::Photon starting from
13     a collection of objects of PhotonType.
14    
15     \author Steven Lowette
16     \version $Id: PATPhotonProducer.h,v 1.12.4.2 2009/04/30 09:11:46 gpetrucc Exp $
17     */
18    
19    
20     #include "FWCore/Framework/interface/EDProducer.h"
21     #include "FWCore/Framework/interface/Event.h"
22     #include "FWCore/ParameterSet/interface/ParameterSet.h"
23    
24     #include "PhysicsTools/Utilities/interface/EtComparator.h"
25    
26     #include "DataFormats/PatCandidates/interface/Photon.h"
27    
28     #include "PhysicsTools/PatAlgos/interface/MultiIsolator.h"
29     #include "PhysicsTools/PatAlgos/interface/EfficiencyLoader.h"
30     #include "PhysicsTools/PatAlgos/interface/KinResolutionsLoader.h"
31    
32    
33     #include "DataFormats/PatCandidates/interface/UserData.h"
34     #include "PhysicsTools/PatAlgos/interface/PATUserDataHelper.h"
35    
36     namespace pat {
37    
38     class PATPhotonProducer : public edm::EDProducer {
39    
40     public:
41    
42     explicit PATPhotonProducer(const edm::ParameterSet & iConfig);
43     ~PATPhotonProducer();
44    
45     virtual void produce(edm::Event & iEvent, const edm::EventSetup & iSetup);
46    
47     private:
48    
49     // configurables
50     edm::InputTag photonSrc_;
51     bool embedSuperCluster_;
52    
53     bool addGenMatch_;
54     bool embedGenMatch_;
55     std::vector<edm::InputTag> genMatchSrc_;
56    
57     bool addTrigMatch_;
58     std::vector<edm::InputTag> trigMatchSrc_;
59    
60     bool addPhotonID_;
61     edm::InputTag photonIDSrc_;
62    
63     // tools
64     GreaterByEt<Photon> eTComparator_;
65    
66     pat::helper::MultiIsolator isolator_;
67     pat::helper::MultiIsolator::IsolationValuePairs isolatorTmpStorage_; // better here than recreate at each event
68     std::vector<std::pair<pat::IsolationKeys,edm::InputTag> > isoDepositLabels_;
69    
70     bool addEfficiencies_;
71     pat::helper::EfficiencyLoader efficiencyLoader_;
72    
73     bool addResolutions_;
74     pat::helper::KinResolutionsLoader resolutionLoader_;
75    
76     bool useUserData_;
77     pat::PATUserDataHelper<pat::Photon> userDataHelper_;
78    
79     };
80    
81    
82     }
83    
84     #endif