12#include <klm/dataobjects/KLMHit2d.h>
15#include <framework/core/Module.h>
16#include <framework/datastore/StoreArray.h>
17#include <mdst/dataobjects/KLMCluster.h>
74 void event()
override;
103 void applyOutlierRemoval(std::vector<KLMHit2d*>& clusterHits, std::vector<KLMHit2d*>& poolHits);
enum ClusterMode m_ClusterMode
Clusterization mode.
void initialize() override
Initializer.
~KLMClustersReconstructorModule() override
Destructor.
void event() override
This method is called for each event.
double m_OutlierTrimAngle
Floor (minimum) angular threshold in rad; effective cut is max(floor, k*MAD).
std::string m_PositionModeString
Vertex position calculation mode.
enum PositionMode m_PositionMode
Vertex position calculation mode.
std::string m_ClusterModeString
Clusterization mode.
PositionMode
Vertex position calculation mode.
@ c_FullAverage
Full average.
@ c_SuccessiveTwoLayers
Innermost adjacent layer pair with hits; else FirstLayer.
@ c_FirstLayer
Innermost hit layer only.
@ c_FirstTwoLayers
Two innermost layers with hits (BKLM then EKLM).
KLMClustersReconstructorModule()
Constructor.
double m_ClusteringAngle
Clustering angle.
void applyOutlierRemoval(std::vector< KLMHit2d * > &clusterHits, std::vector< KLMHit2d * > &poolHits)
Optional post-cluster hit filtering.
StoreArray< KLMCluster > m_KLMClusters
KLM clusters.
ClusterMode
Clusterization mode.
@ c_FirstHit
Angle from first hit.
@ c_AnyHit
Angle from any hit.
bool m_RemoveOutlierHits
If true, drop angular outliers after clustering and re-queue them for other clusters.
StoreArray< KLMHit2d > m_Hit2ds
Two-dimensional hits.
Accessor to arrays stored in the data store.
Abstract base class for different kinds of events.