ATLAS Offline Software
Loading...
Searching...
No Matches
TotPixelClusterSplitter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6// TotPixelClusterSplitter.h, (c) ATLAS Detector software
8
9#ifndef INDETRECTOOLS_TOTPIXELCLUSTERSPLITTER_H
10#define INDETRECTOOLS_TOTPIXELCLUSTERSPLITTER_H
11
13
20
21template <class T> class ServiceHandle;
22
23namespace InDet
24{
25 class PixelCluster;
26
32 class TotPixelClusterSplitter final : public extends<AthAlgTool, IPixelClusterSplitter>
33 {
34 public :
36 TotPixelClusterSplitter(const std::string & type,
37 const std::string & name,
38 const IInterface * parent);
39
42
44 virtual StatusCode initialize() override;
45 virtual StatusCode finalize() override;
46
48 virtual std::vector<InDet::PixelClusterParts> splitCluster(
49 const InDet::PixelCluster& OrigCluster) const override;
50
52 virtual std::vector<InDet::PixelClusterParts> splitCluster(
53 const InDet::PixelCluster& OrigCluster,
54 const InDet::PixelClusterSplitProb& spo) const override;
55
57 inline void setMinPixels(unsigned int minPix);
58 inline void setMaxPixels(unsigned int maxPix);
59
60 private:
76 static int pixelType(const int PhiIdx, const int EtaIdx) ;
77
78 enum SplitType { PhiSplit = 0, EtaSplit = 1, NoSplit = 2 };
79
81 {this, "PixelChargeCalibCondData", "PixelChargeCalibCondData", "Pixel charge calibration data"};
82
84 unsigned int m_minPixels;
85
87 unsigned int m_maxPixels;
88
89 };
90
91 inline void TotPixelClusterSplitter::setMinPixels(unsigned int minPix)
92 {
93 m_minPixels = minPix;
94 return;
95 }
96
97 inline void TotPixelClusterSplitter::setMaxPixels(unsigned int maxPix)
98 {
99 m_maxPixels = maxPix;
100 return;
101 }
102
103}
104
105#endif
This is an Identifier helper class for the Pixel subdetector.
return object of the IPixelClusterSplitProbTool
unsigned int m_minPixels
Minimum number of pixels in cluster to consider splitting.
~TotPixelClusterSplitter()=default
Destructor.
void setMaxPixels(unsigned int maxPix)
SG::ReadCondHandleKey< PixelChargeCalibCondData > m_chargeDataKey
unsigned int m_maxPixels
Maximum size of cluster for which splitting will be attempted.
virtual StatusCode initialize() override
AthAlgTool interface methods.
TotPixelClusterSplitter(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
static int pixelType(const int PhiIdx, const int EtaIdx)
Determine a pixel's type.
virtual std::vector< InDet::PixelClusterParts > splitCluster(const InDet::PixelCluster &OrigCluster) const override
take one, give zero or many
void setMinPixels(unsigned int minPix)
Set the lower and upper bounds for the number of pixels in clusters to be considered.
virtual StatusCode finalize() override
Primary Vertex Finder.