#include <TrajectorySeedProducer.h>
Public Member Functions | |
virtual void | beginRun (edm::Run const &run, const edm::EventSetup &es) |
bool | compatibleWithBeamAxis (const GlobalPoint &gpos1, const GlobalPoint &gpos2, double error, bool forward) const |
const SeedingNode < TrackingLayer > * | insertHit (const std::vector< TrajectorySeedHitCandidate > &trackerRecHits, std::vector< int > &hitIndicesInTree, const SeedingNode< TrackingLayer > *node, unsigned int trackerHit) const |
method inserts hit into the tree structure at an empty position. More... | |
bool | isHitOnLayer (const TrajectorySeedHitCandidate &trackerRecHit, const TrackingLayer &layer) const |
virtual std::vector< unsigned int > | iterateHits (unsigned int start, const std::vector< TrajectorySeedHitCandidate > &trackerRecHits, std::vector< int > hitIndicesInTree, bool processSkippedHits) const |
method tries to insert all hits into the tree structure. More... | |
bool | pass2HitsCuts (const TrajectorySeedHitCandidate &hit1, const TrajectorySeedHitCandidate &hit2) const |
bool | passHitTuplesCuts (const SeedingNode< TrackingLayer > &seedingNode, const std::vector< TrajectorySeedHitCandidate > &trackerRecHits, const std::vector< int > &hitIndicesInTree, const TrajectorySeedHitCandidate ¤tTrackerHit) const |
method checks if a TrajectorySeedHitCandidate fulfills the quality requirements. More... | |
virtual bool | passSimTrackQualityCuts (const SimTrack &theSimTrack, const SimVertex &theSimVertex) const |
method checks if a SimTrack fulfills the quality requirements. More... | |
virtual void | produce (edm::Event &e, const edm::EventSetup &es) |
TrajectorySeedProducer (const edm::ParameterSet &conf) | |
virtual | ~TrajectorySeedProducer () |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
Public Member Functions inherited from edm::stream::EDProducerBase | |
EDProducerBase () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducerBase () |
Public Member Functions inherited from edm::ProducerBase | |
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 () |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
typedef CacheContexts< T...> | CacheTypes |
typedef CacheTypes::GlobalCache | GlobalCache |
typedef AbilityChecker< T...> | HasAbility |
typedef CacheTypes::LuminosityBlockCache | LuminosityBlockCache |
typedef LuminosityBlockContextT < LuminosityBlockCache, RunCache, GlobalCache > | LuminosityBlockContext |
typedef CacheTypes::LuminosityBlockSummaryCache | LuminosityBlockSummaryCache |
typedef CacheTypes::RunCache | RunCache |
typedef RunContextT< RunCache, GlobalCache > | RunContext |
typedef CacheTypes::RunSummaryCache | RunSummaryCache |
Public Types inherited from edm::stream::EDProducerBase | |
typedef EDProducerAdaptorBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Static Public Member Functions inherited from edm::stream::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
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) |
Definition at line 35 of file TrajectorySeedProducer.h.
TrajectorySeedProducer::TrajectorySeedProducer | ( | const edm::ParameterSet & | conf | ) |
Definition at line 44 of file TrajectorySeedProducer.cc.
References _seedingTree, absMinRecHits, beamSpotToken, edm::EDConsumerBase::consumes(), TrackingLayer::createFromString(), edm::ParameterSet::exists(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hitProducer, HLT_25ns14e33_v1_cff::InputTag, SeedingTree< DATA >::insert(), relval_steps::k, geometryCSVtoXML::line, maxD0, maxZ0, minRecHits, eostools::move(), numberOfHits, originHalfLength, originpTMin, originRadius, outputSeedCollectionName, HLT_25ns14e33_v1_cff::primaryVertex, pTMin, recHitToken, recoVertexToken, seedCleaning, seedingLayers, simTrackToken, simVertexToken, skipPVCompatibility, skipSimTrackIdTokens, AlCaHLTBitMon_QueryRunRegistry::string, theBeamSpot, and zVertexConstraint.
|
virtual |
Definition at line 143 of file TrajectorySeedProducer.cc.
References thePropagator.
|
virtual |
Reimplemented from edm::stream::EDProducerBase.
Definition at line 150 of file TrajectorySeedProducer.cc.
References alongMomentum, edm::EventSetup::get(), magneticField, magneticFieldMap, thePropagator, trackerGeometry, and trackerTopology.
bool TrajectorySeedProducer::compatibleWithBeamAxis | ( | const GlobalPoint & | gpos1, |
const GlobalPoint & | gpos2, | ||
double | error, | ||
bool | forward | ||
) | const |
Check that the seed is compatible with a track coming from within a cylinder of radius originRadius, with a decent pT.
Check that the seed is compatible with a track coming from within a cylinder of radius originRadius, with a decent pT, and propagate to the distance of closest approach, for the appropriate charge
Definition at line 524 of file TrajectorySeedProducer.cc.
References beamspotPosition, relativeConstraints::error, magneticFieldMap, bookConverter::max, min(), originHalfLength, originpTMin, originRadius, BaseParticlePropagator::propagateToBeamCylinder(), seedCleaning, mathSSE::sqrt(), vertices, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), PV3DBase< T, PVType, FrameType >::z(), RawParticle::Z(), and zVertexConstraint.
Referenced by pass2HitsCuts().
const SeedingNode< TrackingLayer > * TrajectorySeedProducer::insertHit | ( | const std::vector< TrajectorySeedHitCandidate > & | trackerRecHits, |
std::vector< int > & | hitIndicesInTree, | ||
const SeedingNode< TrackingLayer > * | node, | ||
unsigned int | trackerHit | ||
) | const |
method inserts hit into the tree structure at an empty position.
trackerRecHits | list of all TrackerRecHits. |
hitIndicesInTree | hit indices which translates the tree node to the hits in trackerRecHits. Empty positions are identified with '-1'. |
node | where to look for an empty position. Important for recursive tree traversing (Breadth-first). Starts with the root. |
trackerHit | hit which is tested. |
Definition at line 232 of file TrajectorySeedProducer.cc.
References SeedingNode< DATA >::getChild(), SeedingNode< DATA >::getChildrenSize(), SeedingNode< DATA >::getData(), SeedingNode< DATA >::getIndex(), SeedingNode< DATA >::getParent(), isHitOnLayer(), python.Node::node, passHitTuplesCuts(), and fileCollector::seed.
Referenced by iterateHits().
|
inline |
Definition at line 170 of file TrajectorySeedProducer.h.
References TrajectorySeedHitCandidate::getTrackingLayer().
Referenced by insertHit().
|
virtual |
method tries to insert all hits into the tree structure.
start | index where to begin insertion. Important for recursion. |
trackerRecHits | list of all TrackerRecHits. |
hitIndicesInTree | hit indices which translates the tree node to the hits in trackerRecHits. |
currentTrackerHit | hit which is tested. |
Definition at line 274 of file TrajectorySeedProducer.cc.
References _seedingTree, SeedingNode< DATA >::getDepth(), SeedingNode< DATA >::getIndex(), SeedingNode< DATA >::getParent(), SeedingTree< DATA >::getRoot(), insertHit(), and SeedingTree< DATA >::numberOfRoots().
Referenced by produce().
bool TrajectorySeedProducer::pass2HitsCuts | ( | const TrajectorySeedHitCandidate & | hit1, |
const TrajectorySeedHitCandidate & | hit2 | ||
) | const |
Definition at line 214 of file TrajectorySeedProducer.cc.
References compatibleWithBeamAxis(), relativeConstraints::error, TrajectorySeedHitCandidate::globalPosition(), TrajectorySeedHitCandidate::isForward(), TrajectorySeedHitCandidate::largerError(), skipPVCompatibility, and mathSSE::sqrt().
Referenced by passHitTuplesCuts().
|
inline |
method checks if a TrajectorySeedHitCandidate fulfills the quality requirements.
seedingNode | tree node at which the hit will be inserted. |
trackerRecHits | list of all TrackerRecHits. |
hitIndicesInTree | hit indices which translates the tree node to the hits in trackerRecHits. |
currentTrackerHit | hit which is tested. |
Definition at line 109 of file TrajectorySeedProducer.h.
References SeedingNode< DATA >::getDepth(), SeedingNode< DATA >::getIndex(), SeedingNode< DATA >::getParent(), and pass2HitsCuts().
Referenced by insertHit().
|
virtual |
method checks if a SimTrack fulfills the quality requirements.
theSimTrack | the SimTrack to be tested. |
theSimVertex | the associated SimVertex of the SimTrack. |
Definition at line 172 of file TrajectorySeedProducer.cc.
References beamspotPosition, CoreSimTrack::charge(), maxD0, maxZ0, CoreSimTrack::momentum(), CoreSimVertex::position(), pTMin, RawParticle::setCharge(), BaseParticlePropagator::xyImpactParameter(), and BaseParticlePropagator::zImpactParameter().
Referenced by produce().
|
virtual |
should check if corresponds to m
Implements edm::stream::EDProducerBase.
Definition at line 340 of file TrajectorySeedProducer.cc.
References _seedingTree, alongMomentum, edm::OwnVector< T, P >::back(), beamspotPosition, beamSpotToken, CoreSimTrack::charge(), RecoTauCleanerPlugins::charge, TrackingRecHit::clone(), TrackingRecHit::geographicalId(), edm::Event::getByToken(), SeedingTree< DATA >::getSingleSet(), TrajectorySeedHitCandidate::getTrackingLayer(), TrajectoryStateOnSurface::globalMomentum(), TrackingRecHit::hit(), i, TrackerGeometry::idToDet(), TrajectorySeedHitCandidate::isOnTheSameLayer(), TrajectoryStateOnSurface::isValid(), iterateHits(), j, relval_steps::k, TrajectoryStateOnSurface::localError(), TrajectoryStateOnSurface::localParameters(), visualization-live-secondInstance_cfg::m, magneticField, LocalTrajectoryError::matrix(), minRecHits, CoreSimTrack::momentum(), eostools::move(), SeedingTree< DATA >::numberOfNodes(), convertSQLitetoXML_cfg::output, outputSeedCollectionName, passSimTrackQualityCuts(), PV3DBase< T, PVType, FrameType >::perp(), position, Propagator::propagate(), edm::OwnVector< T, P >::push_back(), edm::Event::put(), DetId::rawId(), HLT_25ns14e33_v3_cff::recHits, recHitToken, recoVertexToken, simTrackToken, simVertexToken, skipSimTrackIdTokens, GeomDetEnumerators::subDetId, GeomDet::surface(), TrajectoryStateOnSurface::surfaceSide(), thePropagator, trackerGeometry, trackerTopology, vertices, SimTrack::vertIndex(), x, detailsBasic3DVector::y, and detailsBasic3DVector::z.
Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().
|
private |
Definition at line 38 of file TrajectorySeedProducer.h.
Referenced by iterateHits(), produce(), and TrajectorySeedProducer().
|
private |
Definition at line 56 of file TrajectorySeedProducer.h.
Referenced by TrajectorySeedProducer().
|
private |
Definition at line 64 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), passSimTrackQualityCuts(), and produce().
|
private |
Definition at line 77 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 52 of file TrajectorySeedProducer.h.
Referenced by TrajectorySeedProducer().
|
private |
Definition at line 41 of file TrajectorySeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 42 of file TrajectorySeedProducer.h.
Referenced by beginRun(), and compatibleWithBeamAxis().
|
private |
Definition at line 49 of file TrajectorySeedProducer.h.
Referenced by passSimTrackQualityCuts(), and TrajectorySeedProducer().
|
private |
Definition at line 50 of file TrajectorySeedProducer.h.
Referenced by passSimTrackQualityCuts(), and TrajectorySeedProducer().
|
private |
Definition at line 51 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 57 of file TrajectorySeedProducer.h.
Referenced by TrajectorySeedProducer().
|
private |
Definition at line 67 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), and TrajectorySeedProducer().
|
private |
Definition at line 68 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), and TrajectorySeedProducer().
|
private |
Definition at line 66 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), and TrajectorySeedProducer().
|
private |
Definition at line 59 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 48 of file TrajectorySeedProducer.h.
Referenced by passSimTrackQualityCuts(), and TrajectorySeedProducer().
|
private |
Definition at line 80 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 81 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 55 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), and TrajectorySeedProducer().
|
private |
Definition at line 62 of file TrajectorySeedProducer.h.
Referenced by TrajectorySeedProducer().
|
private |
Definition at line 78 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 79 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 72 of file TrajectorySeedProducer.h.
Referenced by pass2HitsCuts(), and TrajectorySeedProducer().
|
private |
Definition at line 82 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 53 of file TrajectorySeedProducer.h.
Referenced by TrajectorySeedProducer().
|
private |
Definition at line 46 of file TrajectorySeedProducer.h.
Referenced by beginRun(), produce(), and ~TrajectorySeedProducer().
|
private |
Definition at line 43 of file TrajectorySeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 44 of file TrajectorySeedProducer.h.
Referenced by beginRun(), and produce().
|
private |
Definition at line 74 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), and produce().
|
private |
Definition at line 70 of file TrajectorySeedProducer.h.
Referenced by compatibleWithBeamAxis(), and TrajectorySeedProducer().