ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/PhotonAnalyzer.h
Revision: 1.7
Committed: Wed Jun 10 11:17:05 2009 UTC (15 years, 10 months ago) by lethuill
Content type: text/plain
Branch: MAIN
CVS Tags: all_2_2_9_03, all_2_2_9_02, all_2_2_9_01
Branch point for: CMSSW_2_2_X_br
Changes since 1.6: +20 -18 lines
Log Message:
Better protection against missing collection / Cleaning data format selection / Last iteration for migration to PAT of Photons

File Contents

# User Rev Content
1 mlethuil 1.1 #ifndef PhotonAnalyzer_h
2     #define PhotonAnalyzer_h
3    
4     // system include files
5     #include <memory>
6     #include <string>
7     #include <iostream>
8    
9     // user include files
10     #include "FWCore/Framework/interface/Event.h"
11     #include "FWCore/ParameterSet/interface/ParameterSet.h"
12     #include "FWCore/Framework/interface/ESHandle.h"
13 lethuill 1.2
14     #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
15     #include "Geometry/CaloTopology/interface/CaloTopology.h"
16     #include "Geometry/CaloEventSetup/interface/CaloTopologyRecord.h"
17    
18     #include "DataFormats/GeometryVector/interface/GlobalVector.h"
19     #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
20    
21     #include "DataFormats/EcalRecHit/interface/EcalRecHitCollections.h"
22     #include "DataFormats/EgammaReco/interface/BasicClusterFwd.h"
23    
24 mlethuil 1.1 #include "DataFormats/EgammaCandidates/interface/Photon.h"
25 lethuill 1.2 #include "DataFormats/EgammaCandidates/interface/PhotonFwd.h"
26 lethuill 1.6 #include "DataFormats/PatCandidates/interface/Photon.h"
27 mlethuil 1.1 #include "DataFormats/EgammaReco/interface/SuperCluster.h"
28 lethuill 1.6
29     #include "RecoEcal/EgammaCoreTools/interface/EcalClusterTools.h"
30     #include "RecoEcal/EgammaCoreTools/interface/EcalClusterLazyTools.h"
31 lethuill 1.2 #include "DataFormats/EgammaCandidates/interface/ConversionFwd.h"
32     #include "DataFormats/EgammaCandidates/interface/Conversion.h"
33     #include "RecoEgamma/EgammaTools/interface/ConversionLikelihoodCalculator.h"
34    
35     #include "DataFormats/EgammaCandidates/interface/PhotonID.h"
36     #include "DataFormats/EgammaCandidates/interface/PhotonIDFwd.h"
37     #include "DataFormats/EgammaCandidates/interface/PhotonIDAssociation.h"
38    
39     #include "DataFormats/EgammaCandidates/interface/PhotonPi0DiscriminatorAssociation.h"
40    
41     #include "DataFormats/VertexReco/interface/Vertex.h"
42     #include "DataFormats/TrackReco/interface/Track.h"
43     #include "DataFormats/TrackReco/interface/HitPattern.h"
44 mlethuil 1.1
45 lethuill 1.3 #include "../interface/TRootEvent.h"
46     #include "../interface/TRootPhoton.h"
47     #include "../interface/TRootTrack.h"
48 mlethuil 1.1
49     #include "TClonesArray.h"
50    
51    
52 lethuill 1.7 class PhotonAnalyzer
53     {
54    
55     public:
56     PhotonAnalyzer(const edm::ParameterSet& producersNames, const edm::ParameterSet& myConfig, int verbosity);
57     ~PhotonAnalyzer();
58     void setVerbosity(int verbosity) {verbosity_ = verbosity; };
59     bool process(const edm::Event& iEvent, const edm::EventSetup& iSetup, TRootEvent* rootEvent, TClonesArray* rootPhotons, TClonesArray* conversionTracks, ConversionLikelihoodCalculator* convLikelihoodCalculator, EcalClusterLazyTools* lazyTools);
60    
61     private:
62     int verbosity_;
63     int iconvtrack_;
64     std::string dataType_ ;
65     edm::InputTag photonProducer_;
66     edm::InputTag photonIDProducer_;
67     bool doPhotonConversion_;
68     bool doVertexCorrection_;
69     bool useMC_;
70     bool allowMissingCollection_;
71    
72 mlethuil 1.1 };
73    
74     #endif