1 #ifndef RECOPIXELVERTEXING_PIXELTRIPLETS_CAHITQUADRUPLETGENERATOR_H 2 #define RECOPIXELVERTEXING_PIXELTRIPLETS_CAHITQUADRUPLETGENERATOR_H 51 std::vector<OrderedHitSeeds>&
result,
64 value1_(v1), value2_(v2), curvature1_(c1), curvature2_(c2) {
68 if (value1_ == value2_)
71 if (curvature1_ < curvature)
73 if (curvature2_ < curvature && curvature <= curvature1_)
74 return value2_ + (curvature - curvature2_) / (curvature1_ - curvature2_) * (value1_ - value2_);
94 value1_(pset.getParameter<double>(
"value1")),
95 value2_(pset.getParameter<double>(
"value2")),
96 pt1_(pset.getParameter<double>(
"pt1")),
97 pt2_(pset.getParameter<double>(
"pt2")),
98 enabled_(pset.getParameter<
bool>(
"enabled")) {
99 if (enabled_ && pt1_ >= pt2_)
100 throw cms::Exception(
"Configuration") <<
"PixelQuadrupletGenerator::QuantityDependsPt: pt1 (" << pt1_ <<
") needs to be smaller than pt2 (" << pt2_ <<
")";
102 throw cms::Exception(
"Configuration") <<
"PixelQuadrupletGenerator::QuantityDependsPt: pt1 needs to be > 0; is " << pt1_;
104 throw cms::Exception(
"Configuration") <<
"PixelQuadrupletGenerator::QuantityDependsPt: pt2 needs to be > 0; is " << pt2_;
131 const float caThetaCut = 0.00125f;
132 const float caPhiCut = 0.1f;
133 const float caHardPtCut = 0.f;
static const char * fillDescriptionsLabel()
float value(float curvature) const
std::vector< LayerSetAndLayers > layers(const SeedingLayerSetsHits &sets)
const bool useBendingCorrection
LayerCacheType theLayerCache
std::unique_ptr< SeedComparitor > theComparitor
T curvature(T InversePt, const edm::EventSetup &iSetup)
LayerHitMapCache LayerCacheType
const float extraHitRPhitolerance
const bool fitFastCircleChi2Cut
CAHitQuadrupletGenerator(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
const QuantityDependsPt maxChi2
QuantityDependsPtEval(float v1, float v2, float c1, float c2)
OrderedHitSeeds ResultType
QuantityDependsPtEval evaluator(const edm::EventSetup &es) const
QuantityDependsPt(const edm::ParameterSet &pset)