ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/interface/FillerPFTaus.h
Revision: 1.14
Committed: Mon Mar 26 15:27:15 2012 UTC (13 years, 1 month ago) by mhchan
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_029, Mit_029_pre1, Mit_028a, Mit_028, Mit_027a, Mit_027, Mit_026, Mit_025e
Changes since 1.13: +2 -1 lines
Log Message:
Added medium muon rejection discriminator to PFTau

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: FillerPFTaus.h,v 1.13 2012/03/25 17:11:14 mhchan Exp $
3 //
4 // FillerPFTaus
5 //
6 // Implementation of a filler to fill EDM pf taus into our mithep::PFTau data structure.
7 //
8 // Authors: C.Loizides, J.Bendavid
9 //--------------------------------------------------------------------------------------------------
10
11 #ifndef MITPROD_TREEFILLER_FILLERPFTAUS_H
12 #define MITPROD_TREEFILLER_FILLERPFTAUS_H
13
14 #include "MitAna/DataTree/interface/PFTauFwd.h"
15 #include "DataFormats/Common/interface/RefToPtr.h"
16 #include "MitProd/TreeFiller/interface/AssociationMaps.h"
17 #include "MitProd/TreeFiller/interface/BaseFiller.h"
18
19 namespace mithep
20 {
21 class FillerPFTaus : public BaseFiller
22 {
23 public:
24 FillerPFTaus(const edm::ParameterSet &cfg, const char *name, bool active=1);
25 ~FillerPFTaus();
26
27 void BookDataBlock(TreeWriter &tws);
28 void FillDataBlock(const edm::Event &e, const edm::EventSetup &es);
29
30 private:
31 //template <typename C> edm::Ptr<typename C::value_type> refToPtrHack(edm::Ref<typename C, edm::refhelper::FindUsingAdvance<C, typename C::value_type> > const &ref) { return edm::Ptr<typename C::value_type>(ref.id(), ref.get(), ref.key()); }
32
33 const mithep::Track *getMitTrack(mitedm::TrackPtr ptr, bool allowmissing) const;
34
35
36 bool hpsActive_; //=true if HPS discriminants are filled
37 std::string edmName_; //edm name of jets collection
38 std::string mitName_; //mit name of jets collection
39 std::string discriminationByLooseElectronRejectionName_; // HPS discriminant
40 std::string discriminationByMediumElectronRejectionName_; // HPS discriminant
41 std::string discriminationByTightElectronRejectionName_; // HPS discriminant
42 std::string discriminationByMVAElectronRejectionName_; // HPS discriminant
43 std::string discriminationByLooseMuonRejectionName_; // HPS discriminant
44 std::string discriminationByMediumMuonRejectionName_; // HPS discriminant
45 std::string discriminationByTightMuonRejectionName_; // HPS discriminant
46 std::string discriminationByDecayModeFindingName_; // HPS discriminant
47 std::string discriminationByVLooseIsolationName_; // HPS discriminant
48 std::string discriminationByLooseIsolationName_; // HPS discriminant
49 std::string discriminationByMediumIsolationName_; // HPS discriminant
50 std::string discriminationByTightIsolationName_; // HPS discriminant
51 std::string discriminationByVLooseCombinedIsolationDBSumPtCorrName_; // HPS discriminant
52 std::string discriminationByLooseCombinedIsolationDBSumPtCorrName_; // HPS discriminant
53 std::string discriminationByMediumCombinedIsolationDBSumPtCorrName_; // HPS discriminant
54 std::string discriminationByTightCombinedIsolationDBSumPtCorrName_; // HPS discriminant
55 std::string discriminationByRawCombinedIsolationDBSumPtCorrName_; // HPS discriminant
56 std::vector<std::string> trackMapNames_; //name of imported TrackMap
57 std::string jetMapName_; //name of imported PFJetMap
58 std::string pfCandMapName_; //name of imported PFCandidateMap
59 std::string tauMapName_; //name of exported PFTau Map
60 bool allowMissingTrackRef_; //allow missing track reference (needed for tau embedding samples)
61 std::vector<const mithep::TrackMap*> trackMaps_; //map wrt Tracks
62 const mithep::PFJetMap *jetMap_; //map wrt pfjets
63 const mithep::PFCandidateMap *pfCandMap_; //map wrt pf candidates
64 mithep::PFTauMap *tauMap_; //exported PFTau map
65 mithep::PFTauArr *taus_; //array of taus
66
67 template <typename C>
68 edm::Ptr<typename C::value_type> refToPtrHack(edm::Ref<C, typename C::value_type, edm::refhelper::FindUsingAdvance<C, typename C::value_type> > const& ref) {
69 typedef typename C::value_type T;
70 return edm::Ptr<T>(ref.id(), ref.get(), ref.key());
71 }
72
73 };
74 }
75 #endif