CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_13_patch3/src/DataFormats/METReco/interface/GlobalHaloData.h

Go to the documentation of this file.
00001 #ifndef DATAFORMATS_METRECO_GLOBALHALODATA_H
00002 #define DATAFORMATS_METRECO_GLOBALHALODATA_H
00003 /*
00004   [class]:  GlobalHaloData
00005   [authors]: R. Remington, The University of Florida
00006   [description]: Container class to store global beam halo data synthesized from EcalHaloData, HcalHaloData, and CSCHaloData. Also stores some variables relevant to MET for possible corrections.
00007   [date]: October 15, 2009
00008 */
00009 #include "DataFormats/METReco/interface/EcalHaloData.h"
00010 #include "DataFormats/METReco/interface/HcalHaloData.h"
00011 #include "DataFormats/METReco/interface/CSCHaloData.h"
00012 #include "DataFormats/METReco/interface/PhiWedge.h"
00013 #include "DataFormats/METReco/interface/CaloMET.h"
00014 #include "DataFormats/METReco/interface/MET.h"
00015 
00016 namespace reco {
00017   class GlobalHaloData {
00018 
00019   public:
00020     // Constructor
00021     GlobalHaloData();
00022     // Destructor
00023     ~GlobalHaloData(){}
00024     
00025     //A good cut-variable to isolate halo events with no overlapping physics from collisions 
00026     float METOverSumEt() const {return METOverSumEt_;}
00027     
00028     //Correction to CaloMET x-component 
00029     float DeltaMEx() const {return dMEx_;}
00030 
00031     //Correction to CaloMET y-component
00032     float DeltaMEy() const {return dMEy_;}
00033 
00034     //Correction to SumEt
00035     float DeltaSumEt() const { return dSumEt_;}
00036 
00037     //Get CaloMET Object corrected for BeamHalo
00038     reco::CaloMET GetCorrectedCaloMET(const reco::CaloMET& RawMET) const ;
00039 
00040     std::vector<PhiWedge>& GetMatchedHcalPhiWedges(){return HcalPhiWedges;}
00041     const std::vector<PhiWedge>& GetMatchedHcalPhiWedges() const {return HcalPhiWedges;}
00042 
00043     std::vector<PhiWedge>& GetMatchedEcalPhiWedges(){return EcalPhiWedges;}
00044     const std::vector<PhiWedge>& GetMatchedEcalPhiWedges() const {return EcalPhiWedges;}
00045     
00046     //Setters
00047     void SetMETOverSumEt(float x){METOverSumEt_=x;}
00048     void SetMETCorrections(float x, float y) { dMEx_ =x ; dMEy_ = y;}
00049   private:
00050     
00051     float METOverSumEt_;
00052     float dMEx_;
00053     float dMEy_;
00054     float dSumEt_;
00055      
00056     std::vector<PhiWedge> HcalPhiWedges;
00057     std::vector<PhiWedge> EcalPhiWedges;
00058   };
00059 }
00060 #endif