1 #ifndef RECOPIXELVERTEXING_PIXELTRIPLETS_CAHITTRIPLETGENERATOR_H 2 #define RECOPIXELVERTEXING_PIXELTRIPLETS_CAHITTRIPLETGENERATOR_H 50 std::vector<OrderedHitSeeds>&
result,
63 value1_(v1), value2_(v2), curvature1_(c1), curvature2_(c2) {
67 if (value1_ == value2_)
70 if (curvature1_ < curvature)
72 if (curvature2_ < curvature && curvature <= curvature1_)
73 return value2_ + (curvature - curvature2_) / (curvature1_ - curvature2_) * (value1_ - value2_);
93 value1_(pset.getParameter<double>(
"value1")),
94 value2_(pset.getParameter<double>(
"value2")),
95 pt1_(pset.getParameter<double>(
"pt1")),
96 pt2_(pset.getParameter<double>(
"pt2")),
97 enabled_(pset.getParameter<bool>(
"enabled")) {
98 if (enabled_ && pt1_ >= pt2_)
99 throw cms::Exception(
"Configuration") <<
"CAHitTripletGenerator::QuantityDependsPt: pt1 (" << pt1_ <<
") needs to be smaller than pt2 (" << pt2_ <<
")";
101 throw cms::Exception(
"Configuration") <<
"CAHitTripletGenerator::QuantityDependsPt: pt1 needs to be > 0; is " << pt1_;
103 throw cms::Exception(
"Configuration") <<
"CAHitTripletGenerator::QuantityDependsPt: pt2 needs to be > 0; is " << pt2_;
128 const float caThetaCut = 0.00125f;
129 const float caPhiCut = 1.f;
130 const float caHardPtCut = 0.f;
QuantityDependsPt(const edm::ParameterSet &pset)
const QuantityDependsPt maxChi2
std::vector< LayerSetAndLayers > layers(const SeedingLayerSetsHits &sets)
static const char * fillDescriptionsLabel()
const bool useBendingCorrection
CAHitTripletGenerator(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
OrderedHitSeeds ResultType
QuantityDependsPtEval evaluator(const edm::EventSetup &es) const
T curvature(T InversePt, const edm::EventSetup &iSetup)
LayerHitMapCache LayerCacheType
float value(float curvature) const
QuantityDependsPtEval(float v1, float v2, float c1, float c2)
const float extraHitRPhitolerance
LayerCacheType theLayerCache
std::unique_ptr< SeedComparitor > theComparitor