Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 12:52:51

0001 #ifndef DataFormats_BTauReco_FeaturesTagInfo_h
0002 #define DataFormats_BTauReco_FeaturesTagInfo_h
0003 
0004 #include "DataFormats/Common/interface/CMS_CLASS_VERSION.h"
0005 #include "DataFormats/BTauReco/interface/BaseTagInfo.h"
0006 
0007 namespace reco {
0008 
0009   template <class Features>
0010   class FeaturesTagInfo : public BaseTagInfo {
0011   public:
0012     FeaturesTagInfo() {}
0013 
0014     FeaturesTagInfo(const Features& features, const edm::RefToBase<Jet>& jet_ref)
0015         : features_(features), jet_ref_(jet_ref) {}
0016 
0017     edm::RefToBase<Jet> jet() const override { return jet_ref_; }
0018 
0019     const Features& features() const { return features_; }
0020 
0021     ~FeaturesTagInfo() override {}
0022     // without overidding clone from base class will be store/retrieved
0023     FeaturesTagInfo* clone(void) const override { return new FeaturesTagInfo(*this); }
0024 
0025     CMS_CLASS_VERSION(3)
0026 
0027   private:
0028     Features features_;
0029     edm::RefToBase<Jet> jet_ref_;
0030   };
0031 
0032 }  // namespace reco
0033 
0034 #endif  // DataFormats_BTauReco_FeaturesTagInfo_h