#include <CaloExtractorByAssociator.h>
Public Member Functions | |
CaloExtractorByAssociator () | |
constructors More... | |
CaloExtractorByAssociator (const edm::ParameterSet &par, edm::ConsumesCollector &&iC) | |
reco::IsoDeposit | deposit (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const override |
no-op: by design of this extractor the deposits are pulled out all at a time More... | |
std::vector< reco::IsoDeposit > | deposits (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Track &track) const override |
return deposits for 3 calorimeter subdetectors (ecal, hcal, ho) – in this order More... | |
void | fillVetos (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackCollection &tracks) override |
allows to set extra vetoes (in addition to the muon) – no-op at this point More... | |
~CaloExtractorByAssociator () override | |
destructor More... | |
Public Member Functions inherited from reco::isodeposit::IsoDepositExtractor | |
virtual reco::IsoDeposit | deposit (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Candidate &track) const |
virtual reco::IsoDeposit | deposit (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::CandidateBaseRef &track) const |
make single IsoDeposit based on a CandidateBaseRef as input More... | |
virtual reco::IsoDeposit | deposit (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackBaseRef &track) const |
make single IsoDeposit based on trackRef as input More... | |
virtual std::vector< reco::IsoDeposit > | deposits (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::Candidate &track) const |
virtual std::vector< reco::IsoDeposit > | deposits (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::CandidateBaseRef &track) const |
virtual std::vector< reco::IsoDeposit > | deposits (const edm::Event &ev, const edm::EventSetup &evSetup, const reco::TrackBaseRef &track) const |
virtual void | initEvent (const edm::Event &, const edm::EventSetup &) |
perform some constly initialization More... | |
virtual | ~IsoDepositExtractor () |
Destructor. More... | |
Private Member Functions | |
double | noiseEcal (const CaloTower &tower) const |
Determine noise for HCAL and ECAL (take some defaults for the time being) More... | |
double | noiseHcal (const CaloTower &tower) const |
double | noiseHOcal (const CaloTower &tower) const |
double | noiseRecHit (const DetId &detId) const |
Private Attributes | |
TrackDetectorAssociator * | theAssociator |
TrackAssociatorParameters * | theAssociatorParameters |
associator, its' parameters and the propagator More... | |
bool | theCenterConeOnCalIntersection |
std::vector< std::string > | theDepositInstanceLabels |
multiple deposits: labels – expect 3 labels beginning with "e", "h", "ho" More... | |
std::string | theDepositLabel |
Label of deposit – suggest to set to "" (all info is in collection name anyways) More... | |
double | theDR_Max |
max cone size in which towers are considered More... | |
double | theDR_Veto_E |
cone sizes inside which the Et (towers) are not counted More... | |
double | theDR_Veto_H |
double | theDR_Veto_HO |
double | theNoise_EB |
double | theNoise_EE |
double | theNoise_HB |
double | theNoise_HE |
double | theNoise_HO |
double | theNoiseTow_EB |
double | theNoiseTow_EE |
bool | thePrintTimeReport |
flag to turn on/off printing of a time report More... | |
std::string | thePropagatorName |
propagator name to feed into the track associator More... | |
MuonServiceProxy * | theService |
the event setup proxy, it takes care the services update More... | |
double | theThreshold_E |
double | theThreshold_H |
double | theThreshold_HO |
bool | theUseRecHitsFlag |
use towers or rec hits More... | |
std::vector< DetId > | theVetoCollection |
Vector of calo Ids to veto – not used. More... | |
Definition at line 34 of file CaloExtractorByAssociator.h.
|
inline |
CaloExtractorByAssociator::CaloExtractorByAssociator | ( | const edm::ParameterSet & | par, |
edm::ConsumesCollector && | iC | ||
) |
Definition at line 36 of file CaloExtractorByAssociator.cc.
References edm::ParameterSet::getParameter(), TrackAssociatorParameters::loadParameters(), MuonServiceProxy_cff::MuonServiceProxy, theAssociator, theAssociatorParameters, theService, and PDWG_EXOHSCP_cff::TrackAssociatorParameters.
|
override |
destructor
Definition at line 68 of file CaloExtractorByAssociator.cc.
References theAssociator, theAssociatorParameters, and theService.
|
overridevirtual |
no-op: by design of this extractor the deposits are pulled out all at a time
Implements reco::isodeposit::IsoDepositExtractor.
Definition at line 85 of file CaloExtractorByAssociator.cc.
|
overridevirtual |
return deposits for 3 calorimeter subdetectors (ecal, hcal, ho) – in this order
Make separate deposits: for ECAL, HCAL, HO.
check configuration consistency could've been made at construction stage (fix later?)
this should be (eventually) set to the eta-phi of the crossing point of a straight line tangent to a muon at IP and the calorimeter
each deposit type veto is at the point of intersect with that detector
do things based on rec-hits here too much copy-pasting now (refactor later?)
first check if the hit is inside the veto cone by dR-alone
and now pitch those in the crossed list
first check if the hit is inside the veto cone by dR-alone
and now pitch those in the crossed list
first check if the hit is inside the veto cone by dR-alone
and now pitch those in the crossed list
use calo towers
first check if the tower is inside the veto cone by dR-alone
first check if the tower is inside the veto cone by dR-alone
first check if the tower is inside the veto cone by dR-alone
and now pitch those in the crossed list
add the Et of the tower to deposits if it's not a vetoed; put into muonEnergy otherwise
Reimplemented from reco::isodeposit::IsoDepositExtractor.
Definition at line 99 of file CaloExtractorByAssociator.cc.
References reco::IsoDeposit::addCandEnergy(), reco::IsoDeposit::addDeposit(), TrackDetectorAssociator::associate(), Calorimetry_cff::bField, compare(), TrackDetMatchInfo::crossedEcalIds, TrackDetMatchInfo::crossedHcalIds, TrackDetMatchInfo::crossedHOIds, TrackDetMatchInfo::crossedTowerIds, reco::deltaR(), CaloRecHit::detid(), EcalRecHit::detid(), reco::IsoDeposit::Veto::dR, TrackDetMatchInfo::ecalRecHits, CaloTower::emEnergy(), CaloTower::emEt(), HCALHighEnergyHPDFilter_cfi::energy, CaloRecHit::energy(), EcalRecHit::energy(), EgHLTOffHistBins_cfi::et, PV3DBase< T, PVType, FrameType >::eta(), reco::LeafCandidate::eta(), edm::EventSetup::get(), get, CaloGeometry::getPosition(), CaloTower::hadEnergy(), CaloTower::hadEt(), TrackDetMatchInfo::hcalRecHits, TrackDetMatchInfo::hoRecHits, CaloTower::id(), reco::TransientTrack::initialFreeState(), LogDebug, SiStripPI::max, noiseEcal(), noiseHcal(), noiseHOcal(), noiseRecHit(), CaloTower::outerEnergy(), CaloTower::outerEt(), PV3DBase< T, PVType, FrameType >::phi(), reco::LeafCandidate::phi(), DetId::rawId(), TrackDetectorAssociator::setPropagator(), reco::IsoDeposit::setVeto(), AlCaHLTBitMon_QueryRunRegistry::string, theAssociator, theAssociatorParameters, theCenterConeOnCalIntersection, theDepositInstanceLabels, theDR_Max, theDR_Veto_E, theDR_Veto_H, theDR_Veto_HO, thePropagatorName, theService, theThreshold_E, theThreshold_H, theThreshold_HO, theUseRecHitsFlag, TrackDetMatchInfo::towers, TrackDetMatchInfo::trkGlobPosAtEcal, TrackDetMatchInfo::trkGlobPosAtHcal, TrackDetMatchInfo::trkGlobPosAtHO, reco::IsoDeposit::veto(), and reco::IsoDeposit::Veto::vetoDir.
|
overridevirtual |
allows to set extra vetoes (in addition to the muon) – no-op at this point
Implements reco::isodeposit::IsoDepositExtractor.
Definition at line 77 of file CaloExtractorByAssociator.cc.
|
private |
Determine noise for HCAL and ECAL (take some defaults for the time being)
Definition at line 384 of file CaloExtractorByAssociator.cc.
References PVValHelper::eta, hgcalDigitizer_cfi::noise, theNoiseTow_EB, theNoiseTow_EE, and hgcalTowerProducer_cfi::tower.
Referenced by deposits().
|
private |
Definition at line 392 of file CaloExtractorByAssociator.cc.
References hgcalDigitizer_cfi::noise, theNoise_HB, theNoise_HE, and hgcalTowerProducer_cfi::tower.
Referenced by deposits().
|
private |
Definition at line 397 of file CaloExtractorByAssociator.cc.
References hgcalDigitizer_cfi::noise, and theNoise_HO.
Referenced by deposits().
|
private |
Definition at line 402 of file CaloExtractorByAssociator.cc.
References DetId::det(), DetId::Ecal, EcalBarrel, EcalEndcap, DetId::Hcal, HcalBarrel, HcalEndcap, HcalOuter, hgcalDigitizer_cfi::noise, DetId::subdetId(), theNoise_EB, theNoise_EE, theNoise_HB, theNoise_HE, and theNoise_HO.
Referenced by deposits().
|
private |
Definition at line 101 of file CaloExtractorByAssociator.h.
Referenced by CaloExtractorByAssociator(), deposits(), and ~CaloExtractorByAssociator().
|
private |
associator, its' parameters and the propagator
Definition at line 100 of file CaloExtractorByAssociator.h.
Referenced by CaloExtractorByAssociator(), deposits(), and ~CaloExtractorByAssociator().
|
private |
centers the cone on the veto direction – makes more sense for very displaced tracks like in cosmics
Definition at line 79 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
multiple deposits: labels – expect 3 labels beginning with "e", "h", "ho"
Definition at line 62 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
Label of deposit – suggest to set to "" (all info is in collection name anyways)
Definition at line 59 of file CaloExtractorByAssociator.h.
|
private |
max cone size in which towers are considered
Definition at line 81 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
cone sizes inside which the Et (towers) are not counted
Definition at line 74 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
Definition at line 75 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
Definition at line 76 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
the noise "sigmas" for a hit or tower to be considered consider if Energy > 3.*sigma
Definition at line 85 of file CaloExtractorByAssociator.h.
Referenced by noiseRecHit().
|
private |
Definition at line 86 of file CaloExtractorByAssociator.h.
Referenced by noiseRecHit().
|
private |
Definition at line 87 of file CaloExtractorByAssociator.h.
Referenced by noiseHcal(), and noiseRecHit().
|
private |
Definition at line 88 of file CaloExtractorByAssociator.h.
Referenced by noiseHcal(), and noiseRecHit().
|
private |
Definition at line 89 of file CaloExtractorByAssociator.h.
Referenced by noiseHOcal(), and noiseRecHit().
|
private |
Definition at line 90 of file CaloExtractorByAssociator.h.
Referenced by noiseEcal().
|
private |
Definition at line 91 of file CaloExtractorByAssociator.h.
Referenced by noiseEcal().
|
private |
flag to turn on/off printing of a time report
Definition at line 104 of file CaloExtractorByAssociator.h.
|
private |
propagator name to feed into the track associator
Definition at line 65 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
the event setup proxy, it takes care the services update
Definition at line 97 of file CaloExtractorByAssociator.h.
Referenced by CaloExtractorByAssociator(), deposits(), and ~CaloExtractorByAssociator().
|
private |
Cone cuts and thresholds min values of Et to be included in deposits
Definition at line 69 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
Definition at line 70 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
Definition at line 71 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
use towers or rec hits
Definition at line 56 of file CaloExtractorByAssociator.h.
Referenced by deposits().
|
private |
Vector of calo Ids to veto – not used.
Definition at line 94 of file CaloExtractorByAssociator.h.