|
|
Go to the documentation of this file. 1 #ifndef RecoParticleFlow_PFClusterProducer_PFEcalRecHitQTests_h
2 #define RecoParticleFlow_PFClusterProducer_PFEcalRecHitQTests_h
96 std::vector<std::string>
flags = iConfig.
getParameter<std::vector<std::string> >(
"flags");
98 if (
flag ==
"Standard") {
101 }
else if (
flag ==
"HFInTime") {
104 }
else if (
flag ==
"HFDigi") {
107 }
else if (
flag ==
"HFLong") {
110 }
else if (
flag ==
"HFShort") {
164 unsigned theStatusValue = theStatus->
getValue();
194 std::vector<edm::ParameterSet> psets = iConfig.
getParameter<std::vector<edm::ParameterSet> >(
"cuts");
195 for (
auto&
pset : psets) {
196 depths_.push_back(
pset.getParameter<
int>(
"depth"));
229 for (
unsigned int i = 0;
i <
depths_.size(); ++
i) {
250 std::vector<edm::ParameterSet> psets = iConfig.
getParameter<std::vector<edm::ParameterSet> >(
"cuts");
251 for (
auto&
pset : psets) {
252 depths_ =
pset.getParameter<std::vector<int> >(
"depth");
256 throw cms::Exception(
"InvalidPFRecHitThreshold") <<
"PFRecHitThreshold mismatch with the numbers of depths";
309 threshold0_(iConfig.getParameter<double>(
"threshold_ring0")),
310 threshold12_(iConfig.getParameter<double>(
"threshold_ring12")) {}
352 thresholds_(iConfig.getParameter<
std::vector<double> >(
"thresholds")),
365 if (endcapGeometry) {
531 if (
abs(detId.ieta()) == 29)
541 if (detId.ietaAbs() == 29)
559 threshold_(iConfig.getParameter<double>(
"thresholdInMIPs")),
560 mip_(iConfig.getParameter<double>(
"mipValueInkeV")),
566 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
570 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
575 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
579 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
584 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
600 const double hitValueInMIPs = 1e6 *
hit.energy() /
mip_;
615 threshold_(iConfig.getParameter<double>(
"thresholdInMIPs")),
616 mip_(iConfig.getParameter<double>(
"mipValueInkeV")),
626 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
630 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
635 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
639 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
644 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestThresholdInMIPs only works for HGCAL!";
664 const double hitValueInMIPs = 1e6 *
hit.energy() / (
mult *
mip_);
679 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestHGCalThresholdSNR only works for HGCAL!";
683 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestHGCalThresholdSNR only works for HGCAL!";
688 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestHGCalThresholdSNR only works for HGCAL!";
692 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestHGCalThresholdSNR only works for HGCAL!";
697 throw cms::Exception(
"WrongDetector") <<
"PFRecHitQTestHGCalThresholdSNR only works for HGCAL!";
T const * product() const
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
const HGCalDDDConstants * ddd_
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
PFRecHitQTestECALMultiThreshold(const edm::ParameterSet &iConfig)
bool pass(const reco::PFRecHit &hit)
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
const HGCalDDDConstants & dddConstants() const
HcalDetId idFront(const HcalDetId &id) const
edm::ESHandle< EcalPFSeedingThresholds > ths_
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
constexpr float energy() const
PFRecHitQTestHCALChannel(const edm::ParameterSet &iConfig)
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
PFRecHitQTestThreshold(const edm::ParameterSet &iConfig)
const double threshold12_
PFRecHitQTestHCALChannel()
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool pass(const reco::PFRecHit &hit, const float mult)
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
std::vector< double > cleanThresholds_
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
PFRecHitQTestHOThreshold()
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool pass(const reco::PFRecHit &hit)
PFRecHitQTestDBThreshold()
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool applySelectionsToAllCrystals_
const HcalTopology * theHcalTopology_
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
PFRecHitQTestDBThreshold(const edm::ParameterSet &iConfig)
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
PFRecHitQTestHOThreshold(const edm::ParameterSet &iConfig)
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
PFRecHitQTestECAL(const edm::ParameterSet &iConfig)
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
constexpr int depth() const
get the tower depth
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
const std::string geometryInstance_
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
PFRecHitQTestECALMultiThreshold()
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
constexpr const DetId & detid() const
PFRecHitQTestHCALThresholdVsDepth()
bool getMergePositionFlag() const
const bool recHitEnergy_keV_
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
const Item * getValues(DetId fId, bool throwOnFail=true) const
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool topologicalCleaning_
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
std::vector< int > depths_
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
bool skipTTRecoveredHits_
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
const bool topologicalCleaning_
bool pass(const reco::PFRecHit &hit)
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
std::vector< int > depths_
const double recHitEnergyMultiplier_
PFRecHitQTestHCALCalib29(const edm::ParameterSet &iConfig)
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
PFRecHitQTestHGCalThresholdSNR()
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
PFRecHitQTestThresholdInMIPs(const edm::ParameterSet &iConfig)
bool checkFlag(int flag) const
check if the flag is true
PFRecHitQTestThresholdInMIPs()
bool applySelectionsToAllCrystals_
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
const std::vector< double > thresholds_
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
const edm::EventSetup * eventSetup_
std::vector< double > maxTimes_
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
const HGCalTopology & topology() const
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
constexpr float time() const
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
int getSeverityLevel(const DetId &myid, const uint32_t &myflag, const uint32_t &mystatus) const
uint32_t getValue() const
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
PFRecHitQTestHCALCalib29()
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
PFRecHitQTestThresholdInThicknessNormalizedMIPs()
bool applySelectionsToAllCrystals_
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
PFRecHitQTestHCALTimeVsDepth()
constexpr HcalSubdetector subdet() const
get the subdetector
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
bool test(unsigned aDETID, double energy, double time, bool &clean)
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
std::vector< int > thresholds_
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
std::vector< double > thresholds_
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(unsigned aDETID, double energy, double time, bool &clean)
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(unsigned aDETID, double energy, int flags, bool &clean)
PFRecHitQTestES(const edm::ParameterSet &iConfig)
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
T getParameter(std::string const &) const
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
PFRecHitQTestHCALThresholdVsDepth(const edm::ParameterSet &iConfig)
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
const double thresholdSNR_
const bool recHitEnergy_keV_
const double thresholdCleaning_
bool pass(const reco::PFRecHit &hit)
std::vector< double > minTimes_
std::vector< int > flags_
PFRecHitQTestThresholdInThicknessNormalizedMIPs(const edm::ParameterSet &iConfig)
PFRecHitQTestDBSeedingThreshold(const edm::ParameterSet &iConfig)
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
static void clean(char *s)
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
std::vector< double > thresholds_
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
const HcalChannelQuality * theHcalChStatus_
PFRecHitQTestHGCalThresholdSNR(const edm::ParameterSet &iConfig)
bool test(reco::PFRecHit &hit, const EcalRecHit &rh, bool &clean, bool fullReadOut) override
PFRecHitQTestHCALTimeVsDepth(const edm::ParameterSet &iConfig)
Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClus...
int waferTypeL(int wafer) const
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
float signalOverSigmaNoise() const
Abs< T >::type abs(const T &t)
bool test(reco::PFRecHit &hit, const HFRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HBHERecHit &rh, bool &clean) override
const double recHitEnergyMultiplier_
double thresholdCleaning_
void beginEvent(const edm::Event &event, const edm::EventSetup &iSetup) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
std::vector< int > depths_
bool pass(const reco::PFRecHit &hit)
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
constexpr uint32_t flags() const
const HcalSeverityLevelComputer * hcalSevLvlComputer_
bool test(reco::PFRecHit &hit, const HGCRecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const HORecHit &rh, bool &clean) override
bool test(reco::PFRecHit &hit, const CaloTower &rh, bool &clean) override