Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 09:39:09

0001 //

0002 //

0003 
0004 #ifndef DataFormats_Centrality_h
0005 #define DataFormats_Centrality_h
0006 
0007 #include <string>
0008 #include <vector>
0009 
0010 namespace reco {
0011   class Centrality {
0012   public:
0013     Centrality(double d = 0, std::string label = "");
0014     virtual ~Centrality();
0015 
0016     friend class CentralityProducer;
0017 
0018     double raw() const { return value_; }
0019     std::string label() const { return label_; }
0020 
0021     double EtHFhitSum() const { return etHFhitSumPlus_ + etHFhitSumMinus_; }
0022     double EtHFhitSumPlus() const { return etHFhitSumPlus_; }
0023     double EtHFhitSumMinus() const { return etHFhitSumMinus_; }
0024     double EtHFtowerSum() const { return etHFtowerSumPlus_ + etHFtowerSumMinus_; }
0025     double EtHFtowerSumPlus() const { return etHFtowerSumPlus_; }
0026     double EtHFtowerSumMinus() const { return etHFtowerSumMinus_; }
0027     double EtHFtowerSumECut() const { return etHFtowerSumECutPlus_ + etHFtowerSumECutMinus_; }
0028     double EtHFtowerSumECutPlus() const { return etHFtowerSumECutPlus_; }
0029     double EtHFtowerSumECutMinus() const { return etHFtowerSumECutMinus_; }
0030     double EtHFtruncated() const { return etHFtruncatedPlus_ + etHFtruncatedMinus_; }
0031     double EtHFtruncatedPlus() const { return etHFtruncatedPlus_; }
0032     double EtHFtruncatedMinus() const { return etHFtruncatedMinus_; }
0033     double EtEESum() const { return etEESumPlus_ + etEESumMinus_; }
0034     double EtEESumPlus() const { return etEESumPlus_; }
0035     double EtEESumMinus() const { return etEESumMinus_; }
0036     double EtEEtruncated() const { return etEEtruncatedPlus_ + etEEtruncatedMinus_; }
0037     double EtEEtruncatedPlus() const { return etEEtruncatedPlus_; }
0038     double EtEEtruncatedMinus() const { return etEEtruncatedMinus_; }
0039     double EtEBSum() const { return etEBSum_; }
0040     double EtEBtruncated() const { return etEBtruncated_; }
0041     double EtEcalSum() const { return etEBSum_ + EtEESum(); }
0042     double EtEcaltruncated() const { return etEBtruncated_ + EtEEtruncated(); }
0043     double multiplicityPixel() const { return pixelMultiplicity_; }
0044     double multiplicityPixelPlus() const { return pixelMultiplicityPlus_; }
0045     double multiplicityPixelMinus() const { return pixelMultiplicityMinus_; }
0046     double Ntracks() const { return trackMultiplicity_; }
0047     double NtracksPtCut() const { return ntracksPtCut_; }
0048     double NtracksEtaCut() const { return ntracksEtaCut_; }
0049     double NtracksEtaPtCut() const { return ntracksEtaPtCut_; }
0050     double NpixelTracks() const { return nPixelTracks_; }
0051     double NpixelTracksPlus() const { return nPixelTracksPlus_; }
0052     double NpixelTracksMinus() const { return nPixelTracksMinus_; }
0053 
0054     double zdcSum() const { return zdcSumPlus_ + zdcSumMinus_; }
0055     double zdcSumPlus() const { return zdcSumPlus_; }
0056     double zdcSumMinus() const { return zdcSumMinus_; }
0057     double EtMidRapiditySum() const { return etMidRapiditySum_; }
0058 
0059   protected:
0060     double value_;
0061     std::string label_;
0062 
0063     double etHFhitSumPlus_;
0064     double etHFtowerSumPlus_;
0065     double etHFtowerSumECutPlus_;
0066     double etHFtruncatedPlus_;
0067 
0068     double etHFhitSumMinus_;
0069     double etHFtowerSumMinus_;
0070     double etHFtowerSumECutMinus_;
0071     double etHFtruncatedMinus_;
0072 
0073     double etEESumPlus_;
0074     double etEEtruncatedPlus_;
0075     double etEESumMinus_;
0076     double etEEtruncatedMinus_;
0077     double etEBSum_;
0078     double etEBtruncated_;
0079 
0080     double pixelMultiplicity_;
0081     double pixelMultiplicityPlus_;
0082     double pixelMultiplicityMinus_;
0083     double trackMultiplicity_;
0084     double zdcSumPlus_;
0085     double zdcSumMinus_;
0086     double etMidRapiditySum_;
0087     double ntracksPtCut_;
0088     double ntracksEtaCut_;
0089     double ntracksEtaPtCut_;
0090     double nPixelTracks_;
0091     double nPixelTracksPlus_;
0092     double nPixelTracksMinus_;
0093   };
0094 
0095   typedef std::vector<reco::Centrality> CentralityCollection;
0096 
0097 }  // namespace reco

0098 
0099 #endif