ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/DTDPGAnalysis/interface/TTreeGenerator.h
Revision: 1.6
Committed: Fri Jul 2 08:44:35 2010 UTC (14 years, 10 months ago) by battilan
Content type: text/plain
Branch: MAIN
CVS Tags: V00-00-11
Changes since 1.5: +4 -0 lines
Log Message:
run on simulation fix + cfg , outputFile config param added

File Contents

# User Rev Content
1 pellicci 1.1 #include<iostream>
2    
3     #include "TFile.h"
4     #include "TTree.h"
5     #include "TVectorF.h"
6     #include "TClonesArray.h"
7    
8 pellicci 1.2 #include "UserCode/DTDPGAnalysis/interface/DefineTreeVariables.h"
9 pellicci 1.1
10 pellicci 1.5 #include "DataFormats/BeamSpot/interface/BeamSpot.h"
11    
12 pellicci 1.1 #include "FWCore/Framework/interface/EDAnalyzer.h"
13     #include "FWCore/Framework/interface/ESHandle.h"
14     #include "FWCore/Framework/interface/Event.h"
15     #include "FWCore/Framework/interface/Frameworkfwd.h"
16    
17     #include "TrackingTools/GeomPropagators/interface/Propagator.h"
18    
19 battilan 1.6
20 pellicci 1.1 //
21     // class declaration
22     //
23     class TTreeGenerator : public edm::EDAnalyzer {
24    
25     public:
26     explicit TTreeGenerator(const edm::ParameterSet&);
27     ~TTreeGenerator() {};
28    
29    
30     private:
31    
32     virtual void beginJob() ;
33     virtual void beginRun(const edm::Run&, const edm::EventSetup&) {};
34     virtual void analyze(const edm::Event&, const edm::EventSetup&);
35     virtual void endJob() ;
36    
37     void initialize_Tree_variables();
38     inline void clear_Arrays();
39    
40     void fill_digi_variables(edm::Handle<DTDigiCollection> dtdigis);
41     void fill_dtsegments_variables(edm::Handle<DTRecSegment4DCollection> segments4D);
42     void fill_cscsegments_variables(edm::Handle<CSCSegmentCollection> cscsegments);
43     void fill_dcc_variables(edm::Handle<L1MuDTChambPhContainer> localTriggerDCC);
44     void fill_ddu_variables(edm::Handle<DTLocalTriggerCollection> localTriggerDDU);
45     void fill_muons_variables(edm::Handle<reco::MuonCollection> MuList);
46     void fill_gmt_variables(edm::Handle<L1MuGMTReadoutCollection> gmtrc);
47    
48     void fill_dtphi_info(const DTChamberRecSegment2D* phiSeg);
49     void fill_dtz_info(const DTSLRecSegment2D* zSeg);
50    
51     std::vector<L1MuRegionalCand> getBXCands(const L1MuGMTReadoutRecord* igmtrr, const int DetectorType) const;
52    
53     TrajectoryStateOnSurface cylExtrapTrkSam(reco::TrackRef track, const float rho) const;
54     FreeTrajectoryState freeTrajStateMuon(const reco::TrackRef track) const;
55    
56     edm::InputTag dtDigiLabel_;
57     edm::InputTag dtSegmentLabel_;
58     edm::InputTag cscSegmentLabel_;
59     edm::InputTag dtTrigDCCLabel_;
60     edm::InputTag dtTrigDDULabel_;
61     edm::InputTag staMuLabel_;
62     edm::InputTag gmtLabel_;
63    
64     edm::InputTag PrimaryVertexTag_;
65 pellicci 1.5 edm::InputTag beamSpotTag_;
66 pellicci 1.1
67     edm::InputTag triggerTag_;
68    
69 pellicci 1.3 bool runOnRaw_;
70 battilan 1.6 bool runOnSimulation_;
71    
72     std::string outFile_;
73 pellicci 1.3
74 pellicci 1.1 edm::ESHandle<MagneticField> theBField;
75     edm::ESHandle<Propagator> propagatorAlong;
76     edm::ESHandle<Propagator> propagatorOpposite;
77    
78     edm::ESHandle<GlobalTrackingGeometry> theTrackingGeometry;
79    
80     int digisSize_;
81     int dtsegmentsSize_;
82     int cscsegmentsSize_;
83     int dtltDCCSize_;
84     int dtltDDUSize_;
85     int gmtSize_;
86     int STAMuSize_;
87    
88     //counters
89     short idigis;
90     short idtsegments;
91     short icscsegments;
92     short idtltDCC;
93     short idtltDDU;
94     short imuons;
95     short igmtdt;
96     short igmtcands;
97    
98 pellicci 1.5 reco::BeamSpot beamspot;
99    
100 pellicci 1.1 TFile *outFile;
101     TTree *tree_;
102    
103     };