Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:05:10

0001 #ifndef DataFormats_ScoutingPFJet_h
0002 #define DataFormats_ScoutingPFJet_h
0003 
0004 #include <vector>
0005 
0006 //class for holding PF jet information, for use in data scouting
0007 //IMPORTANT: the content of this class should be changed only in backwards compatible ways!
0008 class ScoutingPFJet {
0009 public:
0010   //constructor with values for all data fields
0011   ScoutingPFJet(float pt,
0012                 float eta,
0013                 float phi,
0014                 float m,
0015                 float jetArea,
0016                 float chargedHadronEnergy,
0017                 float neutralHadronEnergy,
0018                 float photonEnergy,
0019                 float electronEnergy,
0020                 float muonEnergy,
0021                 float HFHadronEnergy,
0022                 float HFEMEnergy,
0023                 int chargedHadronMultiplicity,
0024                 int neutralHadronMultiplicity,
0025                 int photonMultiplicity,
0026                 int electronMultiplicity,
0027                 int muonMultiplicity,
0028                 int HFHadronMultiplicity,
0029                 int HFEMMultiplicity,
0030                 float HOEnergy,
0031                 float csv,
0032                 float mvaDiscriminator,
0033                 std::vector<int> constituents)
0034       : pt_(pt),
0035         eta_(eta),
0036         phi_(phi),
0037         m_(m),
0038         jetArea_(jetArea),
0039         chargedHadronEnergy_(chargedHadronEnergy),
0040         neutralHadronEnergy_(neutralHadronEnergy),
0041         photonEnergy_(photonEnergy),
0042         electronEnergy_(electronEnergy),
0043         muonEnergy_(muonEnergy),
0044         HFHadronEnergy_(HFHadronEnergy),
0045         HFEMEnergy_(HFEMEnergy),
0046         chargedHadronMultiplicity_(chargedHadronMultiplicity),
0047         neutralHadronMultiplicity_(neutralHadronMultiplicity),
0048         photonMultiplicity_(photonMultiplicity),
0049         electronMultiplicity_(electronMultiplicity),
0050         muonMultiplicity_(muonMultiplicity),
0051         HFHadronMultiplicity_(HFHadronMultiplicity),
0052         HFEMMultiplicity_(HFEMMultiplicity),
0053         HOEnergy_(HOEnergy),
0054         csv_(csv),
0055         mvaDiscriminator_(mvaDiscriminator),
0056         constituents_(constituents) {}
0057   //default constructor
0058   ScoutingPFJet()
0059       : pt_(0),
0060         eta_(0),
0061         phi_(0),
0062         m_(0),
0063         jetArea_(0),
0064         chargedHadronEnergy_(0),
0065         neutralHadronEnergy_(0),
0066         photonEnergy_(0),
0067         electronEnergy_(0),
0068         muonEnergy_(0),
0069         HFHadronEnergy_(0),
0070         HFEMEnergy_(0),
0071         chargedHadronMultiplicity_(0),
0072         neutralHadronMultiplicity_(0),
0073         photonMultiplicity_(0),
0074         electronMultiplicity_(0),
0075         muonMultiplicity_(0),
0076         HFHadronMultiplicity_(0),
0077         HFEMMultiplicity_(0),
0078         HOEnergy_(0),
0079         csv_(0),
0080         mvaDiscriminator_(0),
0081         constituents_(std::vector<int>()) {}
0082 
0083   //accessor functions
0084   float pt() const { return pt_; }
0085   float eta() const { return eta_; }
0086   float phi() const { return phi_; }
0087   float m() const { return m_; }
0088   float jetArea() const { return jetArea_; }
0089   float chargedHadronEnergy() const { return chargedHadronEnergy_; }
0090   float neutralHadronEnergy() const { return neutralHadronEnergy_; }
0091   float photonEnergy() const { return photonEnergy_; }
0092   float electronEnergy() const { return electronEnergy_; }
0093   float muonEnergy() const { return muonEnergy_; }
0094   float HFHadronEnergy() const { return HFHadronEnergy_; }
0095   float HFEMEnergy() const { return HFEMEnergy_; }
0096   int chargedHadronMultiplicity() const { return chargedHadronMultiplicity_; }
0097   int neutralHadronMultiplicity() const { return neutralHadronMultiplicity_; }
0098   int photonMultiplicity() const { return photonMultiplicity_; }
0099   int electronMultiplicity() const { return electronMultiplicity_; }
0100   int muonMultiplicity() const { return muonMultiplicity_; }
0101   int HFHadronMultiplicity() const { return HFHadronMultiplicity_; }
0102   int HFEMMultiplicity() const { return HFEMMultiplicity_; }
0103   float HOEnergy() const { return HOEnergy_; }
0104   float csv() const { return csv_; }
0105   float mvaDiscriminator() const { return mvaDiscriminator_; }
0106   std::vector<int> constituents() const { return constituents_; }
0107 
0108 private:
0109   float pt_;
0110   float eta_;
0111   float phi_;
0112   float m_;
0113   float jetArea_;
0114   float chargedHadronEnergy_;
0115   float neutralHadronEnergy_;
0116   float photonEnergy_;
0117   float electronEnergy_;
0118   float muonEnergy_;
0119   float HFHadronEnergy_;
0120   float HFEMEnergy_;
0121   int chargedHadronMultiplicity_;
0122   int neutralHadronMultiplicity_;
0123   int photonMultiplicity_;
0124   int electronMultiplicity_;
0125   int muonMultiplicity_;
0126   int HFHadronMultiplicity_;
0127   int HFEMMultiplicity_;
0128   float HOEnergy_;
0129   float csv_;
0130   float mvaDiscriminator_;
0131   std::vector<int> constituents_;
0132 };
0133 
0134 typedef std::vector<ScoutingPFJet> ScoutingPFJetCollection;
0135 
0136 #endif