ATLAS Offline Software
InDetAlignFillSiCluster.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // ================================================
7 // InDetAlignFillSiCluster
8 // ================================================
9 //
10 // InDetAlignFillSiCluster.cxx
11 // Source file for InDetAlignFillSiCluster
12 //
13 // Carlos Escobar, started 08/03/2008
14 //
15 // AthAlgTool to fill silicon cluster information in a ntuple
16 
17 #include "GaudiKernel/NTuple.h"
18 #include "GaudiKernel/INTupleSvc.h"
19 #include "GaudiKernel/SmartDataPtr.h"
20 
22 
24 #include "InDetIdentifier/SCT_ID.h"
27 
29 
30 #include <string>
31 
32 static const int maxclusters = 24000;
33 static const int maxclsize = 10;
34 
35 //=====================================================================
36 // InDetAlignFillSiCluster()
37 //=====================================================================
39  const std::string& name,
40  const IInterface* parent)
42  m_ntupleSvc(nullptr),
43  m_pixelid(nullptr),
44  m_sctID(nullptr),
45  m_Pixel_clcontainer(nullptr),
46  m_Sct_clcontainer(nullptr)
47 {
48  declareInterface<IInDetAlignFillSiCluster>(this);
49  declareProperty("Pixel_SiClusterContainerName", m_Pixel_SiClustersName="PixelClusters");
50  declareProperty("SCT_SiClusterContainerName", m_Sct_SiClustersName="SCT_Clusters");
51 
52  // Ntuple
53  declareProperty("NtupleName", m_ntupleName="/NTUPLES/GLOBFILE");
54 }
55 
56 
57 //=====================================================================
58 // ~FillSiCluster()
59 //=====================================================================
61 
62 
63 //=====================================================================
64 // initialize()
65 //=====================================================================
67 
68  ATH_MSG_DEBUG("In Initialize() of FillSiCluster()");
69 
70  // ID Helper
71 
72  if (detStore()->retrieve(m_sctID, "SCT_ID").isFailure()){
73  msg(MSG::FATAL) << "Could not get SCT ID helper" << endmsg;
74  return StatusCode::FAILURE;
75  }
76  else if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "SCT ID is : "<< m_sctID <<endmsg ;
77 
78  if (detStore()->retrieve(m_pixelid, "PixelID").isFailure()){
79  msg(MSG::FATAL) << "Could not get PIXEL ID helper" << endmsg;
80  return StatusCode::FAILURE;
81  }
82  else if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Pixel ID is : " << m_pixelid << endmsg;
83 
84  // retrieve the NTuple Service
85  if (StatusCode::SUCCESS != service("NTupleSvc", m_ntupleSvc)) {
86  ATH_MSG_FATAL ("NTupleSvc service not found!");
87  return StatusCode::FAILURE;
88  }
89 
90  bookNtuple();
91 
94 
95  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Initialize() of FillSiCluster successful" << endmsg;
96  return StatusCode::SUCCESS;
97 }
98 
99 
100 //=====================================================================
101 // finalize()
102 //=====================================================================
104 
105  if (msgLvl(MSG::DEBUG)) {
106  msg(MSG::DEBUG) << "Finalize() of FillSiCluster" << endmsg;
107  msg(MSG::DEBUG) << "________________________________________________________" << endmsg;
108  msg(MSG::DEBUG) << endmsg;
109  msg(MSG::DEBUG) << " InDetAlignFillSiCluster Summary: " << endmsg;
110  msg(MSG::DEBUG) << "________________________________________________________" << endmsg;
111  msg(MSG::DEBUG) << endmsg;
112  }
113 
114  return StatusCode::SUCCESS;
115 }
116 
117 
118 //=====================================================================
119 // FillSiCluster()
120 //=====================================================================
122 
123  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "In FillSiCluster()" << endmsg;
124 
125  StatusCode sc;
126 
127  if(RetrieveSCTSiClusters() != StatusCode::FAILURE)
128  FillSCTSiNtuple();
129 
130  if(RetrievePixelSiClusters() != StatusCode::FAILURE)
132 
133  std::string nt0id = m_ntupleName + "/SiCluster";
134  sc = m_ntupleSvc->writeRecord(nt0id);
135  if (sc.isFailure()) if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Could not write " << nt0id << "!" << endmsg;
136 
137  return StatusCode::SUCCESS;
138 }
139 
140 
141 //=====================================================================
142 // bookNtuple()
143 //=====================================================================
145 
146  ATH_MSG_DEBUG ("Booking Trk::Track Info...");
147 
148  NTupleFilePtr file1(m_ntupleSvc, m_ntupleName);
149  std::string nt0id = m_ntupleName + "/SiCluster";
150  std::string comments = "Silicon Cluster Information";
151 
152  StatusCode sc;
153 
154  NTuplePtr nt0(m_ntupleSvc, nt0id);
155  if (nt0) ATH_MSG_DEBUG ("Ntuple is already booked");
156  else {
157  ATH_MSG_DEBUG ("Attempting to book general ntuple");
158  nt0 = m_ntupleSvc->book(nt0id,CLID_ColumnWiseTuple,comments);
159 
160  if (nt0) {
161 
162  // ---------------------------------------------------------------------
163  // Pixel Clusters
164  sc = nt0->addItem("pixel_clus_nclusters", m_pixel_nclusters, 0, maxclusters);
165  sc = nt0->addItem("pixel_clus_clx", m_pixel_nclusters, m_pixel_clx);
166  sc = nt0->addItem("pixel_clus_cly", m_pixel_nclusters, m_pixel_cly);
167  sc = nt0->addItem("pixel_clus_clz", m_pixel_nclusters, m_pixel_clz);
168  sc = nt0->addItem("pixel_clus_LocX", m_pixel_nclusters, m_pixel_LocX);
169  sc = nt0->addItem("pixel_clus_LocY", m_pixel_nclusters, m_pixel_LocY);
170  sc = nt0->addItem("pixel_clus_groupsize", m_pixel_nclusters, m_pixel_groupsize);
171  sc = nt0->addItem("pixel_clus_layer", m_pixel_nclusters, m_pixel_layer);
172  sc = nt0->addItem("pixel_clus_phi", m_pixel_nclusters, m_pixel_phi);
173  sc = nt0->addItem("pixel/pixel_clus_row",m_pixel_nclusters, m_pixel_clrow, maxclsize);
174  sc = nt0->addItem("pixel/pixel_clus_col",m_pixel_nclusters, m_pixel_clcol, maxclsize);
175  m_pixel_nclusters = 0;
176  // ---------------------------------------------------------------------
177 
178  // ----------------------------------------------------------------------
179  // SCT Clusters
180  sc = nt0->addItem("sct_clus_nclusters", m_sct_nclusters, 0, maxclusters);
181  sc = nt0->addItem("sct_clus_x", m_sct_nclusters, m_sct_clx);
182  sc = nt0->addItem("sct_clus_y", m_sct_nclusters, m_sct_cly);
183  sc = nt0->addItem("sct_clus_z", m_sct_nclusters, m_sct_clz);
184  sc = nt0->addItem("sct_clus_groupsize", m_sct_nclusters, m_sct_groupsize);
185  sc = nt0->addItem("sct_clus_layer", m_sct_nclusters, m_sct_layer);
186  sc = nt0->addItem("sct_clus_eta", m_sct_nclusters, m_sct_eta);
187  sc = nt0->addItem("sct_clus_phi", m_sct_nclusters, m_sct_phi);
188  sc = nt0->addItem("sct_clus_side", m_sct_nclusters, m_sct_side);
189  m_sct_nclusters = 0;
190  // ----------------------------------------------------------------------
191 
192  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Ntuple " << nt0id << " has been booked successfully! " << endmsg;
193  }
194  else
195  ATH_MSG_ERROR ("Error booking ntuple");
196  }
197 
198 }
199 
200 
201 //=====================================================================
202 // RetrieveSCTSiClusters()
203 //=====================================================================
205 
206  ATH_MSG_DEBUG ("In RetrieveSCTSiClusters()");
207  StatusCode sc;
208 
209  // get clusters from TDS
211  if (sc.isFailure() || !m_Sct_clcontainer){
212  ATH_MSG_DEBUG ("SCT Cluster container for SCT not found");
213  return StatusCode::FAILURE;
214  }
215  else ATH_MSG_DEBUG ("SCT Cluster container for SCT found");
216 
217  return sc;
218 }
219 
220 
221 //=====================================================================
222 // RetrievePixelSiClusters()
223 //=====================================================================
225 
226  ATH_MSG_DEBUG ("In RetrievePixelSiClusters()");
227  StatusCode sc;
228 
229  // get pixel clusters from TDS
231  if (sc.isFailure() || !m_Pixel_clcontainer){
232  ATH_MSG_DEBUG ("Pixel Cluster container for Pixels not found");
233  return StatusCode::FAILURE;
234  }
235  else ATH_MSG_DEBUG ("Pixel Cluster container for Pixels found");
236 
237  return sc;
238 }
239 
240 //=====================================================================
241 // FillSCTSiNtuple()
242 //=====================================================================
244 
245  ATH_MSG_DEBUG ("In FillSCTSiNtuple()");
246 
247  m_sct_nclusters = 0;
248 
249  // loop over SCT clusters collections
250  for(SCT_ClusterContainer::const_iterator it=m_Sct_clcontainer->begin();
251  it!=m_Sct_clcontainer->end(); ++it) {
252 
253  const InDet::SCT_ClusterCollection *colNext=&(**it);
254  if (!colNext) continue;
255 
256  // loop over Clusters
258  for(p_clus=colNext->begin(); p_clus!=colNext->end(); ++p_clus) {
259 
260  Identifier clId = (*p_clus)->identify();
261  const InDet::SCT_Cluster& cluster = **p_clus;
262  int GroupSize = cluster.rdoList().size();
263 
264  if ( m_sct_nclusters < maxclusters ) {
265  m_sct_clx[m_sct_nclusters] = cluster.globalPosition().x();
266  m_sct_cly[m_sct_nclusters] = cluster.globalPosition().y();
267  m_sct_clz[m_sct_nclusters] = cluster.globalPosition().z();
272  m_sct_groupsize[m_sct_nclusters] = GroupSize;
273 
274  // Cluster Information
275  if (msgLvl(MSG::DEBUG)) {
276  msg(MSG::DEBUG) << "SCT Cluster: ["
277  << m_sct_layer[m_sct_nclusters] << "/"
278  << m_sct_eta[m_sct_nclusters] << "/"
279  << m_sct_phi[m_sct_nclusters] << "/"
280  << m_sct_side[m_sct_nclusters] << "] - ("
281  << m_sct_clx[m_sct_nclusters] << ","
282  << m_sct_cly[m_sct_nclusters] << ","
283  << m_sct_clz[m_sct_nclusters] << ")";
284  }
285 
286  if (GroupSize>1) {
287  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << " strips: (" << m_sctID->strip(clId) - GroupSize
288  << "," << m_sctID->strip(clId)
289  << ") - GroupSize: " << GroupSize
290  << endmsg;
291  }
292  else {
293  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << " strip: (" << m_sctID->strip(clId)
294  << ") - GroupSize: " << GroupSize
295  << endmsg;
296  }
297 
298  }
299  m_sct_nclusters++;
300  }
301  // if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "number of clusters: " << m_sct_nclusters << endmsg;
302  }
303  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "SCT Clusters: " << m_sct_nclusters << endmsg;
304  return;
305 }
306 
307 //=====================================================================
308 // FillPixelSiNtuple()
309 //=====================================================================
311 
312  ATH_MSG_DEBUG ("In FillPixelSiNtuple()");
313 
314  m_pixel_nclusters = 0;
315 
316  // loop over Pixel clusters collections
317  for(PixelClusterContainer::const_iterator it=m_Pixel_clcontainer->begin();
318  it!=m_Pixel_clcontainer->end(); ++it) {
319 
320  const InDet::PixelClusterCollection *colNext=&(**it);
321  if (!colNext) continue;
322 
323  // loop over Clusters
325  for(p_clus=colNext->begin(); p_clus!=colNext->end(); ++p_clus) {
326  Identifier clId = (*p_clus)->identify();
327 
328  const InDet::PixelCluster& cluster = **p_clus;
329 
330  int GroupSize = cluster.rdoList().size();
331 
332  if (m_pixel_nclusters < maxclusters ){
341  const std::vector<Identifier>& rdoList =cluster.rdoList();
342  std::vector<Identifier>::const_iterator nextRDO;
343  int i(0);
344  for(nextRDO=rdoList.begin(); nextRDO !=rdoList.end(); ++nextRDO){
345  Identifier rdoId = (*nextRDO);
346  if(i<maxclsize){
349  }
350  ++i;
351  }
352 
353  // Cluster Information
354  if (msgLvl(MSG::DEBUG)) {
355  msg(MSG::DEBUG) << "Pixel Cluster (Local Pos): ["
357  << m_pixel_phi[m_pixel_nclusters] << "] - ("
360  << " Groupsize: " << GroupSize << endmsg;
361  }
362 
363  }
365  }
366  }
367  if (msgLvl(MSG::DEBUG)) msg(MSG::DEBUG) << "Pixel Clusters: " << m_pixel_nclusters << endmsg;
368 
369  return;
370 }
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
InDetAlignFillSiCluster::m_sct_phi
NTuple::Array< long > m_sct_phi
SCT Cluster phi.
Definition: InDetAlignFillSiCluster.h:102
PixelID.h
This is an Identifier helper class for the Pixel subdetector. This class is a factory for creating co...
InDetAlignFillSiCluster::m_Sct_clcontainer
const InDet::SCT_ClusterContainer * m_Sct_clcontainer
Definition: InDetAlignFillSiCluster.h:60
InDetAlignFillSiCluster::m_pixel_cly
NTuple::Array< float > m_pixel_cly
Pixel Cluster Y.
Definition: InDetAlignFillSiCluster.h:83
InDetAlignFillSiCluster::~InDetAlignFillSiCluster
virtual ~InDetAlignFillSiCluster()
Definition: InDetAlignFillSiCluster.cxx:60
WriteBchToCool.comments
comments
Definition: WriteBchToCool.py:297
ATH_MSG_FATAL
#define ATH_MSG_FATAL(x)
Definition: AthMsgStreamMacros.h:34
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
SCT_ID.h
This is an Identifier helper class for the SCT subdetector. This class is a factory for creating comp...
PixelID::phi_index
int phi_index(const Identifier &id) const
Definition: PixelID.h:658
InDetAlignFillSiCluster::m_pixelid
const PixelID * m_pixelid
Pixel ID helper
Definition: InDetAlignFillSiCluster.h:53
python.Constants.FATAL
int FATAL
Definition: Control/AthenaCommon/python/Constants.py:19
InDetAlignFillSiCluster::RetrieveSCTSiClusters
StatusCode RetrieveSCTSiClusters()
Definition: InDetAlignFillSiCluster.cxx:204
InDetAlignFillSiCluster::m_Sct_SiClustersName
std::string m_Sct_SiClustersName
Definition: InDetAlignFillSiCluster.h:57
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
InDetAlignFillSiCluster::m_sct_nclusters
NTuple::Item< long > m_sct_nclusters
number of SCT Clusters
Definition: InDetAlignFillSiCluster.h:78
InDetAlignFillSiCluster::m_ntupleSvc
INTupleSvc * m_ntupleSvc
Definition: InDetAlignFillSiCluster.h:51
skel.it
it
Definition: skel.GENtoEVGEN.py:423
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
AthCommonMsg< AlgTool >::msgLvl
bool msgLvl(const MSG::Level lvl) const
Definition: AthCommonMsg.h:30
InDetAlignFillSiCluster::m_sct_side
NTuple::Array< long > m_sct_side
SCT Cluster side.
Definition: InDetAlignFillSiCluster.h:103
InDetAlignFillSiCluster::m_sct_clz
NTuple::Array< float > m_sct_clz
SCT Cluster Z.
Definition: InDetAlignFillSiCluster.h:98
SCT_ID::phi_module
int phi_module(const Identifier &id) const
Definition: SCT_ID.h:740
InDetAlignFillSiCluster::m_sct_cly
NTuple::Array< float > m_sct_cly
SCT Cluster Y.
Definition: InDetAlignFillSiCluster.h:97
InDetAlignFillSiCluster::m_pixel_nclusters
NTuple::Item< long > m_pixel_nclusters
number of Pixel Clusters
Definition: InDetAlignFillSiCluster.h:77
ParamDefs.h
InDetAlignFillSiCluster::m_pixel_groupsize
NTuple::Array< long > m_pixel_groupsize
Pixel Cluster Group Size.
Definition: InDetAlignFillSiCluster.h:85
InDetAlignFillSiCluster::m_pixel_clrow
NTuple::Matrix< long > m_pixel_clrow
Definition: InDetAlignFillSiCluster.h:90
InDetAlignFillSiCluster::m_SCTDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
Definition: InDetAlignFillSiCluster.h:65
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
InDetAlignFillSiCluster::m_sct_eta
NTuple::Array< long > m_sct_eta
SCT Cluster eta.
Definition: InDetAlignFillSiCluster.h:101
AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
InDetAlignFillSiCluster::FillPixelSiNtuple
void FillPixelSiNtuple()
Definition: InDetAlignFillSiCluster.cxx:310
InDetAlignFillSiCluster::FillSiCluster
virtual StatusCode FillSiCluster()
Definition: InDetAlignFillSiCluster.cxx:121
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
lumiFormat.i
int i
Definition: lumiFormat.py:92
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
InDetAlignFillSiCluster::m_pixel_LocX
NTuple::Array< float > m_pixel_LocX
Pixel Cluster Local X.
Definition: InDetAlignFillSiCluster.h:88
InDetAlignFillSiCluster::InDetAlignFillSiCluster
InDetAlignFillSiCluster(const std::string &type, const std::string &name, const IInterface *parent)
Definition: InDetAlignFillSiCluster.cxx:38
test_pyathena.parent
parent
Definition: test_pyathena.py:15
InDetAlignFillSiCluster::m_sct_clx
NTuple::Array< float > m_sct_clx
SCT Cluster X.
Definition: InDetAlignFillSiCluster.h:96
PixelID::eta_index
int eta_index(const Identifier &id) const
Definition: PixelID.h:664
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
InDetAlignFillSiCluster::m_sctID
const SCT_ID * m_sctID
SCT ID helper.
Definition: InDetAlignFillSiCluster.h:54
InDetAlignFillSiCluster::m_pixel_LocY
NTuple::Array< float > m_pixel_LocY
Pixel Cluster Local Y.
Definition: InDetAlignFillSiCluster.h:89
InDetAlignFillSiCluster::m_pixel_clz
NTuple::Array< float > m_pixel_clz
Pixel Cluster Z.
Definition: InDetAlignFillSiCluster.h:84
InDet::SCT_Cluster
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/SCT_Cluster.h:34
InDetAlignFillSiCluster::initialize
virtual StatusCode initialize()
Definition: InDetAlignFillSiCluster.cxx:66
InDetAlignFillSiCluster::m_Pixel_clcontainer
const InDet::PixelClusterContainer * m_Pixel_clcontainer
Definition: InDetAlignFillSiCluster.h:59
PixelID::layer_disk
int layer_disk(const Identifier &id) const
Definition: PixelID.h:626
InDetAlignFillSiCluster::RetrievePixelSiClusters
StatusCode RetrievePixelSiClusters()
Definition: InDetAlignFillSiCluster.cxx:224
InDetAlignFillSiCluster::m_Pixel_SiClustersName
std::string m_Pixel_SiClustersName
Definition: InDetAlignFillSiCluster.h:56
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
PixelClusterContainer.h
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
SCT_ID::layer_disk
int layer_disk(const Identifier &id) const
Definition: SCT_ID.h:734
InDetAlignFillSiCluster::m_pixelDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
Definition: InDetAlignFillSiCluster.h:63
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
InDetAlignFillSiCluster::m_pixel_clcol
NTuple::Matrix< long > m_pixel_clcol
Definition: InDetAlignFillSiCluster.h:91
InDetAlignFillSiCluster::FillSCTSiNtuple
void FillSCTSiNtuple()
Definition: InDetAlignFillSiCluster.cxx:243
InDetAlignFillSiCluster::m_sct_layer
NTuple::Array< long > m_sct_layer
SCT Cluster layer.
Definition: InDetAlignFillSiCluster.h:100
InDet::PixelCluster
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/PixelCluster.h:49
InDet::SiCluster::globalPosition
const Amg::Vector3D & globalPosition() const
return global position reference
SCT_ID::strip
int strip(const Identifier &id) const
Definition: SCT_ID.h:764
InDetAlignFillSiCluster::finalize
virtual StatusCode finalize()
Definition: InDetAlignFillSiCluster.cxx:103
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
InDetAlignFillSiCluster::bookNtuple
void bookNtuple()
Definition: InDetAlignFillSiCluster.cxx:144
InDetAlignFillSiCluster::m_pixel_layer
NTuple::Array< long > m_pixel_layer
Pixel Cluster layer.
Definition: InDetAlignFillSiCluster.h:86
DEBUG
#define DEBUG
Definition: page_access.h:11
SCT_ID::eta_module
int eta_module(const Identifier &id) const
Definition: SCT_ID.h:746
AthCommonMsg< AlgTool >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
SCT_ClusterContainer.h
InDetAlignFillSiCluster::m_pixel_phi
NTuple::Array< long > m_pixel_phi
Pixel Cluster phi.
Definition: InDetAlignFillSiCluster.h:87
InDetAlignFillSiCluster::m_ntupleName
std::string m_ntupleName
ntuple name
Definition: InDetAlignFillSiCluster.h:75
SCT_ID::side
int side(const Identifier &id) const
Definition: SCT_ID.h:752
InDetAlignFillSiCluster::m_pixel_clx
NTuple::Array< float > m_pixel_clx
Pixel Cluster X.
Definition: InDetAlignFillSiCluster.h:82
AthAlgTool
Definition: AthAlgTool.h:26
PixelID::phi_module
int phi_module(const Identifier &id) const
Definition: PixelID.h:644
InDet::SCT_ClusterCollection
Trk::PrepRawDataCollection< SCT_Cluster > SCT_ClusterCollection
Definition: SCT_ClusterCollection.h:26
InDetAlignFillSiCluster::m_sct_groupsize
NTuple::Array< long > m_sct_groupsize
SCT Cluster Group Size.
Definition: InDetAlignFillSiCluster.h:99
InDetAlignFillSiCluster.h
InDet::PixelClusterCollection
Trk::PrepRawDataCollection< PixelCluster > PixelClusterCollection
Definition: PixelClusterCollection.h:26