CMS 3D CMS Logo

ConvBremPFTrackFinder.h
Go to the documentation of this file.
1 #ifndef RecoParticleFlow_PFTracking_ConvBremPFTrackFinder_H
2 #define RecoParticleFlow_PFTracking_ConvBremPFTrackFinder_H
3 // user include files
5 
25 #include "TMVA/Reader.h"
26 
28 #include <memory>
29 
31 
33 
35 public:
37  double mvaBremConvCutBarrelLowPt,
38  double mvaBremConvCutBarrelHighPt,
39  double mvaBremConvCutEndcapsLowPt,
40  double mvaBremConvCutEndcapsHighPt);
42 
46  const edm::Handle<reco::PFConversionCollection>& pfConversions,
49  bool useNuclear,
50  bool useConversions,
51  bool useV0,
52  const reco::PFClusterCollection& theEClus,
53  const reco::GsfPFRecTrack& gsfpfrectk) {
54  found_ = false;
55  runConvBremFinder(thePfRecTrackCol,
57  pfNuclears,
58  pfConversions,
59  pfV0,
60  cache,
61  useNuclear,
63  useV0,
64  theEClus,
65  gsfpfrectk);
66  return found_;
67  };
68 
69  const std::vector<reco::PFRecTrackRef>& getConvBremPFRecTracks() { return pfRecTrRef_vec_; };
70 
71 private:
75  const edm::Handle<reco::PFConversionCollection>& pfConversions,
78  bool useNuclear,
79  bool useConversions,
80  bool useV0,
81  const reco::PFClusterCollection& theEClus,
82  const reco::GsfPFRecTrack& gsfpfrectk);
83 
84  bool found_;
88 
89  std::vector<reco::PFRecTrackRef> pfRecTrRef_vec_;
91  //int nHITS1;
92  float nHITS1;
93 };
94 #endif
void runConvBremFinder(const edm::Handle< reco::PFRecTrackCollection > &thePfRecTrackCol, const edm::Handle< reco::VertexCollection > &primaryVertex, const edm::Handle< reco::PFDisplacedTrackerVertexCollection > &pfNuclears, const edm::Handle< reco::PFConversionCollection > &pfConversions, const edm::Handle< reco::PFV0Collection > &pfV0, const convbremhelpers::HeavyObjectCache *cache, bool useNuclear, bool useConversions, bool useV0, const reco::PFClusterCollection &theEClus, const reco::GsfPFRecTrack &gsfpfrectk)
const std::vector< reco::PFRecTrackRef > & getConvBremPFRecTracks()
bool foundConvBremPFRecTrack(const edm::Handle< reco::PFRecTrackCollection > &thePfRecTrackCol, const edm::Handle< reco::VertexCollection > &primaryVertex, const edm::Handle< reco::PFDisplacedTrackerVertexCollection > &pfNuclears, const edm::Handle< reco::PFConversionCollection > &pfConversions, const edm::Handle< reco::PFV0Collection > &pfV0, const convbremhelpers::HeavyObjectCache *cache, bool useNuclear, bool useConversions, bool useV0, const reco::PFClusterCollection &theEClus, const reco::GsfPFRecTrack &gsfpfrectk)
TransientTrackBuilder builder_
std::vector< reco::PFRecTrackRef > pfRecTrRef_vec_
ConvBremPFTrackFinder(const TransientTrackBuilder &builder, double mvaBremConvCutBarrelLowPt, double mvaBremConvCutBarrelHighPt, double mvaBremConvCutEndcapsLowPt, double mvaBremConvCutEndcapsHighPt)
def cache(function)
Definition: utilities.py:3
std::vector< PFCluster > PFClusterCollection
collection of PFCluster objects
Definition: PFClusterFwd.h:9
primaryVertex
hltOfflineBeamSpot for HLTMON