Plugin to load the Clustering algorithm and produce the collection of Clusters that goes in the event content. More...
#include <TTClusterBuilder.h>
Private Member Functions | |
virtual void | beginRun (const edm::Run &run, const edm::EventSetup &iSetup) |
Mandatory methods. More... | |
virtual void | endRun (const edm::Run &run, const edm::EventSetup &iSetup) |
End run. More... | |
template<> | |
void | produce (edm::Event &iEvent, const edm::EventSetup &iSetup) |
virtual void | produce (edm::Event &iEvent, const edm::EventSetup &iSetup) |
template<> | |
void | produce (edm::Event &iEvent, const edm::EventSetup &iSetup) |
void | RetrieveRawHits (std::map< DetId, std::vector< T > > &mRawHits, const edm::Event &iEvent) |
Get hits. More... | |
template<> | |
void | RetrieveRawHits (std::map< DetId, std::vector< Ref_Phase2TrackerDigi_ > > &mRawHits, const edm::Event &iEvent) |
template<> | |
void | RetrieveRawHits (std::map< DetId, std::vector< Ref_Phase2TrackerDigi_ > > &mRawHits, const edm::Event &iEvent) |
Private Attributes | |
unsigned int | ADCThreshold |
std::vector< edm::EDGetTokenT < edm::DetSetVector < Phase2TrackerDigi > > > | rawHitTokens |
bool | storeLocalCoord |
edm::ESHandle < TTClusterAlgorithm< T > > | theClusterFindingAlgoHandle |
Data members. More... | |
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) |
Plugin to load the Clustering algorithm and produce the collection of Clusters that goes in the event content.
After moving from SimDataFormats to DataFormats, the template structure of the class was maintained in order to accomodate any types other than PixelDigis in case there is such a need in the future.
Definition at line 41 of file TTClusterBuilder.h.
|
explicit |
Constructors.
Close class.
NOTE since pattern hit correlation must be performed within a stacked module, one must store Clusters in a proper way, providing easy access to them in a detector/member-wise way
Implementation of methods
Here, in the header file, the methods which do not depend on the specific type <T> that can fit the template. Other methods, with type-specific features, are implemented in the source file.Constructors
Definition at line 78 of file TTClusterBuilder.h.
References edm::ParameterSet::getParameter().
TTClusterBuilder< T >::~TTClusterBuilder | ( | ) |
|
privatevirtual |
Mandatory methods.
Begin run.
Get the clustering algorithm
Reimplemented from edm::EDProducer.
Definition at line 97 of file TTClusterBuilder.h.
References edm::EventSetup::get().
|
privatevirtual |
|
privatevirtual |
Here, in the source file, the methods which do depend on the specific type <T> that can fit the template.
Prepare output
Temp vectors containing the vectors of the hits used to build each cluster
Find the hits in each stack member
If there are hits, cluster them It is the TTClusterAlgorithm::Cluster method which calls the constructor to the Cluster class!
Create TTCluster objects and store them Use the FastFiller with edmNew::DetSetVector
End of loop over detector elements
Put output in the event
Implements edm::EDProducer.
Definition at line 14 of file TTClusterBuilder.cc.
References TrackerGeometry::dets(), edmNew::DetSetVector< T >::empty(), edm::EventSetup::get(), TrackerGeometry::getDetectorType(), i, TrackerTopology::isLower(), eostools::move(), TrackerTopology::partnerDetId(), TrackerGeometry::Ph2PSP, edm::ESHandle< class >::product(), edmNew::DetSetVector< T >::push_back(), edm::Event::put(), TrackerTopology::stack(), DetId::subdetId(), and groupFilesInBlocks::temp.
|
privatevirtual |
Implements edm::EDProducer.
|
privatevirtual |
Implements edm::EDProducer.
|
private |
Get hits.
|
private |
Loop over the tags used to identify hits in the cfg file
For each tag, get the corresponding handle
Loop over detector elements identifying Digis
Definition at line 84 of file TTClusterBuilder.cc.
References edm::DetSetVector< T >::begin(), edm::DetSetVector< T >::end(), edm::Event::getByToken(), and edm::makeRefTo().
|
private |
|
private |
Definition at line 55 of file TTClusterBuilder.h.
|
private |
Definition at line 54 of file TTClusterBuilder.h.
|
private |
Definition at line 56 of file TTClusterBuilder.h.
|
private |
Data members.
Definition at line 53 of file TTClusterBuilder.h.