#include <OniaPhotonConversionProducer.h>
Public Member Functions | |
OniaPhotonConversionProducer (const edm::ParameterSet &ps) | |
Public Member Functions inherited from edm::EDProducer | |
EDProducer () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducer () |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
EDConsumerBase () | |
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
virtual | ~EDConsumerBase () |
Private Member Functions | |
bool | CheckPi0 (const reco::Conversion &, const reco::PFCandidateCollection &, bool &) |
bool | checkTkVtxCompatibility (const reco::Conversion &, const reco::VertexCollection &) |
reco::Candidate::LorentzVector | convertVector (const math::XYZTLorentzVectorF &) |
virtual void | endJob () |
bool | foundCompatibleInnerHits (const reco::HitPattern &hitPatA, const reco::HitPattern &hitPatB) |
bool | HighpuritySubset (const reco::Conversion &, const reco::VertexCollection &) |
pat::CompositeCandidate * | makePhotonCandidate (const reco::Conversion &) |
int | PackFlags (const reco::Conversion &, bool, bool, bool, bool, bool) |
virtual void | produce (edm::Event &event, const edm::EventSetup &esetup) |
void | removeDuplicates (reco::ConversionCollection &, std::vector< int > &) |
const reco::PFCandidateCollection | selectPFPhotons (const reco::PFCandidateCollection &) |
Private Attributes | |
double | _minDistanceOfApproachMaxCut |
double | _minDistanceOfApproachMinCut |
double | _trackchi2Cut |
double | _vertexChi2ProbCut |
int | algo_fail |
int | CInnerHits |
int | convAlgo_ |
edm::EDGetTokenT < reco::ConversionCollection > | convCollectionToken_ |
std::vector< int > | convQuality_ |
std::string | convSelectionCuts_ |
int | duplicates |
int | final_conversion |
int | flag_fail |
int | highpurity_count |
edm::EDGetTokenT < reco::PFCandidateCollection > | pfCandidateCollectionToken_ |
std::vector< double > | pi0LargeWindow_ |
bool | pi0OnlineSwitch_ |
std::vector< double > | pi0SmallWindow_ |
int | pizero_fail |
int | selection_fail |
uint32_t | sigmaTkVtxComp_ |
int | store_conversion |
edm::EDGetTokenT < reco::VertexCollection > | thePVsToken_ |
uint32_t | TkMinNumOfDOF_ |
int | TkVtxC |
int | total_conversions |
bool | wantCompatibleInnerHits_ |
bool | wantHighpurity_ |
bool | wantTkVtxCompatibility_ |
Additional Inherited Members | |
Public Types inherited from edm::EDProducer | |
typedef EDProducer | ModuleType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::EDProducer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Select photon conversions and produce a conversion candidate collection
Definition at line 36 of file OniaPhotonConversionProducer.h.
|
explicit |
Definition at line 55 of file OniaPhotonConversionProducer.cc.
References _minDistanceOfApproachMaxCut, _minDistanceOfApproachMinCut, _trackchi2Cut, _vertexChi2ProbCut, ecalcalib_dqm_sourceclient-live_cfg::algo, algo_fail, CInnerHits, convAlgo_, convCollectionToken_, convQuality_, convSelectionCuts_, duplicates, final_conversion, flag_fail, edm::ParameterSet::getParameter(), highpurity_count, pfCandidateCollectionToken_, pi0LargeWindow_, pi0OnlineSwitch_, pi0SmallWindow_, pizero_fail, selection_fail, sigmaTkVtxComp_, store_conversion, AlCaHLTBitMon_QueryRunRegistry::string, thePVsToken_, TkMinNumOfDOF_, TkVtxC, total_conversions, wantCompatibleInnerHits_, wantHighpurity_, and wantTkVtxCompatibility_.
|
private |
Definition at line 356 of file OniaPhotonConversionProducer.cc.
References python.tagInventory::inv, pi0LargeWindow_, pi0SmallWindow_, and reco::Conversion::refittedPair4Momentum().
Referenced by produce().
|
private |
Definition at line 261 of file OniaPhotonConversionProducer.cc.
References begin, prof2calltree::count, reco::Vertex::covariance(), reco::TrackBase::dz(), reco::TrackBase::dzError(), end, customizeTrackingMonitorSeedNumber::idx, lt_(), reco::Vertex::position(), edm::second(), sigmaTkVtxComp_, findQualityFiles::size, mathSSE::sqrt(), and reco::Conversion::tracks().
Referenced by produce().
|
private |
Definition at line 382 of file OniaPhotonConversionProducer.cc.
Referenced by makePhotonCandidate().
|
privatevirtual |
Reimplemented from edm::EDProducer.
Definition at line 387 of file OniaPhotonConversionProducer.cc.
References algo_fail, CInnerHits, gather_cfg::cout, duplicates, final_conversion, flag_fail, highpurity_count, pizero_fail, selection_fail, store_conversion, TkVtxC, and total_conversions.
|
private |
Definition at line 286 of file OniaPhotonConversionProducer.cc.
References prof2calltree::count, reco::HitPattern::getHitPattern(), reco::HitPattern::getLayer(), reco::HitPattern::getSubStructure(), reco::HitPattern::getTrackerMonoStereo(), i, reco::HitPattern::numberOfHits(), reco::HitPattern::trackerHitFilter(), and reco::HitPattern::validHitFilter().
Referenced by produce().
|
private |
Definition at line 306 of file OniaPhotonConversionProducer.cc.
References _minDistanceOfApproachMaxCut, _minDistanceOfApproachMinCut, _trackchi2Cut, _vertexChi2ProbCut, reco::TrackBase::charge(), reco::Vertex::chi2(), ChiSquaredProbability(), reco::Conversion::conversionVertex(), reco::Conversion::distOfMinimumApproach(), reco::TrackBase::dxy(), reco::TrackBase::dxyError(), i, reco::Vertex::ndof(), reco::TrackBase::ndof(), reco::TrackBase::normalizedChi2(), reco::Vertex::position(), TkMinNumOfDOF_, reco::Conversion::tracks(), and reco::Conversion::zOfPrimaryVertexFromTracks().
Referenced by produce().
|
private |
Definition at line 334 of file OniaPhotonConversionProducer.cc.
References pat::PATObject< ObjectType >::addUserData(), reco::Conversion::conversionVertex(), convertVector(), reco::Vertex::position(), reco::Conversion::refittedPair4Momentum(), reco::LeafCandidate::setP4(), reco::LeafCandidate::setVertex(), and reco::Conversion::tracks().
Referenced by produce().
|
private |
Definition at line 208 of file OniaPhotonConversionProducer.cc.
References reco::Conversion::algo(), flags, lumiQueryAPI::q, and reco::Conversion::quality().
Referenced by produce().
|
privatevirtual |
Implements edm::EDProducer.
Definition at line 100 of file OniaPhotonConversionProducer.cc.
References pat::PATObject< ObjectType >::addUserInt(), algo_fail, CheckPi0(), checkTkVtxCompatibility(), CInnerHits, conv, convAlgo_, convCollectionToken_, convQuality_, convSelectionCuts_, final_conversion, flag_fail, flags, foundCompatibleInnerHits(), highpurity_count, HighpuritySubset(), i, makePhotonCandidate(), PackFlags(), pfCandidateCollectionToken_, pi0OnlineSwitch_, pizero_fail, edm::Handle< T >::product(), lumiQueryAPI::q, removeDuplicates(), selection_fail, selectPFPhotons(), store_conversion, thePVsToken_, TkVtxC, total_conversions, wantCompatibleInnerHits_, wantHighpurity_, and wantTkVtxCompatibility_.
|
private |
Put in out collection only those conversion candidates that are not sharing tracks. If sharing, keep the one with the best chi2.
Definition at line 241 of file OniaPhotonConversionProducer.cc.
References ConversionEqualByTrack(), ConversionLessByChi2(), duplicates, and python.multivaluedict::sort().
Referenced by produce().
|
private |
Definition at line 348 of file OniaPhotonConversionProducer.cc.
References reco::PFCandidate::gamma.
Referenced by produce().
|
private |
Definition at line 67 of file OniaPhotonConversionProducer.h.
Referenced by HighpuritySubset(), and OniaPhotonConversionProducer().
|
private |
Definition at line 66 of file OniaPhotonConversionProducer.h.
Referenced by HighpuritySubset(), and OniaPhotonConversionProducer().
|
private |
Definition at line 65 of file OniaPhotonConversionProducer.h.
Referenced by HighpuritySubset(), and OniaPhotonConversionProducer().
|
private |
Definition at line 64 of file OniaPhotonConversionProducer.h.
Referenced by HighpuritySubset(), and OniaPhotonConversionProducer().
|
private |
Definition at line 78 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 83 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 73 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 55 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 74 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 88 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 81 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), removeDuplicates(), edmIntegrityCheck.IntegrityCheck::report(), edmIntegrityCheck.IntegrityCheck::structured(), and edmIntegrityCheck.IntegrityCheck::test().
|
private |
Definition at line 85 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 79 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 84 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 57 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 71 of file OniaPhotonConversionProducer.h.
Referenced by CheckPi0(), and OniaPhotonConversionProducer().
|
private |
Definition at line 68 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 70 of file OniaPhotonConversionProducer.h.
Referenced by CheckPi0(), and OniaPhotonConversionProducer().
|
private |
Definition at line 80 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 77 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 60 of file OniaPhotonConversionProducer.h.
Referenced by checkTkVtxCompatibility(), and OniaPhotonConversionProducer().
|
private |
Definition at line 86 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 56 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 62 of file OniaPhotonConversionProducer.h.
Referenced by HighpuritySubset(), and OniaPhotonConversionProducer().
|
private |
Definition at line 82 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 76 of file OniaPhotonConversionProducer.h.
Referenced by endJob(), OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 61 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 63 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().
|
private |
Definition at line 59 of file OniaPhotonConversionProducer.h.
Referenced by OniaPhotonConversionProducer(), and produce().