CMS 3D CMS Logo

HitPairGeneratorFromLayerPairForPhotonConversion.h
Go to the documentation of this file.
1 #ifndef HitPairGeneratorFromLayerPairForPhotonConversion_h
2 #define HitPairGeneratorFromLayerPairForPhotonConversion_h
3 
7 
8 #include "ConversionRegion.h"
9 
10 class DetLayer;
11 class TrackingRegion;
12 
13 class dso_hidden HitPairGeneratorFromLayerPairForPhotonConversion { // : public HitPairGenerator {
14 
15 public:
16 
20 
22  unsigned int outer,
23  LayerCacheType* layerCache,
24  unsigned int nSize=30000,
25  unsigned int max=0);
26 
27 // virtual ~HitPairGeneratorFromLayerPairForPhotonConversion() { }
28 
29  void hitPairs( const ConversionRegion& convRegion, const TrackingRegion& reg, OrderedHitPairs & prs,
30  const Layers& layers,
31  const edm::Event & ev, const edm::EventSetup& es);
32 
33  float getLayerRadius(const DetLayer& layer);
34  float getLayerZ(const DetLayer& layer);
35 
36  bool checkBoundaries(const DetLayer& layer,const ConversionRegion& convRegion,float maxSearchR, float maxSearchZ);
37  bool getPhiRange(float& Phimin, float& Phimax,const DetLayer& layer, const ConversionRegion &convRegion, const edm::EventSetup& es);
38  bool getPhiRange(float& Phimin, float& Phimax, const float& layerR, const ConversionRegion &convRegion, const edm::EventSetup& es);
39  bool checkRZCompatibilityWithSeedTrack(const RecHitsSortedInPhi::Hit & hit, const DetLayer& layer, const ConversionRegion& convRegion);
40 
41 
42 private:
43 
44  double getCot(double dz, double dr);
45 
46  LayerCacheType & theLayerCache;
47  const unsigned int theOuterLayer;
48  const unsigned int theInnerLayer;
49  const unsigned int theMaxElement;
50 
51  std::stringstream ss;
52 
53 };
54 
55 #endif
#define dso_hidden
std::vector< LayerSetAndLayers > layers(const SeedingLayerSetsHits &sets)
Definition: LayerTriplets.cc:4
std::pair< double, double > getPhiRange(const std::vector< double > &phis, double phi)
Definition: BuilderUtils.cc:21
bool ev
BaseTrackerRecHit const * Hit