File indexing completed on 2024-04-06 12:03:47
0001 #ifndef DataFormats_BTauReco_JTATagInfo_h
0002 #define DataFormats_BTauReco_JTATagInfo_h
0003
0004 #include "DataFormats/BTauReco/interface/RefMacros.h"
0005 #include "DataFormats/BTauReco/interface/BaseTagInfo.h"
0006 #include "DataFormats/JetReco/interface/JetTracksAssociation.h"
0007
0008 namespace reco {
0009
0010 class JTATagInfo : public BaseTagInfo {
0011 public:
0012 JTATagInfo(void) : m_jetTracksAssociation() {}
0013 JTATagInfo(const JetTracksAssociationRef& jtaRef) : m_jetTracksAssociation(jtaRef) {}
0014
0015 ~JTATagInfo(void) override {}
0016
0017 JTATagInfo* clone(void) const override { return new JTATagInfo(*this); }
0018
0019 edm::RefToBase<Jet> jet(void) const override { return m_jetTracksAssociation->first; }
0020 TrackRefVector tracks(void) const override { return m_jetTracksAssociation->second; }
0021 const JetTracksAssociationRef& jtaRef(void) const { return m_jetTracksAssociation; }
0022
0023 bool hasTracks(void) const override { return true; }
0024
0025 void setJTARef(const JetTracksAssociationRef& jtaRef) { m_jetTracksAssociation = jtaRef; }
0026
0027 protected:
0028 JetTracksAssociationRef m_jetTracksAssociation;
0029 };
0030
0031 DECLARE_EDM_REFS(JTATagInfo)
0032
0033 }
0034
0035 #endif