Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 10:51:19

0001 #ifndef DataFormats_ScoutingElectron_h
0002 #define DataFormats_ScoutingElectron_h
0003 
0004 #include <vector>
0005 
0006 // Class for holding electron information, for use in data scouting
0007 // IMPORTANT: the content of this class should be changed only in backwards compatible ways!
0008 class ScoutingElectron {
0009 public:
0010   //constructor with values for all data fields
0011   ScoutingElectron(float pt,
0012                    float eta,
0013                    float phi,
0014                    float m,
0015                    float d0,
0016                    float dz,
0017                    float dEtaIn,
0018                    float dPhiIn,
0019                    float sigmaIetaIeta,
0020                    float hOverE,
0021                    float ooEMOop,
0022                    int missingHits,
0023                    int charge,
0024                    float ecalIso,
0025                    float hcalIso,
0026                    float trackIso)
0027       : pt_(pt),
0028         eta_(eta),
0029         phi_(phi),
0030         m_(m),
0031         d0_(d0),
0032         dz_(dz),
0033         dEtaIn_(dEtaIn),
0034         dPhiIn_(dPhiIn),
0035         sigmaIetaIeta_(sigmaIetaIeta),
0036         hOverE_(hOverE),
0037         ooEMOop_(ooEMOop),
0038         missingHits_(missingHits),
0039         charge_(charge),
0040         ecalIso_(ecalIso),
0041         hcalIso_(hcalIso),
0042         trackIso_(trackIso) {}
0043   //default constructor
0044   ScoutingElectron()
0045       : pt_(0),
0046         eta_(0),
0047         phi_(0),
0048         m_(0),
0049         d0_(0),
0050         dz_(0),
0051         dEtaIn_(0),
0052         dPhiIn_(0),
0053         sigmaIetaIeta_(0),
0054         hOverE_(0),
0055         ooEMOop_(0),
0056         missingHits_(0),
0057         charge_(0),
0058         ecalIso_(0),
0059         hcalIso_(0),
0060         trackIso_(0) {}
0061 
0062   //accessor functions
0063   float pt() const { return pt_; }
0064   float eta() const { return eta_; }
0065   float phi() const { return phi_; }
0066   float m() const { return m_; }
0067   float d0() const { return d0_; }
0068   float dz() const { return dz_; }
0069   float dEtaIn() const { return dEtaIn_; }
0070   float dPhiIn() const { return dPhiIn_; }
0071   float sigmaIetaIeta() const { return sigmaIetaIeta_; }
0072   float hOverE() const { return hOverE_; }
0073   float ooEMOop() const { return ooEMOop_; }
0074   int missingHits() const { return missingHits_; }
0075   int charge() const { return charge_; }
0076   float ecalIso() const { return ecalIso_; }
0077   float hcalIso() const { return hcalIso_; }
0078   float trackIso() const { return trackIso_; }
0079 
0080 private:
0081   float pt_;
0082   float eta_;
0083   float phi_;
0084   float m_;
0085   float d0_;
0086   float dz_;
0087   float dEtaIn_;
0088   float dPhiIn_;
0089   float sigmaIetaIeta_;
0090   float hOverE_;
0091   float ooEMOop_;
0092   int missingHits_;
0093   int charge_;
0094   float ecalIso_;
0095   float hcalIso_;
0096   float trackIso_;
0097 };
0098 
0099 typedef std::vector<ScoutingElectron> ScoutingElectronCollection;
0100 
0101 #endif