#include <TrajectorySeedProducer.h>
Public Types | |
typedef std::vector < std::unique_ptr < TrackingRegion > > | Regions |
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 |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Public Member Functions | |
bool | compatibleWithBeamSpot (const GlobalPoint &gpos1, const GlobalPoint &gpos2, double error, bool forward) const |
bool | compatibleWithPrimaryVertex (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 |
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 SimTrack fulfills the quality requirements. More... | |
virtual void | produce (edm::Event &e, const edm::EventSetup &es) |
bool | testWithRegions (const TrajectorySeedHitCandidate &innerHit, const TrajectorySeedHitCandidate &outerHit) const |
method inserts hit into the tree structure at an empty position. More... | |
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 | |
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 () |
Public Attributes | |
const edm::EventSetup * | es_ |
const MeasurementTrackerEvent * | measurementTrackerEvent |
edm::EDGetTokenT < MeasurementTrackerEvent > | measurementTrackerEventToken |
Regions | regions |
std::unique_ptr < TrackingRegionProducer > | theRegionProducer |
Private Attributes | |
SeedingTree< TrackingLayer > | _seedingTree |
const reco::BeamSpot * | beamSpot |
bool | hitMasks_exists |
edm::EDGetTokenT< std::vector < bool > > | hitMasksToken |
const MagneticField * | magneticField |
const MagneticFieldMap * | magneticFieldMap |
unsigned int | minLayersCrossed |
double | nSigmaZ |
double | originHalfLength |
double | originRadius |
const reco::VertexCollection * | primaryVertices |
double | ptMin |
edm::EDGetTokenT < FastTrackerRecHitCombinationCollection > | recHitCombinationsToken |
std::unique_ptr< SeedCreator > | seedCreator |
std::vector< std::vector < TrackingLayer > > | seedingLayers |
double | simTrack_maxD0 |
double | simTrack_maxZ0 |
double | simTrack_pTMin |
bool | testBeamspotCompatibility |
bool | testPrimaryVertexCompatibility |
std::shared_ptr < PropagatorWithMaterial > | thePropagator |
const TrackerGeometry * | trackerGeometry |
const TrackerTopology * | trackerTopology |
Additional Inherited Members | |
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::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 36 of file TrajectorySeedProducer.h.
typedef std::vector<std::unique_ptr<TrackingRegion> > TrajectorySeedProducer::Regions |
Definition at line 197 of file TrajectorySeedProducer.h.
TrajectorySeedProducer::TrajectorySeedProducer | ( | const edm::ParameterSet & | conf | ) |
Definition at line 49 of file TrajectorySeedProducer.cc.
References _seedingTree, edm::EDConsumerBase::consumesCollector(), SurfaceDeformationFactory::create(), TrackingLayer::createFromString(), edm::ParameterSet::exists(), reco::get(), edm::ParameterSet::getParameter(), hitMasks_exists, hitMasksToken, SeedingTree< DATA >::insert(), geometryCSVtoXML::line, measurementTrackerEventToken, minLayersCrossed, eostools::move(), recHitCombinationsToken, seedCreator, seedingLayers, AlCaHLTBitMon_QueryRunRegistry::string, and theRegionProducer.
|
inlinevirtual |
Definition at line 74 of file TrajectorySeedProducer.h.
bool TrajectorySeedProducer::compatibleWithBeamSpot | ( | 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.
bool TrajectorySeedProducer::compatibleWithPrimaryVertex | ( | 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.
const SeedingNode< TrackingLayer > * TrajectorySeedProducer::insertHit | ( | const std::vector< TrajectorySeedHitCandidate > & | trackerRecHits, |
std::vector< int > & | hitIndicesInTree, | ||
const SeedingNode< TrackingLayer > * | node, | ||
unsigned int | trackerHit | ||
) | const |
Definition at line 139 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 157 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 181 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 105 of file TrajectorySeedProducer.cc.
References constexpr, TrackingRecHit::det(), GeometricSearchTracker::detLayer(), es_, GeomDet::geographicalId(), MeasurementTracker::geometricSearchTracker(), BaseTrackerRecHit::globalState(), TrajectorySeedHitCandidate::hit(), DetLayer::isBarrel(), MeasurementTrackerEvent::measurementTracker(), measurementTrackerEvent, nSigmaRZ, TrackingRecHitGlobalState::position, GeometricSearchDet::position(), HitRZCompatibility::range(), regions, seedCreator, findQualityFiles::v, and PV3DBase< T, PVType, FrameType >::z().
Referenced by passHitTuplesCuts().
|
inline |
method checks if a SimTrack fulfills the quality requirements.
theSimTrack | the SimTrack to be tested. |
theSimVertex | the associated SimVertex of the SimTrack. |
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 96 of file TrajectorySeedProducer.h.
References SeedingNode< DATA >::getDepth(), SeedingNode< DATA >::getIndex(), SeedingNode< DATA >::getParent(), and pass2HitsCuts().
Referenced by insertHit().
|
virtual |
Implements edm::stream::EDProducerBase.
Definition at line 244 of file TrajectorySeedProducer.cc.
References _seedingTree, clone(), es_, edm::EventSetup::get(), edm::Event::getByToken(), SeedingTree< DATA >::getSingleSet(), TrajectorySeedHitCandidate::getTrackingLayer(), hitMasks_exists, hitMasksToken, TrajectorySeedHitCandidate::isOnTheSameLayer(), iterateHits(), magneticField, magneticFieldMap, measurementTrackerEvent, measurementTrackerEventToken, minLayersCrossed, eostools::move(), SeedingTree< DATA >::numberOfNodes(), convertSQLitetoXML_cfg::output, edm::Handle< T >::product(), edm::OwnVector< T, P >::push_back(), edm::Event::put(), recHitCombinationsToken, regions, seedCreator, fastTrackingHelper::setRecHitCombinationIndex(), edm::OwnVector< T, P >::size(), theRegionProducer, trackerGeometry, and trackerTopology.
Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().
bool TrajectorySeedProducer::testWithRegions | ( | const TrajectorySeedHitCandidate & | innerHit, |
const TrajectorySeedHitCandidate & | outerHit | ||
) | 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. |
|
private |
Definition at line 40 of file TrajectorySeedProducer.h.
Referenced by iterateHits(), produce(), and TrajectorySeedProducer().
|
private |
Definition at line 64 of file TrajectorySeedProducer.h.
const edm::EventSetup* TrajectorySeedProducer::es_ |
Definition at line 204 of file TrajectorySeedProducer.h.
Referenced by pass2HitsCuts(), and produce().
|
private |
Definition at line 62 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 69 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 42 of file TrajectorySeedProducer.h.
Referenced by produce().
|
private |
Definition at line 43 of file TrajectorySeedProducer.h.
Referenced by produce().
const MeasurementTrackerEvent* TrajectorySeedProducer::measurementTrackerEvent |
Definition at line 203 of file TrajectorySeedProducer.h.
Referenced by pass2HitsCuts(), and produce().
edm::EDGetTokenT<MeasurementTrackerEvent> TrajectorySeedProducer::measurementTrackerEventToken |
Definition at line 202 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 53 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 60 of file TrajectorySeedProducer.h.
|
private |
Definition at line 59 of file TrajectorySeedProducer.h.
|
private |
Definition at line 57 of file TrajectorySeedProducer.h.
|
private |
Definition at line 66 of file TrajectorySeedProducer.h.
|
private |
Definition at line 58 of file TrajectorySeedProducer.h.
|
private |
Definition at line 68 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
Regions TrajectorySeedProducer::regions |
Definition at line 198 of file TrajectorySeedProducer.h.
Referenced by pass2HitsCuts(), and produce().
|
private |
Definition at line 52 of file TrajectorySeedProducer.h.
Referenced by pass2HitsCuts(), produce(), and TrajectorySeedProducer().
|
private |
Definition at line 55 of file TrajectorySeedProducer.h.
Referenced by TrajectorySeedProducer().
|
private |
Definition at line 50 of file TrajectorySeedProducer.h.
|
private |
Definition at line 51 of file TrajectorySeedProducer.h.
|
private |
Definition at line 49 of file TrajectorySeedProducer.h.
|
private |
Definition at line 63 of file TrajectorySeedProducer.h.
|
private |
Definition at line 65 of file TrajectorySeedProducer.h.
|
private |
Definition at line 47 of file TrajectorySeedProducer.h.
std::unique_ptr<TrackingRegionProducer> TrajectorySeedProducer::theRegionProducer |
Definition at line 201 of file TrajectorySeedProducer.h.
Referenced by produce(), and TrajectorySeedProducer().
|
private |
Definition at line 44 of file TrajectorySeedProducer.h.
Referenced by produce().
|
private |
Definition at line 45 of file TrajectorySeedProducer.h.
Referenced by produce().