#include <ConvBremSeedProducer.h>
Private Types | |
typedef GeometricSearchDet::DetWithState | DetWithState |
typedef SiStripMatchedRecHit2DCollection::const_iterator | MatDetMatch |
typedef SiStripMatchedRecHit2DCollection::DetSet | MatDetSet |
typedef SiPixelRecHitCollection::const_iterator | PiDetMatch |
typedef SiPixelRecHitCollection::DetSet | PiDetSet |
typedef SiStripRecHit2DCollection::const_iterator | StDetMatch |
typedef SiStripRecHit2DCollection::DetSet | StDetSet |
Private Member Functions | |
void | beginRun (const edm::Run &, const edm::EventSetup &) override |
const DetLayer * | detLayer (const TrackerLayer &layer, float zpos) const |
void | endRun (const edm::Run &, const edm::EventSetup &) override |
int | GoodCluster (const BaseParticlePropagator &bpg, const reco::PFClusterCollection &pfc, float minep, bool sec=false) |
void | initializeLayerMap () |
bool | isGsfTrack (const reco::Track &, const TrackingRecHit *) |
TrajectoryStateOnSurface | makeTrajectoryState (const DetLayer *layer, const ParticlePropagator &pp, const MagneticField *field) const |
void | produce (edm::Event &, const edm::EventSetup &) override |
std::vector< bool > | sharedHits (const std::vector< std::pair< TrajectorySeed, std::pair< GlobalVector, float > > > &) |
Private Attributes | |
math::XYZVector | B_ |
B field. More... | |
edm::ParameterSet | conf_ |
const MagneticFieldMap * | fieldMap_ |
const TrackerInteractionGeometry * | geometry_ |
const GeometricSearchTracker * | geomSearchTracker_ |
const TransientTrackingRecHitBuilder * | hitBuilder_ |
const KFUpdator * | kfUpdator_ |
std::vector< const DetLayer * > | layerMap_ |
const MagneticField * | magfield_ |
int | negLayerOffset_ |
const PropagatorWithMaterial * | propagator_ |
std::vector< const DetLayer * > | theLayerMap |
const TrackerGeometry * | tracker_ |
Additional Inherited Members | |
Public Types inherited from edm::EDProducer | |
typedef EDProducer | ModuleType |
Public Types inherited from edm::ProducerBase | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > > |
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) |
static bool | wantsGlobalLuminosityBlocks () |
static bool | wantsGlobalRuns () |
static bool | wantsStreamLuminosityBlocks () |
static bool | wantsStreamRuns () |
Protected Member Functions inherited from edm::ProducerBase | |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
declare what type of product will make and with which optional label More... | |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<BranchType B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<Transition B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (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 ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
Definition at line 38 of file ConvBremSeedProducer.h.
|
private |
Definition at line 45 of file ConvBremSeedProducer.h.
Definition at line 41 of file ConvBremSeedProducer.h.
Definition at line 44 of file ConvBremSeedProducer.h.
Definition at line 40 of file ConvBremSeedProducer.h.
|
private |
Definition at line 43 of file ConvBremSeedProducer.h.
Definition at line 39 of file ConvBremSeedProducer.h.
|
private |
Definition at line 42 of file ConvBremSeedProducer.h.
|
explicit |
Definition at line 53 of file ConvBremSeedProducer.cc.
|
override |
Definition at line 58 of file ConvBremSeedProducer.cc.
|
overrideprivatevirtual |
Reimplemented from edm::EDProducer.
Definition at line 344 of file ConvBremSeedProducer.cc.
References alongMomentum, B_, conf_, fieldMap_, geometry_, geomSearchTracker_, edm::EventSetup::get(), get, edm::ParameterSet::getParameter(), hitBuilder_, MagneticField::inTesla(), kfUpdator_, volumeBasedMagneticField_160812_cfi::magfield, magfield_, edm::ESHandle< T >::product(), propagator_, HLT_2018_cff::track, PbPb_ZMuSkimMuonDPG_cff::tracker, and tracker_.
|
private |
Definition at line 454 of file ConvBremSeedProducer.cc.
References TrackerLayer::forward(), layerMap_, TrackerLayer::layerNumber(), and negLayerOffset_.
Referenced by produce().
|
overrideprivatevirtual |
Reimplemented from edm::EDProducer.
Definition at line 374 of file ConvBremSeedProducer.cc.
References kfUpdator_, and propagator_.
|
private |
Definition at line 526 of file ConvBremSeedProducer.cc.
References flavorHistoryFilter_cfi::dr, PVValHelper::eta, BaseParticlePropagator::getSuccess(), mps_fire::i, RawParticle::momentum(), BaseParticlePropagator::particle(), phi, position, funct::pow(), BaseParticlePropagator::propagateToEcalEntrance(), fileinputsource_cfi::sec, mathSSE::sqrt(), TwoPi, and RawParticle::vertex().
Referenced by produce().
|
private |
ATTENTION: HARD CODED LOGIC! If Famos layer numbering changes this logic needs to be adapted to the new numbering!
Definition at line 379 of file ConvBremSeedProducer.cc.
References GeometricSearchTracker::barrelLayers(), TrackerInteractionGeometry::cylinderBegin(), TrackerInteractionGeometry::cylinderEnd(), newFWLiteAna::found, geometry_, geomSearchTracker_, mps_fire::i, layerMap_, LogDebug, and GeometricSearchTracker::posForwardLayers().
Referenced by produce().
|
private |
Definition at line 472 of file ConvBremSeedProducer.cc.
References TrackingRecHit::all, and reco::Track::recHits().
Referenced by produce().
|
private |
Definition at line 461 of file ConvBremSeedProducer.cc.
References createTree::pp, GeometricSearchDet::surface(), and Surface::tangentPlane().
Referenced by produce().
|
overrideprivatevirtual |
INPUT COLLECTIONS
PF CLUSTERS
PIXEL
STRIP
OUTPUT COLLECTION
INITIALIZE
LOOP OVER GSF TRACK COLLECTION
FIND THE CLUSTER ASSOCIATED TO THE GSF TRACK
LOOP OVER BREM PHOTONS
BREM SELECTION
LOOP OVER TRACKER LAYER
TRACKER LAYER SELECTION
FIND COMPATIBLE MODULES
MODULE TRIPLETS SELECTION
SEED CREATION
Implements edm::EDProducer.
Definition at line 60 of file ConvBremSeedProducer.cc.
References alongMomentum, AnalyticalPropagator_cfi::AnalyticalPropagator, anyDirection, B_, edmNew::DetSet< T >::begin(), TransientTrackingRecHitBuilder::build(), GlobalTrajectoryParameters::charge(), edm::OwnVector< T, P >::clear(), clone(), GeometricSearchDet::compatibleDets(), conf_, TrackerInteractionGeometry::cylinderBegin(), TrackerInteractionGeometry::cylinderEnd(), detLayer(), edmNew::DetSet< T >::end(), edmNew::DetSetVector< T >::end(), fieldMap_, spr::find(), dqmdumpme::first, geometry_, edm::EventSetup::get(), get, BaseParticlePropagator::getMagneticField(), edm::ParameterSet::getParameter(), BaseParticlePropagator::getSuccess(), GoodCluster(), runTauDisplay::gp, hitBuilder_, mps_fire::i, testProducerWithPsetDescEmpty_cfi::i1, testProducerWithPsetDescEmpty_cfi::i2, testProducerWithPsetDescEmpty_cfi::i3, cuy::ib, TrackerGeometry::idToDet(), iEvent, initializeLayerMap(), isGsfTrack(), GeomDetEnumerators::isTrackerPixel(), TrajectoryStateOnSurface::isValid(), kfUpdator_, LogDebug, magfield_, makeTrajectoryState(), AlignmentTrackSelector_cfi::matchedrecHits, GlobalTrajectoryParameters::momentum(), eostools::move(), MagneticField::nominalValue(), convertSQLitetoXML_cfg::output, AlCaHLTBitMon_ParallelJobs::p, BaseParticlePropagator::particle(), PV3DBase< T, PVType, FrameType >::perp(), trajectoryStateTransform::persistentState(), GlobalTrajectoryParameters::position(), position, edm::Handle< T >::product(), PropagatorWithMaterial::propagate(), BaseParticlePropagator::propagate(), propagator_, edm::OwnVector< T, P >::push_back(), AlignmentTrackSelector_cfi::rphirecHits, ParticlePropagator::setPropagationConditions(), sharedHits(), mathSSE::sqrt(), FastHelix::stateAtVertex(), convBremSeeds_cfi::stereorecHits, DetLayer::subDetector(), GeomDet::surface(), groupFilesInBlocks::temp, createJobs::tmp, Surface::toGlobal(), tracker_, KFUpdator::update(), TrackInfoProducer_cfi::updatedState, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and RawParticle::Z().
|
private |
Definition at line 481 of file ConvBremSeedProducer.cc.
References TrackingRecHit::all, mps_fire::i, and edm::second().
Referenced by produce().
|
private |
B field.
Definition at line 83 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 71 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 76 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 73 of file ConvBremSeedProducer.h.
Referenced by beginRun(), initializeLayerMap(), and produce().
|
private |
Definition at line 72 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and initializeLayerMap().
|
private |
Definition at line 79 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 78 of file ConvBremSeedProducer.h.
Referenced by beginRun(), endRun(), and produce().
|
private |
Definition at line 80 of file ConvBremSeedProducer.h.
Referenced by detLayer(), and initializeLayerMap().
|
private |
Definition at line 75 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 81 of file ConvBremSeedProducer.h.
Referenced by detLayer().
|
private |
Definition at line 77 of file ConvBremSeedProducer.h.
Referenced by beginRun(), endRun(), and produce().
|
private |
Definition at line 56 of file ConvBremSeedProducer.h.
|
private |
Definition at line 74 of file ConvBremSeedProducer.h.
Referenced by beginRun(), and produce().