File indexing completed on 2024-04-06 12:04:23
0001 #ifndef DataFormats_JetMatching_JetFlavourInfo_H
0002 #define DataFormats_JetMatching_JetFlavourInfo_H
0003
0004 #include <vector>
0005 #include "DataFormats/HepMCCandidate/interface/GenParticle.h"
0006 #include "DataFormats/HepMCCandidate/interface/GenParticleFwd.h"
0007
0008 namespace reco {
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 class JetFlavourInfo {
0019 public:
0020 JetFlavourInfo(void) : m_hadronFlavour(0), m_partonFlavour(0) {}
0021 JetFlavourInfo(const int hadronFlavour, const int partonFlavour)
0022 : m_hadronFlavour(hadronFlavour), m_partonFlavour(partonFlavour) {}
0023 JetFlavourInfo(const GenParticleRefVector& bHadrons,
0024 const GenParticleRefVector& cHadrons,
0025 const GenParticleRefVector& partons,
0026 const GenParticleRefVector& leptons,
0027 const int hadronFlavour,
0028 const int partonFlavour)
0029 : m_bHadrons(bHadrons),
0030 m_cHadrons(cHadrons),
0031 m_partons(partons),
0032 m_leptons(leptons),
0033 m_hadronFlavour(hadronFlavour),
0034 m_partonFlavour(partonFlavour) {}
0035
0036
0037 const GenParticleRefVector& getbHadrons() const { return m_bHadrons; }
0038
0039 const GenParticleRefVector& getcHadrons() const { return m_cHadrons; }
0040
0041 const GenParticleRefVector& getPartons() const { return m_partons; }
0042
0043 const GenParticleRefVector& getLeptons() const { return m_leptons; }
0044
0045 const int getHadronFlavour() const { return m_hadronFlavour; }
0046
0047 const int getPartonFlavour() const { return m_partonFlavour; }
0048
0049
0050 void setHadronFlavour(const int hadronFlavour) { m_hadronFlavour = hadronFlavour; }
0051
0052 void setPartonFlavour(const int partonFlavour) { m_partonFlavour = partonFlavour; }
0053
0054 private:
0055 GenParticleRefVector m_bHadrons;
0056 GenParticleRefVector m_cHadrons;
0057 GenParticleRefVector m_partons;
0058 GenParticleRefVector m_leptons;
0059 int m_hadronFlavour;
0060 int m_partonFlavour;
0061 };
0062
0063 }
0064 #endif