 |
Belle II Software
release-05-02-19
|
13 #include <framework/core/Module.h>
14 #include <vxd/dataobjects/VxdID.h>
15 #include <pxd/reconstruction/ClusterCache.h>
16 #include <pxd/reconstruction/ClusterProjection.h>
17 #include <pxd/reconstruction/NoiseMap.h>
27 class RelationElement;
45 class PXDClusterizerModule :
public Module {
93 double minPitch,
double centerPitch,
double maxPitch);
Low-level class to create/modify relations between StoreArrays.
std::unique_ptr< ClusterCache > m_cache
cache of the last seen clusters to speed up clustering
Class to uniquely identify a any structure of the PXD and SVD.
double m_cutAdjacent
Noise cut in sigma.
Class representing a possible cluster during clustering of the PXD It supports merging of different c...
std::string m_relDigitTrueHitName
Name of the relation between PXDDigits and PXDTrueHits.
double m_elNoise
Noise in ADU.
std::string m_relClusterMCParticleName
Name of the relation between PXDClusters and MCParticles.
PXDClusterizerModule()
Constructor defining the parameters.
std::vector< const RelationElement * > RelationLookup
Container for a RelationArray Lookup table.
double m_cutAdjacentSignal
Signal in ADU for Adjacent cut, basically m_elNoise*m_cutAdjacent.
void calculatePositionError(const ClusterCandidate &cls, ClusterProjection &primary, const ClusterProjection &secondary, double minPitch, double centerPitch, double maxPitch)
Calculate position and error for a given cluster.
std::string m_relClusterDigitName
Name of the relation between PXDClusters and PXDDigits.
std::string m_storeTrueHitsName
Name of the collection to use for the PXDTrueHits.
RelationLookup m_mcRelation
Lookup table for PXDDigit->MCParticle relation.
std::string m_relDigitMCParticleName
Name of the relation between PXDDigits and MCParticles.
double m_cutCluster
Cluster cut in sigma.
void writeClusters(VxdID sensorID)
Write clusters to collection.
Base Class to represent pixel dependent Noise Map.
double m_cutSeed
Seed cut in sigma.
Abstract base class for different kinds of events.
int m_clusterCacheSize
Size of cluster Cache (0 = default)
std::string m_storeDigitsName
Name of the collection to use for the PXDDigits.
void createRelationLookup(const RelationArray &relation, RelationLookup &lookup, size_t digits)
Create lookup maps for Relations We do not use the RelationIndex as we know much more about the relat...
virtual void initialize() override
Initialize the module.
Helper struct to collect information about the 1D projection of a Pixel cluster.
RelationLookup m_trueRelation
Lookup table for PXDDigit->PXDTrueHit relation.
virtual void event() override
do the clustering
NoiseMap m_noiseMap
Noise map for the currently active sensor.
int m_sizeHeadTail
Size of the cluster at which we switch from Center of Gravity to Analog Head Tail.
void fillRelationMap(const RelationLookup &lookup, std::map< unsigned int, float > &relation, unsigned int index)
Add the relation from a given PXDDigit index to a map.
std::string m_storeMCParticlesName
Name of the collection to use for the MCParticles.
std::string m_storeClustersName
Name of the collection to use for the PXDClusters.
std::string m_relClusterTrueHitName
Name of the relation between PXDClusters and PXDTrueHits.