ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/DTDPGAnalysis/src/DTOfflineAnalyzer.h
Revision: 1.3
Committed: Thu Jul 4 17:17:00 2013 UTC (11 years, 10 months ago) by marycruz
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +10 -0 lines
Log Message:
Update last version of PromptOffline

File Contents

# User Rev Content
1 giorgia 1.1 #ifndef DTOFFLINEANALYZER_H
2     #define DTOFFLINEANALYZER_H
3    
4     /** \class DTOfflineAnalyzer
5     *
6     * Description:
7     *
8     * detailed description
9     *
10     * \author : Stefano Lacaprara - INFN Padova <stefano.lacaprara@pd.infn.it>
11     * $date : 20/11/2006 16:51:04 CET $
12     *
13     * Modification:
14     *
15     */
16    
17     /* Base Class Headers */
18     #include "FWCore/Framework/interface/EDAnalyzer.h"
19     namespace edm {
20     class ParameterSet;
21     class Event;
22     class EventSetup;
23     }
24    
25     /* Collaborating Class Declarations */
26     #include "DataFormats/Common/interface/Handle.h"
27     class TFile;
28 battilan 1.2 class DQMStore;
29 giorgia 1.1 class TH1F;
30     class TH2F;
31     class DTLayerId;
32     class DTSuperLayerId;
33     class DTChamberId;
34     class DTTTrigBaseSync;
35     class Propagator;
36    
37     /* C++ Headers */
38     #include <iosfwd>
39     #include <bitset>
40    
41     /* ====================================================================== */
42    
43     /* Class DTOfflineAnalyzer Interface */
44    
45     class DTOfflineAnalyzer : public edm::EDAnalyzer {
46    
47     public:
48    
49     /* Constructor */
50     DTOfflineAnalyzer(const edm::ParameterSet& pset) ;
51    
52     /* Destructor */
53     ~DTOfflineAnalyzer() ;
54    
55     /* Operations */
56     void analyze(const edm::Event & event, const edm::EventSetup& eventSetup);
57    
58     private:
59     void analyzeDTHits(const edm::Event & event, const edm::EventSetup& eventSetup);
60     void analyzeDTSegments(const edm::Event & event, const edm::EventSetup& eventSetup);
61     void analyzeSATrack(const edm::Event & event, const edm::EventSetup& eventSetup);
62     void analyzeTrigger(const edm::Event & event, const edm::EventSetup& eventSetup);
63     void LabelTriggerMatrix();
64    
65     TH1F* histo(const std::string& name) const;
66     TH2F* histo2d(const std::string& name) const;
67    
68     void createTH1F(const std::string& name,
69     const std::string& title,
70     const std::string& suffix,
71     int nbin, const double& binMin, const double& binMax) const;
72    
73     void createTH2F(const std::string& name,
74     const std::string& title,
75     const std::string& suffix,
76     int nBinX,
77     const double& binXMin,
78     const double& binXMax,
79     int nBinY,
80     const double& binYMin,
81     const double& binYMax) const ;
82    
83     enum LCTType { DT, CSC, RPC_W1, RPC_W2 };
84     bool getLCT(LCTType) const;
85     bool selectEvent() const ;
86    
87     std::string toString(const DTLayerId& id) const;
88     std::string toString(const DTSuperLayerId& id) const;
89     std::string toString(const DTChamberId& id) const;
90     template<class T> std::string hName(const std::string& s, const T& id) const;
91     private:
92     bool LCT_RPC, LCT_DT, LCT_CSC;
93     bool debug;
94     int _ev;
95     std::string theRootFileName;
96 battilan 1.2 // TFile* theFile;
97     DQMStore *theDQMStore;
98 giorgia 1.1 //static std::string theAlgoName;
99     int sects[5][12];
100     std::string theDTLocalTriggerLabel;
101     std::string theRecHits4DLabel;
102     std::string theRecHits2DLabel;
103     std::string theRecHits1DLabel;
104     std::string theSTAMuonLabel;
105     std::string thePropagatorName;
106    
107     mutable Propagator* thePropagator;
108    
109     bool mc;
110    
111     bool doHits;
112     bool doSegs;
113     bool doSA;
114     bool doTrig;
115     bool doTBox;
116 marycruz 1.3 bool doTBoxWhm2;
117     bool doTBoxWhm1;
118     bool doTBoxWh0;
119     bool doTBoxWh1;
120     bool doTBoxWh2;
121 giorgia 1.1
122     bool doWheel[5];
123 marycruz 1.3 bool doTBoxWheel[5];
124     int doTBoxSector;
125     int doTBoxChamber;
126     int doTBoxSuperLayer;
127     int doTBoxLayer;
128 giorgia 1.1
129     bool init;
130     std::bitset<6> LCT;
131    
132     DTTTrigBaseSync *theSync;
133    
134     protected:
135    
136     };
137     #endif // DTOFFLINEANALYZER_H
138