ATLAS Offline Software
Loading...
Searching...
No Matches
PixelGangedAmbiguitiesFinder.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
6//PixelGangedAmbiguitiesFinder.h
8// (c) ATLAS Detector software
10// Finds pixel clusters with a ganged pixel in common
12//
14// First version 28/01/2004 Tommaso Lari
15//
17
18#ifndef SICLUSTERIZATIONTOOL_PIXELGANGEDAMBIGUITIESFINDER_H
19#define SICLUSTERIZATIONTOOL_PIXELGANGEDAMBIGUITIESFINDER_H
20
22#include "Identifier/Identifier.h"
29
30namespace InDetDD {
32}
33
34
35namespace InDet{
36
37 static const InterfaceID IID_PixelGangedAmbiguitiesFinder("InDet::PixelGangedAmbiguitiesFinder", 1, 0);
38
40
42 // Public methods:
44 public:
45
46 PixelGangedAmbiguitiesFinder(const std::string& type,
47 const std::string& name,
48 const IInterface* parent);
50
51 static const InterfaceID& interfaceID() { return IID_PixelGangedAmbiguitiesFinder; };
52
53 virtual StatusCode initialize();
54
55 // Called by the PixelClusterization algorithms of InDetPrepRawDataFormation
56 // A map containing the pairs of Pixel Clusters which shares the same
57 // ganged pixel is created.
58 // Inputs are the cluster collection of a module, and the silicon
59 // detector manager, and the map to be filled.
60 void execute(PixelClusterCollection* collection,
62
63 private:
64
67
68 // If possibile, internally solve ganged pixel ambiguities
69 BooleanProperty m_internalSolving{this, "InternalSolving", false, "Standalone resolution of ganged pixel ambiguities"};
70
71 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_pixelDetEleCollKey{this, "PixelDetEleCollKey", "PixelDetectorElementCollection", "Key of SiDetectorElementCollection for Pixel"};
72
73 // Determines if a pixel cell (whose identifier is the first argument) is
74 // a ganged pixel. If this is the case, the last argument assumes the
75 // value of the identifier of the cell it is ganged with.
76 // The second argument is the pixel module the hit belongs to.
77
78 static bool isGanged(const Identifier& rdoID,
79 const InDetDD::SiDetectorElement* element,
80 Identifier& gangedID) ;
81
82 };
83
84}
85
86#endif // SICLUSTERIZATIONTOOL_PIXELGANGEDAMBIGUITIESFINDER_H
This is an Identifier helper class for the Pixel subdetector.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Class to hold geometrical description of a silicon detector element.
Class to represent a position in the natural frame of a silicon sensor, for Pixel and SCT For Pixel: ...
static bool isGanged(const Identifier &rdoID, const InDetDD::SiDetectorElement *element, Identifier &gangedID)
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
void execute(PixelClusterCollection *collection, PixelGangedClusterAmbiguities &map) const
PixelGangedAmbiguitiesFinder(const std::string &type, const std::string &name, const IInterface *parent)
Trk::PrepRawDataCollection< PixelCluster > PixelClusterCollection
std::multimap< const SiCluster *, const SiCluster *, ::InDet::compare_SiCluster > PixelGangedClusterAmbiguities
STL class.
Message Stream Member.
Primary Vertex Finder.
static const InterfaceID IID_PixelGangedAmbiguitiesFinder("InDet::PixelGangedAmbiguitiesFinder", 1, 0)