Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-02-18 08:23:40

0001 #ifndef __L1Analysis_L1AnalysisL1UpgradeDataFormat_H__
0002 #define __L1Analysis_L1AnalysisL1UpgradeDataFormat_H__
0003 
0004 //-------------------------------------------------------------------------------
0005 // Created 20/04/2010 - E. Conte, A.C. Le Bihan
0006 //
0007 //
0008 // Original code : L1TriggerDPG/L1Ntuples/L1UpgradeTreeProducer - Jim Brooke
0009 //-------------------------------------------------------------------------------
0010 
0011 #include <vector>
0012 
0013 namespace L1Analysis {
0014 
0015   // copied from DataFormats/L1Trigger/interface/EtSum.h, for use in standalone ROOT macros which use this class.
0016   enum EtSumType {
0017     kTotalEt,
0018     kTotalHt,
0019     kMissingEt,
0020     kMissingHt,
0021     kTotalEtx,
0022     kTotalEty,
0023     kTotalHtx,
0024     kTotalHty,
0025     kMissingEtHF,
0026     kTotalEtxHF,
0027     kTotalEtyHF,
0028     kMinBiasHFP0,
0029     kMinBiasHFM0,
0030     kMinBiasHFP1,
0031     kMinBiasHFM1,
0032     kTotalEtHF,
0033     kTotalEtEm,
0034     kTotalHtHF,
0035     kTotalHtxHF,
0036     kTotalHtyHF,
0037     kMissingHtHF,
0038     kTowerCount,
0039     kCentrality,
0040     kAsymEt,
0041     kAsymHt,
0042     kAsymEtHF,
0043     kAsymHtHF
0044   };
0045 
0046   struct L1AnalysisL1UpgradeDataFormat {
0047     L1AnalysisL1UpgradeDataFormat() { Reset(); };
0048     ~L1AnalysisL1UpgradeDataFormat(){};
0049 
0050     void Reset() {
0051       nEGs = 0;
0052       egEt.clear();
0053       egEta.clear();
0054       egPhi.clear();
0055       egIEt.clear();
0056       egIEta.clear();
0057       egIPhi.clear();
0058       egIso.clear();
0059       egBx.clear();
0060       egTowerIPhi.clear();
0061       egTowerIEta.clear();
0062       egRawEt.clear();
0063       egIsoEt.clear();
0064       egFootprintEt.clear();
0065       egNTT.clear();
0066       egShape.clear();
0067       egTowerHoE.clear();
0068       egHwQual.clear();
0069 
0070       nTaus = 0;
0071       tauEt.clear();
0072       tauEta.clear();
0073       tauPhi.clear();
0074       tauIEt.clear();
0075       tauIEta.clear();
0076       tauIPhi.clear();
0077       tauIso.clear();
0078       tauBx.clear();
0079       tauTowerIPhi.clear();
0080       tauTowerIEta.clear();
0081       tauRawEt.clear();
0082       tauIsoEt.clear();
0083       tauNTT.clear();
0084       tauHasEM.clear();
0085       tauIsMerged.clear();
0086       tauHwQual.clear();
0087 
0088       nJets = 0;
0089       jetEt.clear();
0090       jetEta.clear();
0091       jetPhi.clear();
0092       jetIEt.clear();
0093       jetIEta.clear();
0094       jetIPhi.clear();
0095       jetHwQual.clear();
0096       jetBx.clear();
0097       jetTowerIPhi.clear();
0098       jetTowerIEta.clear();
0099       jetRawEt.clear();
0100       jetSeedEt.clear();
0101       jetPUEt.clear();
0102       jetPUDonutEt0.clear();
0103       jetPUDonutEt1.clear();
0104       jetPUDonutEt2.clear();
0105       jetPUDonutEt3.clear();
0106 
0107       nMuons = 0;
0108       muonEt.clear();
0109       muonEtUnconstrained.clear();
0110       muonEta.clear();
0111       muonPhi.clear();
0112       muonEtaAtVtx.clear();
0113       muonPhiAtVtx.clear();
0114       muonIEt.clear();
0115       muonIEtUnconstrained.clear();
0116       muonIEta.clear();
0117       muonIPhi.clear();
0118       muonIEtaAtVtx.clear();
0119       muonIPhiAtVtx.clear();
0120       muonIDEta.clear();
0121       muonIDPhi.clear();
0122       muonChg.clear();
0123       muonIso.clear();
0124       muonQual.clear();
0125       muonDxy.clear();
0126       muonTfMuonIdx.clear();
0127       muonBx.clear();
0128 
0129       nMuonShowers = 0;
0130       muonShowerBx.clear();
0131       muonShowerOneNominal.clear();
0132       muonShowerOneTight.clear();
0133       muonShowerTwoLoose.clear();
0134 
0135       nSums = 0;
0136       sumType.clear();
0137       sumEt.clear();
0138       sumPhi.clear();
0139       sumIEt.clear();
0140       sumIPhi.clear();
0141       sumBx.clear();
0142     }
0143 
0144     unsigned short int nEGs;
0145     std::vector<float> egEt;
0146     std::vector<float> egEta;
0147     std::vector<float> egPhi;
0148     std::vector<short int> egIEt;
0149     std::vector<short int> egIEta;
0150     std::vector<short int> egIPhi;
0151     std::vector<short int> egIso;
0152     std::vector<short int> egBx;
0153     std::vector<short int> egTowerIPhi;
0154     std::vector<short int> egTowerIEta;
0155     std::vector<short int> egRawEt;
0156     std::vector<short int> egIsoEt;
0157     std::vector<short int> egFootprintEt;
0158     std::vector<short int> egNTT;
0159     std::vector<short int> egShape;
0160     std::vector<short int> egTowerHoE;
0161     std::vector<short int> egHwQual;
0162 
0163     unsigned short int nTaus;
0164     std::vector<float> tauEt;
0165     std::vector<float> tauEta;
0166     std::vector<float> tauPhi;
0167     std::vector<short int> tauIEt;
0168     std::vector<short int> tauIEta;
0169     std::vector<short int> tauIPhi;
0170     std::vector<short int> tauIso;
0171     std::vector<short int> tauBx;
0172     std::vector<short int> tauTowerIPhi;
0173     std::vector<short int> tauTowerIEta;
0174     std::vector<short int> tauRawEt;
0175     std::vector<short int> tauIsoEt;
0176     std::vector<short int> tauNTT;
0177     std::vector<short int> tauHasEM;
0178     std::vector<short int> tauIsMerged;
0179     std::vector<short int> tauHwQual;
0180 
0181     unsigned short int nJets;
0182     std::vector<float> jetEt;
0183     std::vector<float> jetEta;
0184     std::vector<float> jetPhi;
0185     std::vector<short int> jetIEt;
0186     std::vector<short int> jetIEta;
0187     std::vector<short int> jetIPhi;
0188     std::vector<short int> jetHwQual;
0189     std::vector<short int> jetBx;
0190     std::vector<short int> jetTowerIPhi;
0191     std::vector<short int> jetTowerIEta;
0192     std::vector<short int> jetRawEt;
0193     std::vector<short int> jetSeedEt;
0194     std::vector<short int> jetPUEt;
0195     std::vector<short int> jetPUDonutEt0;
0196     std::vector<short int> jetPUDonutEt1;
0197     std::vector<short int> jetPUDonutEt2;
0198     std::vector<short int> jetPUDonutEt3;
0199 
0200     unsigned short int nMuons;
0201     std::vector<float> muonEt;
0202     std::vector<float> muonEtUnconstrained;
0203     std::vector<float> muonEta;
0204     std::vector<float> muonPhi;
0205     std::vector<float> muonEtaAtVtx;
0206     std::vector<float> muonPhiAtVtx;
0207     std::vector<short int> muonIEt;
0208     std::vector<short int> muonIEtUnconstrained;
0209     std::vector<short int> muonIEta;
0210     std::vector<short int> muonIPhi;
0211     std::vector<short int> muonIEtaAtVtx;
0212     std::vector<short int> muonIPhiAtVtx;
0213     std::vector<short int> muonIDEta;
0214     std::vector<short int> muonIDPhi;
0215     std::vector<short int> muonChg;
0216     std::vector<unsigned short int> muonIso;
0217     std::vector<unsigned short int> muonQual;
0218     std::vector<unsigned short int> muonDxy;
0219     std::vector<unsigned short int> muonTfMuonIdx;
0220     std::vector<short int> muonBx;
0221 
0222     unsigned short int nMuonShowers;
0223     std::vector<short int> muonShowerBx;
0224     std::vector<short int> muonShowerOneNominal;
0225     std::vector<short int> muonShowerOneTight;
0226     std::vector<short int> muonShowerTwoLoose;
0227 
0228     unsigned short int nSums;
0229     std::vector<short int> sumType;
0230     std::vector<float> sumEt;
0231     std::vector<float> sumPhi;
0232     std::vector<short int> sumIEt;
0233     std::vector<short int> sumIPhi;
0234     std::vector<float> sumBx;
0235   };
0236 }  // namespace L1Analysis
0237 #endif