CMS 3D CMS Logo

PhotonConversionTrajectorySeedProducerFromSingleLegAlgo.h
Go to the documentation of this file.
1 #ifndef PhotonConversionFinderFromTracks_H
2 #define PhotonConversionFinderFromTracks_H
3 
9 
12 
13 #include "IdealHelixParameters.h"
14 
15 #include "PrintRecoObjects.h"
16 
21 
23 
27 
28 #include <sstream>
29 
30 inline bool lt_(std::pair<double,short> a, std::pair<double,short> b) { return a.first<b.first; }
31 
33 
34 
35  public:
36 
40 
42 
43  IdealHelixParameters* getIdealHelixParameters(){return &_IdealHelixParameters;}
44 
45  private:
46 
47  void loopOnTracks();
48  bool inspectTrack(const reco::Track* track, const TrackingRegion & region, math::XYZPoint& primaryVertexPoint);
49 
50  bool rejectTrack(const reco::Track& track);
51 
52  bool selectPriVtxCompatibleWithTrack(const reco::Track& tk, std::vector<reco::Vertex>& selectedPriVtxCompatibleWithTrack);
53  void loopOnPriVtx(const reco::Track& tk, const std::vector<reco::Vertex>& selectedPriVtxCompatibleWithTrack);
54 
55  //Data Members
56 
57  TrajectorySeedCollection * seedCollection=nullptr;
58 
59  std::unique_ptr<CombinedHitPairGeneratorForPhotonConversion> theHitsGenerator;
60  std::unique_ptr<SeedForPhotonConversion1Leg> theSeedCreator;
61  std::unique_ptr<GlobalTrackingRegionProducerFromBeamSpot> theRegionProducer;
62 
63 
66 
67  double _vtxMinDoF, _maxDZSigmas;
68  size_t _maxNumSelVtx;
71  edm::InputTag _primaryVtxInputTag, _beamSpotInputTag;
75 
76  typedef std::vector<std::unique_ptr<TrackingRegion> > Regions;
77  typedef Regions::const_iterator IR;
78  Regions regions;
79 
81 
84 
88 
90 
93 
95 
96  std::stringstream ss;
97 
98 };
99 #endif
#define dso_hidden
def setup(process, global_tag, zero_tesla=False)
Definition: GeneralSetup.py:2
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
std::vector< TrajectorySeed > TrajectorySeedCollection
XYZPointD XYZPoint
point in space with cartesian internal representation
Definition: Point3D.h:12
double b
Definition: hdecay.h:120
std::unique_ptr< CombinedHitPairGeneratorForPhotonConversion > theHitsGenerator
double a
Definition: hdecay.h:121
bool lt_(std::pair< double, short > a, std::pair< double, short > b)
Definition: event.py:1