1 #ifndef L1Trigger_Phase2L1GT_L1GTSingleCollectionCut_h 2 #define L1Trigger_Phase2L1GT_L1GTSingleCollectionCut_h 19 template <
typename T,
typename K>
24 std::vector<T> convertedValues(
values.size());
25 for (std::size_t
i = 0;
i <
values.size();
i++) {
28 return convertedValues;
40 maxPt_(getOptionalParam<int, double>(
42 minEta_(getOptionalParam<int, double>(
44 maxEta_(getOptionalParam<int, double>(
46 minPhi_(getOptionalParam<int, double>(
48 maxPhi_(getOptionalParam<int, double>(
50 minZ0_(getOptionalParam<int, double>(
52 maxZ0_(getOptionalParam<int, double>(
82 "regionsMaxRelIsolationPt",
136 unsigned int minPtMultiplicity = 0;
154 <<
"When a min/max primary vertex cut is set the primary vertex to cut\n" 155 <<
"on has to be specified with with config parameter \'primVertex\'. ";
172 desc.addOptional<
double>(
"minPt");
173 desc.addOptional<
double>(
"maxPt");
174 desc.addOptional<
double>(
"minEta");
175 desc.addOptional<
double>(
"maxEta");
176 desc.addOptional<
double>(
"minPhi");
177 desc.addOptional<
double>(
"maxPhi");
178 desc.addOptional<
double>(
"minZ0");
179 desc.addOptional<
double>(
"maxZ0");
180 desc.addOptional<
double>(
"minScalarSumPt");
181 desc.addOptional<
double>(
"maxScalarSumPt");
182 desc.addOptional<
unsigned int>(
"minQualityScore");
183 desc.addOptional<
unsigned int>(
"maxQualityScore");
184 desc.addOptional<
unsigned int>(
"qualityFlags");
185 desc.add<std::vector<unsigned int>>(
"regions", {});
186 desc.addOptional<
double>(
"minAbsEta");
187 desc.addOptional<
double>(
"maxAbsEta");
188 desc.addOptional<
double>(
"minIsolationPt");
189 desc.addOptional<
double>(
"maxIsolationPt");
190 desc.addOptional<
double>(
"minRelIsolationPt");
191 desc.addOptional<
double>(
"maxRelIsolationPt");
192 desc.add<std::vector<double>>(
"regionsAbsEtaLowerBounds", {});
193 desc.add<std::vector<double>>(
"regionsMinPt", {});
194 desc.add<std::vector<double>>(
"regionsMaxRelIsolationPt", {});
195 desc.add<std::vector<unsigned int>>(
"regionsQualityFlags", {});
196 desc.addOptional<
double>(
"minPrimVertDz");
197 desc.addOptional<
double>(
"maxPrimVertDz");
198 desc.addOptional<
unsigned int>(
"primVertex");
199 desc.add<
unsigned int>(
"minPtMultiplicityN", 0);
200 desc.addOptional<
double>(
"minPtMultiplicityCut");
269 #endif // L1Trigger_Phase2L1GT_L1GTSingleCollectionCut_h const std::optional< int > maxAbsEta_
const std::optional< unsigned int > maxQualityScore_
const unsigned int minPtMultiplicityN_
const std::optional< int > maxRelIsolationPt_
bool checkEtaDependentCuts(const P2GTCandidate &obj) const
const std::vector< int > regionsMaxRelIsolationPt_
const std::optional< int > minPhi_
bool checkObject(const P2GTCandidate &obj) const
const std::optional< unsigned int > primVertex_
const std::optional< int > minPrimVertDz_
const std::vector< unsigned int > regionsQualityFlags_
std::vector< P2GTCandidate > P2GTCandidateCollection
const std::optional< int > maxEta_
const std::optional< int > maxPhi_
static void fillPSetDescription(edm::ParameterSetDescription &desc)
const edm::InputTag & tag() const
const std::vector< int > regionsAbsEtaLowerBounds_
const std::optional< int > maxScalarSumPt_
bool checkPrimaryVertices(const P2GTCandidate &obj, const P2GTCandidateCollection &primVertCol) const
const std::optional< unsigned int > qualityFlags_
L1GTSingleCollectionCut(const edm::ParameterSet &config, const edm::ParameterSet &lutConfig, const L1GTScales &scales)
const std::optional< int > minAbsEta_
std::optional< T > getOptionalParam(const std::string &name, const edm::ParameterSet &config, std::function< T(K)> conv)
unsigned int atIndex(int objeta) const
const std::optional< int > minRelIsolationPt_
const std::optional< int > minEta_
const std::optional< int > maxPt_
const std::optional< int > maxPrimVertDz_
const std::optional< int > minZ0_
const std::optional< int > maxIsolationPt_
bool checkCollection(const P2GTCandidateCollection &col) const
const std::optional< int > minPtMultiplicityCut_
Abs< T >::type abs(const T &t)
const std::optional< unsigned int > minQualityScore_
static constexpr int RELATIVE_ISOLATION_RESOLUTION
const std::vector< int > regionsMinPt_
std::vector< T > getParamVector(const std::string &name, const edm::ParameterSet &config, std::function< T(K)> conv)
const std::optional< int > minIsolationPt_
const std::optional< int > maxZ0_
const std::optional< int > minPt_
const std::optional< int > minScalarSumPt_