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:
19 
21  unsigned int outer,
22  LayerCacheType* layerCache,
23  unsigned int nSize = 30000,
24  unsigned int max = 0);
25 
26  // virtual ~HitPairGeneratorFromLayerPairForPhotonConversion() { }
27 
28  void hitPairs(const ConversionRegion& convRegion,
29  const TrackingRegion& reg,
30  OrderedHitPairs& prs,
31  const Layers& layers,
32  const edm::Event& ev,
33  const edm::EventSetup& es);
34 
35  float getLayerRadius(const DetLayer& layer);
36  float getLayerZ(const DetLayer& layer);
37 
38  bool checkBoundaries(const DetLayer& layer, const ConversionRegion& convRegion, float maxSearchR, float maxSearchZ);
39  bool getPhiRange(float& Phimin,
40  float& Phimax,
41  const DetLayer& layer,
42  const ConversionRegion& convRegion,
43  const edm::EventSetup& es);
44  bool getPhiRange(
45  float& Phimin, float& Phimax, const float& layerR, const ConversionRegion& convRegion, const edm::EventSetup& es);
46  bool checkRZCompatibilityWithSeedTrack(const RecHitsSortedInPhi::Hit& hit,
47  const DetLayer& layer,
48  const ConversionRegion& convRegion);
49 
50 private:
51  double getCot(double dz, double dr);
52 
53  LayerCacheType& theLayerCache;
54  const unsigned int theOuterLayer;
55  const unsigned int theInnerLayer;
56  const unsigned int theMaxElement;
57 
58  std::stringstream ss;
59 };
60 
61 #endif
std::pair< double, double > getPhiRange(const std::vector< double > &phis, double phi)
Definition: BuilderUtils.cc:20
bool ev
BaseTrackerRecHit const * Hit
#define dso_hidden
Definition: Visibility.h:12