Belle II Software development
KLMClustersReconstructorModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11/* KLM headers. */
12#include <klm/dataobjects/KLMHit2d.h>
13
14/* Basf2 headers. */
15#include <framework/core/Module.h>
16#include <framework/datastore/StoreArray.h>
17#include <mdst/dataobjects/KLMCluster.h>
18
19/* C++ headers. */
20#include <string>
21#include <vector>
22
23namespace Belle2 {
28
35
45
53
54 public:
55
60
65
69 void initialize() override;
70
74 void event() override;
75
76 private:
77
80
83
86
89
92
95
98
103 void applyOutlierRemoval(std::vector<KLMHit2d*>& clusterHits, std::vector<KLMHit2d*>& poolHits);
104
107
110
111 };
112
114}
enum ClusterMode m_ClusterMode
Clusterization mode.
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.
@ c_SuccessiveTwoLayers
Innermost adjacent layer pair with hits; else FirstLayer.
@ c_FirstTwoLayers
Two innermost layers with hits (BKLM then EKLM).
void applyOutlierRemoval(std::vector< KLMHit2d * > &clusterHits, std::vector< KLMHit2d * > &poolHits)
Optional post-cluster hit filtering.
StoreArray< KLMCluster > m_KLMClusters
KLM clusters.
bool m_RemoveOutlierHits
If true, drop angular outliers after clustering and re-queue them for other clusters.
StoreArray< KLMHit2d > m_Hit2ds
Two-dimensional hits.
Module()
Constructor.
Definition Module.cc:30
Accessor to arrays stored in the data store.
Definition StoreArray.h:113
Abstract base class for different kinds of events.