Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-09-07 04:37:01

0001 #ifndef __L1Analysis_L1AnalysisGTDataFormat_H__
0002 #define __L1Analysis_L1AnalysisGTDataFormat_H__
0003 
0004 //-------------------------------------------------------------------------------
0005 // Created 15/04/2010 - E. Conte, A.C. Le Bihan
0006 //
0007 //
0008 // Original code : L1Trigger/L1TNtuples/L1NtupleProducer
0009 //-------------------------------------------------------------------------------
0010 #include <vector>
0011 // #include <inttypes.h>
0012 #include <TROOT.h>
0013 
0014 namespace L1Analysis {
0015   struct L1AnalysisGTDataFormat {
0016     L1AnalysisGTDataFormat() { Reset(); };
0017     ~L1AnalysisGTDataFormat() {}
0018 
0019     void Reset() {
0020       tw1.clear();
0021       tw2.clear();
0022       tt.clear();
0023 
0024       partrig_tcs = 0;
0025       gpsTimehi = 0;
0026       gpsTimelo = 0;
0027       bstMasterStatus = 0;
0028       bstturnCountNumber = 0;
0029       bstlhcFillNumber = 0;
0030       bstbeamMode = 0;
0031       bstparticleTypeBeam1 = 0;
0032       bstparticleTypeBeam2 = 0;
0033       bstbeamMomentum = 0;
0034       bsttotalIntensityBeam1 = 0;
0035       bsttotalIntensityBeam2 = 0;
0036 
0037       //PSB info
0038       Nele = 0;
0039       Bxel.clear();
0040       Rankel.clear();
0041       Phiel.clear();
0042       Etael.clear();
0043       Isoel.clear();
0044 
0045       Njet = 0;
0046       Bxjet.clear();
0047       Rankjet.clear();
0048       Phijet.clear();
0049       Etajet.clear();
0050       Taujet.clear();
0051       Fwdjet.clear();
0052 
0053       // ------ ETT, ETM, HTT and HTM from PSB14:
0054 
0055       RankETT = -1;
0056       OvETT = false;
0057       RankHTT = -1;
0058       OvHTT = false;
0059       RankETM = -1;
0060       PhiETM = -1;
0061       OvETM = false;
0062       RankHTM = -1;
0063       PhiHTM = -1;
0064       OvHTM = false;
0065     }
0066 
0067     // ---- L1AnalysisGTDataFormat information.
0068 
0069     std::vector<ULong64_t> tw1;
0070     std::vector<ULong64_t> tw2;
0071     std::vector<ULong64_t> tt;
0072     unsigned long partrig_tcs;
0073     unsigned long gpsTimehi;
0074     unsigned long gpsTimelo;
0075     unsigned long bstMasterStatus;
0076     unsigned long bstturnCountNumber;
0077     unsigned long bstlhcFillNumber;
0078     unsigned long bstbeamMode;
0079     unsigned long bstparticleTypeBeam1;
0080     unsigned long bstparticleTypeBeam2;
0081     unsigned long bstbeamMomentum;
0082     unsigned long bsttotalIntensityBeam1;
0083     unsigned long bsttotalIntensityBeam2;
0084 
0085     //PSB info
0086     int Nele;
0087     std::vector<int> Bxel;
0088     std::vector<float> Rankel;
0089     std::vector<float> Phiel;
0090     std::vector<float> Etael;
0091     std::vector<bool> Isoel;
0092 
0093     int Njet;
0094     std::vector<int> Bxjet;
0095     std::vector<float> Rankjet;
0096     std::vector<float> Phijet;
0097     std::vector<float> Etajet;
0098     std::vector<bool> Taujet;
0099     std::vector<bool> Fwdjet;
0100 
0101     // ------ ETT, ETM, HTT and HTM from PSB14:
0102 
0103     int RankETT;
0104     bool OvETT;
0105 
0106     int RankHTT;
0107     bool OvHTT;
0108 
0109     int RankETM;
0110     int PhiETM;
0111     bool OvETM;
0112 
0113     int RankHTM;
0114     int PhiHTM;
0115     bool OvHTM;
0116   };
0117 }  // namespace L1Analysis
0118 #endif