Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef DataFormats_Scouting_Run3ScoutingParticle_h
0002 #define DataFormats_Scouting_Run3ScoutingParticle_h
0003 
0004 #include <vector>
0005 #include <cstdint>
0006 
0007 //class for holding PF candidate information, for use in data scouting
0008 //IMPORTANT: the content of this class should be changed only in backwards compatible ways!
0009 class Run3ScoutingParticle {
0010 public:
0011   //constructor with values for all data fields
0012   Run3ScoutingParticle(float pt,
0013                        float eta,
0014                        float phi,
0015                        int pdgId,
0016                        int vertex,
0017                        float normchi2,
0018                        float dz,
0019                        float dxy,
0020                        float dzsig,
0021                        float dxysig,
0022                        uint8_t lostInnerHits,
0023                        uint8_t quality,
0024                        float trk_pt,
0025                        float trk_eta,
0026                        float trk_phi,
0027                        bool relative_trk_vars)
0028       : pt_(pt),
0029         eta_(eta),
0030         phi_(phi),
0031         pdgId_(pdgId),
0032         vertex_(vertex),
0033         normchi2_(normchi2),
0034         dz_(dz),
0035         dxy_(dxy),
0036         dzsig_(dzsig),
0037         dxysig_(dxysig),
0038         lostInnerHits_(lostInnerHits),
0039         quality_(quality),
0040         trk_pt_(trk_pt),
0041         trk_eta_(trk_eta),
0042         trk_phi_(trk_phi),
0043         relative_trk_vars_(relative_trk_vars) {}
0044 
0045   // default constractor
0046   Run3ScoutingParticle()
0047       : pt_(0),
0048         eta_(0),
0049         phi_(0),
0050         pdgId_(0),
0051         vertex_(-1),
0052         normchi2_(0),
0053         dz_(0),
0054         dxy_(0),
0055         dzsig_(0),
0056         dxysig_(0),
0057         lostInnerHits_(0),
0058         quality_(0),
0059         trk_pt_(0),
0060         trk_eta_(0),
0061         trk_phi_(0),
0062         relative_trk_vars_(false) {}
0063 
0064   //accessor functions
0065   float pt() const { return pt_; }
0066   float eta() const { return eta_; }
0067   float phi() const { return phi_; }
0068   int pdgId() const { return pdgId_; }
0069   int vertex() const { return vertex_; }
0070   float normchi2() const { return normchi2_; }
0071   float dz() const { return dz_; }
0072   float dxy() const { return dxy_; }
0073   float dzsig() const { return dzsig_; }
0074   float dxysig() const { return dxysig_; }
0075   uint8_t lostInnerHits() const { return lostInnerHits_; }
0076   uint8_t quality() const { return quality_; }
0077   float trk_pt() const { return trk_pt_; }
0078   float trk_eta() const { return trk_eta_; }
0079   float trk_phi() const { return trk_phi_; }
0080   bool relative_trk_vars() const { return relative_trk_vars_; }
0081 
0082 private:
0083   float pt_;
0084   float eta_;
0085   float phi_;
0086   int pdgId_;
0087   int vertex_;
0088   float normchi2_;
0089   float dz_;
0090   float dxy_;
0091   float dzsig_;
0092   float dxysig_;
0093   uint8_t lostInnerHits_;
0094   uint8_t quality_;
0095   float trk_pt_;
0096   float trk_eta_;
0097   float trk_phi_;
0098   bool relative_trk_vars_;
0099 };
0100 
0101 typedef std::vector<Run3ScoutingParticle> Run3ScoutingParticleCollection;
0102 
0103 #endif  // DataFormats_Scouting_Run3ScoutingParticle_h