ATLAS Offline Software
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
InDet::SCT_ClusterValidationNtupleWriter Class Reference

#include <SCT_ClusterValidationNtupleWriter.h>

Inheritance diagram for InDet::SCT_ClusterValidationNtupleWriter:
Collaboration diagram for InDet::SCT_ClusterValidationNtupleWriter:

Public Member Functions

 SCT_ClusterValidationNtupleWriter (const std::string &name, ISvcLocator *pSvcLocator)
 Standard Athena-Algorithm Constructor. More...
 
 ~SCT_ClusterValidationNtupleWriter ()=default
 Default Destructor. More...
 
virtual StatusCode initialize () override
 standard Athena-Algorithm method More...
 
virtual StatusCode execute () override
 standard Athena-Algorithm method More...
 
virtual StatusCode finalize () override
 standard Athena-Algorithm method More...
 
virtual StatusCode sysInitialize () override
 Override sysInitialize. More...
 
virtual const DataObjIDColl & extraOutputDeps () const override
 Return the list of extra output dependencies. More...
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
 
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

const SCT_IDm_sctid
 SCT ID helper. More...
 
const InDet::SCT_ClusterContainerm_riocontainer
 container of RIOs More...
 
SG::ReadHandleKey< xAOD::EventInfom_eventInfoKey {this, "EventInfoKey", "EventInfo", "key for xAOD::EventInfo"}
 
SG::ReadHandleKey< SCT_ClusterContainerm_jo_riocontainername {this, "SCT_ClusterContainer", "SCT_Clusters", "jobOption: name of container with RIOs"}
 
SG::ReadHandleKey< SCT_RDO_Containerm_dataObjectName {this, "SCT_RDOContainer", "SCT_RDOs", "Data object name: for the SCT this is SCT_RDOs"}
 
SG::ReadHandleKey< SpacePointContainerm_spacePointContainerName {this, "SCT_SpacePointContainer", "SCT_SpacePoints", "SpacePoint container name: for the SCT this is SCT_SpacePoints"}
 
SG::ReadHandleKey< TrackCollectionm_inputTrackCollection {this, "SCT_InputTrackCollection", "CombinedInDetTracks", "TrackCollection name, needed for hits-on-tracks, default is CombinedInDetTracks"}
 
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollectionm_SCTDetEleCollKey {this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"}
 
ToolHandle< ISCT_ByteStreamErrorsToolm_byteStreamErrTool {this, "ByteStreamErrTool", "SCT_ByteStreamErrorsTool", "Tool to retrieve SCT ByteStream Errors"}
 
ToolHandle< ISCT_CablingToolm_cabling {this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"}
 
StringProperty m_ntupleFileName {this, "NtupleFileName", "/NTUPLES/FILE1"}
 jobOption: Ntuple file name More...
 
StringProperty m_ntupleDirName {this, "NtupleDirectoryName", "FitterValidation"}
 jobOption: Ntuple directory name More...
 
StringProperty m_ntupleTreeName {this, "NtupleTreeName", "RIOs"}
 jobOption: Ntuple tree name More...
 
BooleanProperty m_fillCluster {this, "FillCluster", false}
 flag to book, access and fill Cluster or not More...
 
BooleanProperty m_fillRDO {this, "FillRDO", true}
 flag to book, access and fill RDO or not More...
 
BooleanProperty m_fillSpacePoint {this, "FillSpacePoint", false}
 flag to book, access and fill SpacePoints or not More...
 
BooleanProperty m_fillBSErrs {this, "FillBSErrs", true}
 flag to book, access and fill ByteStream errors or not More...
 
BooleanProperty m_doHitsOnTracks {this, "DoHitsOnTracks", false}
 flag to book, access and fill RDO isOnTrack or not More...
 
TTree * m_nt
 pointer to the ntuple tree. More...
 
int m_runNumber
 run number More...
 
int m_eventNumber
 event number for current PRD vector More...
 
int m_lumiBlock
 event lumi block information More...
 
int m_timeStamp
 event time stamp More...
 
int m_bunchCrossing
 event bunch crossing ID More...
 
int m_nRIOs
 number of RIOs, i.e. More...
 
std::vector< float > * m_rioLoc1
 local x coordinate of strip UNIT:mm More...
 
std::vector< float > * m_rioSurfaceX
 global x coordinate of SCT wafer center UNIT:mm More...
 
std::vector< float > * m_rioSurfaceY
 global x coordinate of SCT wafer center UNIT:mm More...
 
std::vector< float > * m_rioSurfaceZ
 global x coordinate of SCT wafer center UNIT:mm More...
 
std::vector< int > * m_SctBarrelEndcap
 from IdHelper: pos/neg barrel (+/-1) and pos/neg endcap (+/-2) UNIT:1:bar, 2:ec More...
 
std::vector< int > * m_SctLayerDisk
 from IdHelper: layer/disk index More...
 
std::vector< int > * m_SctEtaModule
 from IdHelper: module index in eta More...
 
std::vector< int > * m_SctPhiModule
 from IdHelper: module index in phi More...
 
std::vector< int > * m_SctSide
 from IdHelper: side index (0/1) More...
 
std::vector< float > * m_SctDeltaPhi
 please provide description! More...
 
std::vector< float > * m_SctHitErr
 please provide description! More...
 
int m_nSP
 
std::vector< int > * m_sp_bec
 Barrel or endcap index (barrel: 0, endcap: +/-2) for SpacePoint. More...
 
std::vector< int > * m_sp_layer
 index of the SCT-layer in which the SCT wafer is positioned for SpacePoint More...
 
std::vector< int > * m_sp_eta
 eta index of the SCT-layer in which the SCT wafer is positioned for SpacePoint More...
 
std::vector< int > * m_sp_phi
 phi index of the SCT-layer in which the SCT wafer is positioned for SpacePoint More...
 
std::vector< float > * m_sp_x
 x position of SpacePoint in ATLAS coordinate system (mm) More...
 
std::vector< float > * m_sp_y
 y position of SpacePoint in ATLAS coordinate system (mm) More...
 
std::vector< float > * m_sp_z
 z position of SpacePoint in ATLAS coordinate system (mm) More...
 
int m_nRDOs
 Number of RDOs. More...
 
std::vector< int > * m_sct_rdoGroupSize
 RDO group size. More...
 
std::vector< int > * m_sct_rdoIsOnTrack
 RDO on track. More...
 
std::vector< int > * m_sct_layer
 index of the SCT-layer in which the SCT wafer is positioned More...
 
std::vector< int > * m_sct_eta
 eta of the SCT wafer More...
 
std::vector< int > * m_sct_phi
 phi of the SCT wafer More...
 
std::vector< int > * m_sct_side
 side of the SCT wafer (0 or 1) within the SCT module More...
 
std::vector< int > * m_sct_barrelec
 barrel/endcap index (barrel: 0, endcap: +/-2) More...
 
std::vector< int > * m_sct_firstStrip
 index (could be from 0 to 767) of the fired strip within the SCT wafer More...
 
std::vector< int > * m_sct_numHitsInWafer
 number of hits in the SCT wafer More...
 
std::vector< int > * m_sct_waferHash
 index (could be from 0 to 8175) of the fired SCT wafer More...
 
std::vector< int > * m_sct_tbin
 timebin of the RDO More...
 
std::vector< int > * m_sct_rodid
 ROD ID of the RDO. More...
 
std::vector< int > * m_sct_channel
 channel within ROD of the RDO More...
 
int m_totalNumErrors
 total number of BS errors. More...
 
std::vector< int > * m_scterr_bec
 barrel/endcap index (barrel: 0, endcap: +/-2) More...
 
std::vector< int > * m_scterr_layer
 layer (barrel) or disk (endcap) of wafer with the error More...
 
std::vector< int > * m_scterr_eta
 eta of the SCT wafer More...
 
std::vector< int > * m_scterr_phi
 phi of the SCT wafer More...
 
std::vector< int > * m_scterr_side
 side of the SCT wafer (0 or 1) within the module More...
 
std::vector< int > * m_scterr_rodid
 online ID of ROD containing link
More...
 
std::vector< int > * m_scterr_channel
 online channel no. More...
 
std::vector< int > * m_scterr_type
 type of BS error (as defined in SCT_ByteStreamErrs enum in ISCT_ByteStreamErrorsSvc.h) More...
 
DataObjIDColl m_extendedExtraObjects
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Detailed Description

Validation Algorithm to retrieve a SCT_ClusterContainer, loop over the entries and fill the validation ntuple with RIO specific entries.

Author
Sebas.nosp@m.tian.nosp@m..Flei.nosp@m.schm.nosp@m.ann@c.nosp@m.ern..nosp@m.ch
Peter.nosp@m..Van.nosp@m.kov@c.nosp@m.ern..nosp@m.ch

Definition at line 44 of file SCT_ClusterValidationNtupleWriter.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< Algorithm > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ SCT_ClusterValidationNtupleWriter()

InDet::SCT_ClusterValidationNtupleWriter::SCT_ClusterValidationNtupleWriter ( const std::string &  name,
ISvcLocator *  pSvcLocator 
)

Standard Athena-Algorithm Constructor.

Definition at line 32 of file SCT_ClusterValidationNtupleWriter.cxx.

32  :
33  AthAlgorithm(name, pSvcLocator),
34  m_sctid{nullptr},
35  m_riocontainer{nullptr},
36  m_nt{nullptr},
37  m_runNumber{0},
38  m_eventNumber{0},
39  m_lumiBlock{0},
40  m_timeStamp{0},
41  m_bunchCrossing{0},
42  m_nRIOs{0},
43  m_rioLoc1{nullptr},
44  m_rioSurfaceX{nullptr},
45  m_rioSurfaceY{nullptr},
46  m_rioSurfaceZ{nullptr},
47  m_SctBarrelEndcap{nullptr},
48  m_SctLayerDisk{nullptr},
49  m_SctEtaModule{nullptr},
50  m_SctPhiModule{nullptr},
51  m_SctSide{nullptr},
52  m_SctDeltaPhi{nullptr},
53  m_SctHitErr{nullptr},
54  m_nSP{0},
55  m_sp_bec{nullptr},
56  m_sp_layer{nullptr},
57  m_sp_eta{nullptr},
58  m_sp_phi{nullptr},
59  m_sp_x{nullptr},
60  m_sp_y{nullptr},
61  m_sp_z{nullptr},
62  m_nRDOs{0},
63  m_sct_rdoGroupSize{nullptr},
64  m_sct_rdoIsOnTrack{nullptr},
65  m_sct_layer{nullptr},
66  m_sct_eta{nullptr},
67  m_sct_phi{nullptr},
68  m_sct_side{nullptr},
69  m_sct_barrelec{nullptr},
70  m_sct_firstStrip{nullptr},
71  m_sct_numHitsInWafer{nullptr},
72  m_sct_waferHash{nullptr},
73  m_sct_tbin{nullptr},
74  m_sct_rodid{nullptr},
75  m_sct_channel{nullptr},
77  m_scterr_bec{nullptr},
78  m_scterr_layer{nullptr},
79  m_scterr_eta{nullptr},
80  m_scterr_phi{nullptr},
81  m_scterr_side{nullptr},
82  m_scterr_rodid{nullptr},
83  m_scterr_channel{nullptr},
84  m_scterr_type{nullptr}
85 
86  {
87  }

◆ ~SCT_ClusterValidationNtupleWriter()

InDet::SCT_ClusterValidationNtupleWriter::~SCT_ClusterValidationNtupleWriter ( )
default

Default Destructor.

Member Function Documentation

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKeyArray>

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleKeyType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleBase>

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareGaudiProperty ( Gaudi::Property< T > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< Algorithm > >::declareProperty ( Gaudi::Property< T > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ evtStore() [1/2]

ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< Algorithm > >::evtStore ( ) const
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ execute()

StatusCode InDet::SCT_ClusterValidationNtupleWriter::execute ( )
overridevirtual

standard Athena-Algorithm method

end of m_fillRDO

get the position in real space

get online rodid and channel no. from ID hash using cabling

Fill ByteStream errors block if requested.

types of errors are defined in the enum in ISCT_ByteStreamErrorsSvc. At the moment there are 15 different types of BS error.

get online rodid and channel no. from ID hash using cabling

Definition at line 243 of file SCT_ClusterValidationNtupleWriter.cxx.

243  {
244 
245  //-------------
246  // get some event properties
248  if (not eventInfo.isValid()) {
249  ATH_MSG_ERROR( "Could not retrieve event info" );
250  }
251  m_runNumber = eventInfo->runNumber();
252  m_eventNumber = eventInfo->eventNumber();
253  m_lumiBlock = eventInfo->lumiBlock();
254  m_timeStamp = eventInfo->timeStamp();
255  m_bunchCrossing = eventInfo->bcid();
256 
257  // reset variables
258  m_nRIOs = 0;
259  m_rioLoc1->clear();
260  m_rioSurfaceX->clear();
261  m_rioSurfaceY->clear();
262  m_rioSurfaceZ->clear();
263  m_SctBarrelEndcap->clear();
264  m_SctLayerDisk->clear();
265  m_SctEtaModule->clear();
266  m_SctPhiModule->clear();
267  m_SctSide->clear();
268  m_SctDeltaPhi->clear();
269  m_SctHitErr->clear();
270 
271  m_nRDOs = 0;
272  m_sct_rdoGroupSize->clear();
273  m_sct_rdoIsOnTrack->clear();
274  m_sct_layer->clear();
275  m_sct_eta->clear();
276  m_sct_phi->clear();
277  m_sct_side->clear();
278  m_sct_barrelec->clear();
279  m_sct_firstStrip->clear();
280  m_sct_numHitsInWafer->clear();
281  m_sct_waferHash->clear();
282  m_sct_tbin->clear();
283  m_sct_rodid->clear();
284  m_sct_channel->clear();
285 
286  m_nSP = 0;
287  m_sp_bec->clear();
288  m_sp_layer->clear();
289  m_sp_eta->clear();
290  m_sp_phi->clear();
291  m_sp_x->clear();
292  m_sp_y->clear();
293  m_sp_z->clear();
294 
295  m_totalNumErrors = 0;
296  m_scterr_bec->clear();
297  m_scterr_layer->clear();
298  m_scterr_eta->clear();
299  m_scterr_phi->clear();
300  m_scterr_side->clear();
301  m_scterr_rodid->clear();
302  m_scterr_channel->clear();
303  m_scterr_type->clear();
304 
305  // Retrieve containers which are required
306 
307  // Container with SCT RIOs
308  m_riocontainer = nullptr;
309  if ( m_fillCluster.value()) {
311  if (not h_riocontainer.isValid()) {
312  ATH_MSG_DEBUG("Could not get PrepRawDataContainer");
313  } else {
314  m_riocontainer = &*h_riocontainer;
315  }
316  }
317 
318  // SpacePoint container
319  const SpacePointContainer* p_spContainer = nullptr;
320  if (m_fillSpacePoint.value()) {
322  if (not h_spContainer.isValid()) {
323  ATH_MSG_DEBUG("Could not get SpacePointContainer");
324  } else {
325  p_spContainer = &*h_spContainer;
326  }
327  }
328 
329  // RDO container
330  using SCTRawDataType = SCT_RDORawData;
331  const SCT_RDO_Container* p_rdocontainer = nullptr;
332  std::vector<Identifier> RDOsOnTracks;
333  if (m_fillRDO.value()) {
335  if (not h_rdocontainer.isValid()) {
336  ATH_MSG_DEBUG( "Failed to retrieve SCT RDO container" );
337  } else {
338  p_rdocontainer = &*h_rdocontainer;
339  }
340  if (m_doHitsOnTracks.value()) {
341  //Track container
343  if (not tracks.isValid()) {
344  ATH_MSG_ERROR("Track container not found");
345  } else {
346  // assemble list of RDOs on Tracks
347  for (int i=0; i<(int)tracks->size(); i++) {
348  const Trk::Track *track=(*tracks)[i];
349  if (track == nullptr) {
350  ATH_MSG_ERROR("no pointer to track!");
351  break;
352  }
353  // Get pointer to track state on surfaces
354  const Trk::TrackStates* trackStates=track->trackStateOnSurfaces();
355  if (trackStates == nullptr) {
356  ATH_MSG_WARNING("for current track is TrackStateOnSurfaces == Null, no data will be written for this track");
357  } else {
358  // Loop over all track states on surfaces
359  for (Trk::TrackStates::const_iterator it=trackStates->begin(); it!=trackStates->end(); ++it) {
360  // Get pointer to RIO of right type
361  const InDet::SiClusterOnTrack *clus =
362  dynamic_cast<const InDet::SiClusterOnTrack*>((*it)->measurementOnTrack());
363  if (clus) {
364  // Get Pointer to prepRawDataObject
365  const InDet::SiCluster *RawDataClus
366  = dynamic_cast<const InDet::SiCluster*>(clus->prepRawData());
367  if (RawDataClus==nullptr) {
368  ATH_MSG_WARNING("SiCluster WITHOUT prepRawData!!!!");
369  break;
370  }
371  // if Cluster is in SCT ...
372  if (RawDataClus->detectorElement()->isSCT()) {
373 
374  const std::vector<Identifier>& rdoList = RawDataClus->rdoList();
375  RDOsOnTracks.insert(RDOsOnTracks.end(),rdoList.begin(),rdoList.end());
376  }
377  }
378  }
379  }
380  }
381  }
382  } // end of m_doHitsOnTracks
383  }
384 
385 
386  // Fill clusters
387  if (m_fillCluster.value() && m_riocontainer !=nullptr) {
388 
389  int RIOindex = 0;
390 
391  // -----------------------
392  // get all the RIO_Collections in the container
393  InDet::SCT_ClusterContainer::const_iterator containerIterator = m_riocontainer->begin();
394  for( ; containerIterator != m_riocontainer->end(); ++containerIterator) {
395  ATH_MSG_DEBUG( "There are " << (*containerIterator)->size() << " entries in the PrepRawDataCollection" );
396 
397  // ---------------------------------
398  //get all the RIOs in the collection
399 
400  InDet::SCT_ClusterCollection::const_iterator rioIterator = (*containerIterator)->begin();
401  for (; rioIterator != (*containerIterator)->end(); ++rioIterator) {
402  // get the surface center of the RIO
403  if (!(*rioIterator)) {
404  ATH_MSG_WARNING( "nullptr to RIO" );
405  continue;
406  }
407  if (!((*rioIterator)->detectorElement())) {
408  ATH_MSG_WARNING( "in RIO: nullptr to detElement" );
409  continue;
410  }
411 
412  if (m_nRIOs >=500000) {
413  ATH_MSG_WARNING( "reached max. number of RIO entries in the ntuple" );
414  m_nt->Fill();
415  return StatusCode::SUCCESS;
416 
417  }
418  const Amg::Vector3D surfaceGlobPos = (*rioIterator)->detectorElement()->center( (*rioIterator)->identify() ) ;
419  // fill surface global position
420  m_rioSurfaceX->push_back(float(surfaceGlobPos.x()));
421  m_rioSurfaceY->push_back(float(surfaceGlobPos.y()));
422  m_rioSurfaceZ->push_back(float(surfaceGlobPos.z()));
423  // get the local position of the RIO
424  const Amg::Vector2D locPos = (*rioIterator)->localPosition();
425  // fill local position
426  m_rioLoc1->push_back(float(locPos[Trk::locX]));
427 
428  Identifier clId = (*rioIterator)->identify();
429  const SCT_Cluster& cluster = **rioIterator;
430  const InDet::SiWidth& width = cluster.width();
431  m_SctDeltaPhi->push_back(float(width.phiR()));
432  m_SctLayerDisk->push_back(int(m_sctid->layer_disk(clId)));
433  m_SctEtaModule->push_back(int(m_sctid->eta_module(clId)));
434  m_SctPhiModule->push_back(int(m_sctid->phi_module(clId)));
435  m_SctSide->push_back(int(m_sctid->side(clId)));
436  m_SctBarrelEndcap->push_back(int(m_sctid->barrel_ec(clId))) ; //endcap or barrel
437  //determine hit error
438  // bool SctCluster_is_1dim = (cluster.localParameters().parameterKey() == 1);
439  /*if (SctCluster_is_1dim)*/
440  m_SctHitErr->push_back( Amg::error(cluster.localCovariance(),1));
441  // else {
442  // HepSymMatrix CovMat;
443  // CovMat = cluster.localErrorMatrix();covariance();
444  // if (CovMat.num_col() == 2) {
445  // //ATH_MSG_DEBUG( "hit CovMat:" << CovMat[0,0] << " " << CovMat[0,1] << " " );
446  // //ATH_MSG_DEBUG( " " << CovMat[1,0] << " " << CovMat[1,1] << " " );
447  // const double hitErr = sqrt(CovMat[0][0]);
448  // }
449  // m_SctHitErr->push_back(hitErr);
450  //
451  // }
452  //
453  // count the RIO
454  RIOindex++;
455  }
456  }
457  m_nRIOs = RIOindex;
458  }
459 
461 
462  if (m_fillSpacePoint.value() && p_spContainer != nullptr) {
464  std::pair<IdentifierHash, IdentifierHash> sp_clusInfo;
465  //loop over SCT space points collections
466  for(SpacePointContainer::const_iterator it=p_spContainer->begin(); it!=p_spContainer->end(); ++it) {
467  const SpacePointCollection *colNext=&(**it);
468  if (!colNext) continue;
469 
470  //loop over SpacePoints
471  for(p_sp=colNext->begin(); p_sp!=colNext->end(); ++p_sp) {
472  m_nSP++;
473  const Trk::SpacePoint& sp = **p_sp;
474  // Getting [layer/phi] from the one of the two clusters
475  sp_clusInfo = sp.elementIdList();
476  IdentifierHash first_clus = sp_clusInfo.first;
477  Identifier waferId = m_sctid->wafer_id(first_clus);
478  m_sp_bec->push_back(m_sctid->barrel_ec(waferId));
479  m_sp_layer->push_back(m_sctid->layer_disk(waferId));
480  m_sp_phi->push_back(m_sctid->phi_module(waferId));
481  m_sp_eta->push_back(m_sctid->eta_module(waferId));
483  // HepPoint3D point = sp.globalPosition();
484  Amg::Vector3D point = sp.globalPosition();
485  m_sp_x->push_back(point.x());
486  m_sp_y->push_back(point.y());
487  m_sp_z->push_back(point.z());
488  }
489  }
490  }
492  if (m_fillRDO.value() && p_rdocontainer !=nullptr) {
493 
494  SCT_RDO_Container::const_iterator col_it = p_rdocontainer->begin();
495  SCT_RDO_Container::const_iterator lastCol = p_rdocontainer->end();
496  for( ; col_it!= lastCol ; ++col_it) {
497  const InDetRawDataCollection<SCTRawDataType>* SCT_Collection(*col_it);
498 
499  if (!SCT_Collection) continue; // select only SCT RDOs
500  Identifier theWaferIdOfTheRDOCollection = SCT_Collection->identify();
501  unsigned int theHashOfTheRDOCollection= m_sctid->wafer_hash(theWaferIdOfTheRDOCollection);
503  uint32_t onlineID = m_cabling->getOnlineIdFromHash(theHashOfTheRDOCollection);
504  SCT_OnlineId online(onlineID);
505  uint32_t rod = online.rod();
506  uint32_t fibre = online.fibre();
507 
508  DataVector<SCTRawDataType>::const_iterator p_rdo=SCT_Collection->begin() ;
509  DataVector<SCTRawDataType>::const_iterator end_rdo = SCT_Collection->end();
510  int totalNumberOfStrips=0;
511  int thisBec = m_sctid->barrel_ec(theWaferIdOfTheRDOCollection);
512  int thisLayerDisk = m_sctid->layer_disk(theWaferIdOfTheRDOCollection);
513  int thisPhi = m_sctid->phi_module(theWaferIdOfTheRDOCollection);
514  int thisEta = m_sctid->eta_module(theWaferIdOfTheRDOCollection);
515  int thisSide = m_sctid->side(theWaferIdOfTheRDOCollection);
516 
517  m_nRDOs += SCT_Collection->size();
518  for(; p_rdo!=end_rdo; ++p_rdo) {
519 
520  // SCT RDO Group Size;
521  m_sct_rdoGroupSize->push_back((*p_rdo)->getGroupSize());
522  totalNumberOfStrips=totalNumberOfStrips+((*p_rdo)->getGroupSize());
523 
524  Identifier SCT_Identifier = (*p_rdo)->identify();
525 
526  // SCT_ClusterStruct cluster;
528 
529  //Identifier wafer_id = m_sctid->wafer_id(SCT_Identifier);
530 
531  m_sct_layer->push_back(thisLayerDisk);
532  m_sct_eta->push_back(thisEta);
533  m_sct_phi->push_back(thisPhi);
534  m_sct_side->push_back(thisSide);
535  m_sct_barrelec->push_back(thisBec);
536  m_sct_numHitsInWafer->push_back(totalNumberOfStrips);
537  m_sct_waferHash->push_back(theHashOfTheRDOCollection);
538  const SCT3_RawData* rdo3 = dynamic_cast<const SCT3_RawData*>(*p_rdo);
539  if (rdo3!=nullptr) {
540  m_sct_tbin->push_back(rdo3->getTimeBin());
541  } else {
542  m_sct_tbin->push_back(-1);
543  }
544  m_sct_rodid->push_back(rod);
545  m_sct_channel->push_back(fibre);
546 
547  if (m_doHitsOnTracks.value()) {
548  int isOnTrack = 0;
549  if (find(RDOsOnTracks.begin(),RDOsOnTracks.end(),SCT_Identifier) != RDOsOnTracks.end())
550  isOnTrack = 1;
551  m_sct_rdoIsOnTrack->push_back(isOnTrack);
552  }
553  }
554  }
555  }
556 
558  if (m_fillBSErrs.value()) {
559  m_totalNumErrors = 0;
564  const std::set<IdentifierHash> errorSet = m_byteStreamErrTool->getErrorSet(type);
565 
566  int eta=0,phi=0,bec=0,layer=0,side=0;
567  m_totalNumErrors += errorSet.size();
568  for(const auto& idHash : errorSet) {
569  Identifier itId = m_sctid->wafer_id(idHash);
570  layer = m_sctid->layer_disk(itId);
571  side = m_sctid->side(itId);
572  eta = m_sctid->eta_module(itId);
573  phi = m_sctid->phi_module(itId);
574  bec = m_sctid->barrel_ec(itId);
575  m_scterr_type->push_back(type);
576  m_scterr_bec->push_back(bec);
577  m_scterr_layer->push_back(layer);
578  m_scterr_eta->push_back(eta);
579  m_scterr_phi->push_back(phi);
580  m_scterr_side->push_back(side);
581 
583  uint32_t onlineID = m_cabling->getOnlineIdFromHash(idHash);
584  SCT_OnlineId online(onlineID);
585  uint32_t rod = online.rod();
586  uint32_t fibre = online.fibre();
587  m_scterr_rodid->push_back((int)rod);
588  m_scterr_channel->push_back((int)fibre);
589  }
590 
591  }
592  }
593  m_nt->Fill();
594  return StatusCode::SUCCESS;
595 }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase &  ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ extraOutputDeps()

const DataObjIDColl & AthAlgorithm::extraOutputDeps ( ) const
overridevirtualinherited

Return the list of extra output dependencies.

This list is extended to include symlinks implied by inheritance relations.

Definition at line 50 of file AthAlgorithm.cxx.

51 {
52  // If we didn't find any symlinks to add, just return the collection
53  // from the base class. Otherwise, return the extended collection.
54  if (!m_extendedExtraObjects.empty()) {
56  }
57  return Algorithm::extraOutputDeps();
58 }

◆ finalize()

StatusCode InDet::SCT_ClusterValidationNtupleWriter::finalize ( )
overridevirtual

standard Athena-Algorithm method

Definition at line 598 of file SCT_ClusterValidationNtupleWriter.cxx.

598  {
599  ATH_MSG_INFO( "SCT_ClusterValidationNtupleWriter finalize()" );
600  delete m_rioLoc1;
601  delete m_rioSurfaceX;
602  delete m_rioSurfaceY;
603  delete m_rioSurfaceZ;
604  delete m_SctBarrelEndcap;
605  delete m_SctLayerDisk;
606  delete m_SctEtaModule;
607  delete m_SctPhiModule;
608  delete m_SctSide;
609  delete m_SctDeltaPhi;
610  delete m_SctHitErr;
611  delete m_sp_bec;
612  delete m_sp_layer;
613  delete m_sp_eta;
614  delete m_sp_phi;
615  delete m_sp_x;
616  delete m_sp_y;
617  delete m_sp_z;
618  delete m_sct_rdoGroupSize;
619  delete m_sct_rdoIsOnTrack;
620  delete m_sct_layer;
621  delete m_sct_eta;
622  delete m_sct_phi;
623  delete m_sct_side;
624  delete m_sct_barrelec;
625  delete m_sct_firstStrip;
626  delete m_sct_numHitsInWafer;
627  delete m_sct_waferHash;
628  delete m_sct_tbin;
629  delete m_sct_rodid;
630  delete m_sct_channel;
631  delete m_scterr_bec;
632  delete m_scterr_layer;
633  delete m_scterr_eta;
634  delete m_scterr_phi;
635  delete m_scterr_side;
636  delete m_scterr_rodid;
637  delete m_scterr_channel;
638  delete m_scterr_type;
639 
640  m_rioLoc1=nullptr;
641  m_rioSurfaceX=nullptr;
642  m_rioSurfaceY=nullptr;
643  m_rioSurfaceZ=nullptr;
644  m_SctBarrelEndcap=nullptr;
645  m_SctLayerDisk=nullptr;
646  m_SctEtaModule=nullptr;
647  m_SctPhiModule=nullptr;
648  m_SctSide=nullptr;
649  m_SctDeltaPhi=nullptr;
650  m_SctHitErr=nullptr;
651  m_sp_bec=nullptr;
652  m_sp_layer=nullptr;
653  m_sp_eta=nullptr;
654  m_sp_phi=nullptr;
655  m_sp_x=nullptr;
656  m_sp_y=nullptr;
657  m_sp_z=nullptr;
658  m_sct_rdoGroupSize=nullptr;
659  m_sct_rdoIsOnTrack=nullptr;
660  m_sct_layer=nullptr;
661  m_sct_eta=nullptr;
662  m_sct_phi=nullptr;
663  m_sct_side=nullptr;
664  m_sct_barrelec=nullptr;
665  m_sct_firstStrip=nullptr;
666  m_sct_numHitsInWafer=nullptr;
667  m_sct_waferHash=nullptr;
668  m_sct_tbin=nullptr;
669  m_sct_rodid=nullptr;
670  m_sct_channel=nullptr;
671  m_scterr_bec=nullptr;
672  m_scterr_layer=nullptr;
673  m_scterr_eta=nullptr;
674  m_scterr_phi=nullptr;
675  m_scterr_side=nullptr;
676  m_scterr_rodid=nullptr;
677  m_scterr_channel=nullptr;
678  m_scterr_type=nullptr;
679 
680  return StatusCode::SUCCESS;
681 }

◆ initialize()

StatusCode InDet::SCT_ClusterValidationNtupleWriter::initialize ( )
overridevirtual

standard Athena-Algorithm method

Definition at line 89 of file SCT_ClusterValidationNtupleWriter.cxx.

89  {
90 
91  ATH_CHECK(detStore()->retrieve(m_sctid, "SCT_ID"));
92 
93  if (m_fillBSErrs.value()) {
94  ATH_CHECK(m_byteStreamErrTool.retrieve());
95  ATH_MSG_INFO("Retrieved tool " << m_byteStreamErrTool);
96 
97  ATH_CHECK(m_cabling.retrieve());
98  ATH_MSG_INFO("Retrieved tool " << m_cabling);
99  } else {
100  m_byteStreamErrTool.disable();
101  m_cabling.disable();
102  }
103 
104 
105  // ---------------------------
106  // retrive pointer to THistSvc
107  SmartIF<ITHistSvc> tHistSvc{Gaudi::svcLocator()->service("THistSvc")};
108  ATH_CHECK(tHistSvc.isValid());
109 
110  // ---------------------------
111  // create tree and register it to THistSvc
112  m_nt = new TTree(TString(m_ntupleTreeName.value()), "SCT_Clusters");
113  // NB: we must not delete the tree, this is done by THistSvc
114  std::string fullNtupleName = "/"+m_ntupleFileName.value()+"/"+m_ntupleDirName.value()+"/"+m_ntupleTreeName.value();
115  StatusCode sc = tHistSvc->regTree(fullNtupleName, m_nt);
116  if (sc.isFailure()) {
117  ATH_MSG_ERROR( "Unable to register TTree : " << fullNtupleName );
118  return sc;
119  }
120  //-----------------
121  // add items
122  // event info:
123 
124  m_nt->Branch("SCT_RunNumber", &m_runNumber, "run_number/I");
125  m_nt->Branch("SCT_EventNumber", &m_eventNumber, "event_number/I");
126  m_nt->Branch("SCT_LumiBlock", &m_lumiBlock, "lumi_block/I");
127  m_nt->Branch("SCT_TimeStamp", &m_timeStamp, "time_stamp/I");
128  m_nt->Branch("SCT_BunchCrossing", &m_bunchCrossing, "bunch_crossing/I");
129  m_nt->Branch("SCT_nRIOs", &m_nRIOs, "Number_of_RIOs/I");
130 
131  // RIO info:
132  m_rioLoc1 = new std::vector<float>();
133  m_rioSurfaceX = new std::vector<float>();
134  m_rioSurfaceY = new std::vector<float>();
135  m_rioSurfaceZ = new std::vector<float>();
136  // SCT module info
137  m_SctBarrelEndcap= new std::vector<int>();
138  m_SctLayerDisk = new std::vector<int>();
139  m_SctEtaModule = new std::vector<int>();
140  m_SctPhiModule = new std::vector<int>();
141  m_SctSide = new std::vector<int>();
142  m_SctDeltaPhi = new std::vector<float>();
143  m_SctHitErr = new std::vector<float>();
144  // SCT RDO info
145  m_sct_rdoGroupSize = new std::vector<int>();
146  m_sct_rdoIsOnTrack = new std::vector<int>();
147  m_sct_layer = new std::vector<int>();
148  m_sct_eta = new std::vector<int>();
149  m_sct_phi = new std::vector<int>();
150  m_sct_side = new std::vector<int>();
151  m_sct_barrelec = new std::vector<int>();
152  m_sct_firstStrip = new std::vector<int>();
153  m_sct_numHitsInWafer = new std::vector<int>();
154  m_sct_waferHash = new std::vector<int>();
155  m_sct_tbin = new std::vector<int>();
156  m_sct_rodid = new std::vector<int>();
157  m_sct_channel = new std::vector<int>();
158  // SCT SpacePoint info
159  m_sp_bec = new std::vector<int>();
160  m_sp_layer = new std::vector<int>();
161  m_sp_eta = new std::vector<int>();
162  m_sp_phi = new std::vector<int>();
163  m_sp_x = new std::vector<float>();
164  m_sp_y = new std::vector<float>();
165  m_sp_z = new std::vector<float>();
166  // SCT BS error info
167  m_scterr_bec = new std::vector<int>();
168  m_scterr_layer = new std::vector<int>();
169  m_scterr_eta = new std::vector<int>();
170  m_scterr_phi = new std::vector<int>();
171  m_scterr_side = new std::vector<int>();
172  m_scterr_rodid = new std::vector<int>();
173  m_scterr_channel = new std::vector<int>();
174  m_scterr_type = new std::vector<int>();
175 
176  if (m_fillCluster.value()) {
177  m_nt->Branch("SCT_DriftRadius", &m_rioLoc1);
178  m_nt->Branch("SCT_SurfaceX", &m_rioSurfaceX);
179  m_nt->Branch("SCT_SurfaceY", &m_rioSurfaceY);
180  m_nt->Branch("SCT_SurfaceZ", &m_rioSurfaceZ);
181 
182  m_nt->Branch("SCT_BarrelEndcap", &m_SctBarrelEndcap);
183  m_nt->Branch("SCT_LayerDisk", &m_SctLayerDisk);
184  m_nt->Branch("SCT_EtaModule", &m_SctEtaModule);
185  m_nt->Branch("SCT_PhiModule", &m_SctPhiModule);
186  m_nt->Branch("SCT_Side", &m_SctSide);
187  m_nt->Branch("SCT_DeltaPhi", &m_SctDeltaPhi);
188  m_nt->Branch("SCT_HitErr", &m_SctHitErr);
189  }
190  if (m_fillSpacePoint.value()) {
191  m_nt->Branch("SP_SCT_nSpacePoints", &m_nSP);
192  m_nt->Branch("SP_SCT_BarrelEndcap", &m_sp_bec);
193  m_nt->Branch("SP_SCT_EtaModule", &m_sp_eta);
194  m_nt->Branch("SP_SCT_PhiModule", &m_sp_phi);
195  m_nt->Branch("SP_SCT_Layer", &m_sp_layer);
196  m_nt->Branch("SP_SCT_X", &m_sp_x);
197  m_nt->Branch("SP_SCT_Y", &m_sp_y);
198  m_nt->Branch("SP_SCT_Z", &m_sp_z);
199  }
200  if (m_fillRDO.value()) {
201  m_nt->Branch("RDO_SCT_nRDOs", &m_nRDOs);
202  m_nt->Branch("RDO_SCT_RDO_Group_Size", &m_sct_rdoGroupSize);
203  m_nt->Branch("RDO_SCT_Layer", &m_sct_layer);
204  m_nt->Branch("RDO_SCT_Eta", &m_sct_eta);
205  m_nt->Branch("RDO_SCT_Phi", &m_sct_phi);
206  m_nt->Branch("RDO_SCT_Side", &m_sct_side);
207  m_nt->Branch("RDO_SCT_Barrelec", &m_sct_barrelec);
208  m_nt->Branch("RDO_SCT_FirstStrip", &m_sct_firstStrip);
209  m_nt->Branch("RDO_SCT_NumHitsInWafer", &m_sct_numHitsInWafer);
210  m_nt->Branch("RDO_SCT_WaferHash", &m_sct_waferHash);
211  m_nt->Branch("RDO_SCT_TimeBin", &m_sct_tbin);
212  m_nt->Branch("RDO_SCT_RODId", &m_sct_rodid);
213  m_nt->Branch("RDO_SCT_Channel", &m_sct_channel);
214  if (m_doHitsOnTracks.value()) {
215  m_nt->Branch("RDO_SCT_isOnTrack", &m_sct_rdoIsOnTrack);
216  }
217  }
218  if (m_fillBSErrs.value()) {
219  m_nt->Branch("SCTErr_TotalNumBSErrs", &m_totalNumErrors,"numBSerrs/I");
220  m_nt->Branch("SCTErr_BEC", &m_scterr_bec);
221  m_nt->Branch("SCTErr_Layer", &m_scterr_layer);
222  m_nt->Branch("SCTErr_Eta", &m_scterr_eta);
223  m_nt->Branch("SCTErr_Phi", &m_scterr_phi);
224  m_nt->Branch("SCTErr_Side", &m_scterr_side);
225  m_nt->Branch("SCTErr_RODId", &m_scterr_rodid);
226  m_nt->Branch("SCTErr_Channel", &m_scterr_channel);
227  m_nt->Branch("SCTErr_Type", &m_scterr_type);
228  }
229 
230  // Read Handle Key
233  ATH_CHECK( m_dataObjectName.initialize(m_fillRDO.value()) );
235  ATH_CHECK( m_inputTrackCollection.initialize(m_fillRDO.value() and m_doHitsOnTracks.value()) );
236 
237  // Read Cond Handle Key
239 
240  return sc;
241 }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< Algorithm > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ msg() [1/2]

MsgStream& AthCommonMsg< Algorithm >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< Algorithm >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msgLvl()

bool AthCommonMsg< Algorithm >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ outputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ renounce()

std::enable_if_t<std::is_void_v<std::result_of_t<decltype(&T::renounce)(T)> > && !std::is_base_of_v<SG::VarHandleKeyArray, T> && std::is_base_of_v<Gaudi::DataHandle, T>, void> AthCommonDataStore< AthCommonMsg< Algorithm > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::renounceArray ( SG::VarHandleKeyArray handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ sysInitialize()

StatusCode AthAlgorithm::sysInitialize ( )
overridevirtualinherited

Override sysInitialize.

Override sysInitialize from the base class.

Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc

Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc

Reimplemented from AthCommonDataStore< AthCommonMsg< Algorithm > >.

Reimplemented in AthAnalysisAlgorithm, AthFilterAlgorithm, PyAthena::Alg, and AthHistogramAlgorithm.

Definition at line 66 of file AthAlgorithm.cxx.

66  {
68 
69  if (sc.isFailure()) {
70  return sc;
71  }
72  ServiceHandle<ICondSvc> cs("CondSvc",name());
73  for (auto h : outputHandles()) {
74  if (h->isCondition() && h->mode() == Gaudi::DataHandle::Writer) {
75  // do this inside the loop so we don't create the CondSvc until needed
76  if ( cs.retrieve().isFailure() ) {
77  ATH_MSG_WARNING("no CondSvc found: won't autoreg WriteCondHandles");
78  return StatusCode::SUCCESS;
79  }
80  if (cs->regHandle(this,*h).isFailure()) {
81  sc = StatusCode::FAILURE;
82  ATH_MSG_ERROR("unable to register WriteCondHandle " << h->fullKey()
83  << " with CondSvc");
84  }
85  }
86  }
87  return sc;
88 }

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< Algorithm > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< Algorithm > >::updateVHKA ( Gaudi::Details::PropertyBase &  )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308  {
309  // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310  // << " size: " << m_vhka.size() << endmsg;
311  for (auto &a : m_vhka) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_bunchCrossing

int InDet::SCT_ClusterValidationNtupleWriter::m_bunchCrossing
private

event bunch crossing ID

Definition at line 90 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_byteStreamErrTool

ToolHandle<ISCT_ByteStreamErrorsTool> InDet::SCT_ClusterValidationNtupleWriter::m_byteStreamErrTool {this, "ByteStreamErrTool", "SCT_ByteStreamErrorsTool", "Tool to retrieve SCT ByteStream Errors"}
private

Definition at line 71 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_cabling

ToolHandle<ISCT_CablingTool> InDet::SCT_ClusterValidationNtupleWriter::m_cabling {this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"}
private

Definition at line 72 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_dataObjectName

SG::ReadHandleKey<SCT_RDO_Container> InDet::SCT_ClusterValidationNtupleWriter::m_dataObjectName {this, "SCT_RDOContainer", "SCT_RDOs", "Data object name: for the SCT this is SCT_RDOs"}
private

Definition at line 64 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_doHitsOnTracks

BooleanProperty InDet::SCT_ClusterValidationNtupleWriter::m_doHitsOnTracks {this, "DoHitsOnTracks", false}
private

flag to book, access and fill RDO isOnTrack or not

Definition at line 80 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_eventInfoKey

SG::ReadHandleKey<xAOD::EventInfo> InDet::SCT_ClusterValidationNtupleWriter::m_eventInfoKey {this, "EventInfoKey", "EventInfo", "key for xAOD::EventInfo"}
private

Definition at line 62 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_eventNumber

int InDet::SCT_ClusterValidationNtupleWriter::m_eventNumber
private

event number for current PRD vector

Definition at line 87 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_extendedExtraObjects

DataObjIDColl AthAlgorithm::m_extendedExtraObjects
privateinherited

Definition at line 79 of file AthAlgorithm.h.

◆ m_fillBSErrs

BooleanProperty InDet::SCT_ClusterValidationNtupleWriter::m_fillBSErrs {this, "FillBSErrs", true}
private

flag to book, access and fill ByteStream errors or not

Definition at line 79 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_fillCluster

BooleanProperty InDet::SCT_ClusterValidationNtupleWriter::m_fillCluster {this, "FillCluster", false}
private

flag to book, access and fill Cluster or not

Definition at line 76 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_fillRDO

BooleanProperty InDet::SCT_ClusterValidationNtupleWriter::m_fillRDO {this, "FillRDO", true}
private

flag to book, access and fill RDO or not

Definition at line 77 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_fillSpacePoint

BooleanProperty InDet::SCT_ClusterValidationNtupleWriter::m_fillSpacePoint {this, "FillSpacePoint", false}
private

flag to book, access and fill SpacePoints or not

Definition at line 78 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_inputTrackCollection

SG::ReadHandleKey<TrackCollection> InDet::SCT_ClusterValidationNtupleWriter::m_inputTrackCollection {this, "SCT_InputTrackCollection", "CombinedInDetTracks", "TrackCollection name, needed for hits-on-tracks, default is CombinedInDetTracks"}
private

Definition at line 66 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_jo_riocontainername

SG::ReadHandleKey<SCT_ClusterContainer> InDet::SCT_ClusterValidationNtupleWriter::m_jo_riocontainername {this, "SCT_ClusterContainer", "SCT_Clusters", "jobOption: name of container with RIOs"}
private

Definition at line 63 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_lumiBlock

int InDet::SCT_ClusterValidationNtupleWriter::m_lumiBlock
private

event lumi block information

Definition at line 88 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_nRDOs

int InDet::SCT_ClusterValidationNtupleWriter::m_nRDOs
private

Number of RDOs.

Definition at line 117 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_nRIOs

int InDet::SCT_ClusterValidationNtupleWriter::m_nRIOs
private

number of RIOs, i.e.

SCT clusters, in the event. This variable set the size of the vectors with cluster information.

Definition at line 93 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_nSP

int InDet::SCT_ClusterValidationNtupleWriter::m_nSP
private

Definition at line 107 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_nt

TTree* InDet::SCT_ClusterValidationNtupleWriter::m_nt
private

pointer to the ntuple tree.

Definition at line 83 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_ntupleDirName

StringProperty InDet::SCT_ClusterValidationNtupleWriter::m_ntupleDirName {this, "NtupleDirectoryName", "FitterValidation"}
private

jobOption: Ntuple directory name

Definition at line 74 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_ntupleFileName

StringProperty InDet::SCT_ClusterValidationNtupleWriter::m_ntupleFileName {this, "NtupleFileName", "/NTUPLES/FILE1"}
private

jobOption: Ntuple file name

Definition at line 73 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_ntupleTreeName

StringProperty InDet::SCT_ClusterValidationNtupleWriter::m_ntupleTreeName {this, "NtupleTreeName", "RIOs"}
private

jobOption: Ntuple tree name

Definition at line 75 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_riocontainer

const InDet::SCT_ClusterContainer* InDet::SCT_ClusterValidationNtupleWriter::m_riocontainer
private

container of RIOs

Definition at line 61 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_rioLoc1

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_rioLoc1
private

local x coordinate of strip UNIT:mm

Definition at line 94 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_rioSurfaceX

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_rioSurfaceX
private

global x coordinate of SCT wafer center UNIT:mm

Definition at line 95 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_rioSurfaceY

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_rioSurfaceY
private

global x coordinate of SCT wafer center UNIT:mm

Definition at line 96 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_rioSurfaceZ

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_rioSurfaceZ
private

global x coordinate of SCT wafer center UNIT:mm

Definition at line 97 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_runNumber

int InDet::SCT_ClusterValidationNtupleWriter::m_runNumber
private

run number

Definition at line 86 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_barrelec

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_barrelec
private

barrel/endcap index (barrel: 0, endcap: +/-2)

Definition at line 124 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_channel

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_channel
private

channel within ROD of the RDO

Definition at line 130 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_eta

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_eta
private

eta of the SCT wafer

Definition at line 121 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_firstStrip

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_firstStrip
private

index (could be from 0 to 767) of the fired strip within the SCT wafer

Definition at line 125 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_layer

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_layer
private

index of the SCT-layer in which the SCT wafer is positioned

Definition at line 120 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_numHitsInWafer

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_numHitsInWafer
private

number of hits in the SCT wafer

Definition at line 126 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_phi

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_phi
private

phi of the SCT wafer

Definition at line 122 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_rdoGroupSize

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_rdoGroupSize
private

RDO group size.

Definition at line 118 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_rdoIsOnTrack

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_rdoIsOnTrack
private

RDO on track.

Definition at line 119 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_rodid

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_rodid
private

ROD ID of the RDO.

Definition at line 129 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_side

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_side
private

side of the SCT wafer (0 or 1) within the SCT module

Definition at line 123 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_tbin

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_tbin
private

timebin of the RDO

Definition at line 128 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sct_waferHash

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sct_waferHash
private

index (could be from 0 to 8175) of the fired SCT wafer

Definition at line 127 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctBarrelEndcap

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_SctBarrelEndcap
private

from IdHelper: pos/neg barrel (+/-1) and pos/neg endcap (+/-2) UNIT:1:bar, 2:ec

Definition at line 98 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctDeltaPhi

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_SctDeltaPhi
private

please provide description!

Definition at line 103 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SCTDetEleCollKey

SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> InDet::SCT_ClusterValidationNtupleWriter::m_SCTDetEleCollKey {this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"}
private

Definition at line 69 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_bec

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_bec
private

barrel/endcap index (barrel: 0, endcap: +/-2)

Definition at line 139 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_channel

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_channel
private

online channel no.

of link.

Definition at line 145 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_eta

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_eta
private

eta of the SCT wafer

Definition at line 141 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_layer

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_layer
private

layer (barrel) or disk (endcap) of wafer with the error

Definition at line 140 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_phi

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_phi
private

phi of the SCT wafer

Definition at line 142 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_rodid

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_rodid
private

online ID of ROD containing link

Definition at line 144 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_side

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_side
private

side of the SCT wafer (0 or 1) within the module

Definition at line 143 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_scterr_type

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_scterr_type
private

type of BS error (as defined in SCT_ByteStreamErrs enum in ISCT_ByteStreamErrorsSvc.h)

Definition at line 146 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctEtaModule

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_SctEtaModule
private

from IdHelper: module index in eta

Definition at line 100 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctHitErr

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_SctHitErr
private

please provide description!

Definition at line 104 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sctid

const SCT_ID* InDet::SCT_ClusterValidationNtupleWriter::m_sctid
private

SCT ID helper.

Definition at line 60 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctLayerDisk

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_SctLayerDisk
private

from IdHelper: layer/disk index

Definition at line 99 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctPhiModule

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_SctPhiModule
private

from IdHelper: module index in phi

Definition at line 101 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_SctSide

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_SctSide
private

from IdHelper: side index (0/1)

Definition at line 102 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_bec

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_bec
private

Barrel or endcap index (barrel: 0, endcap: +/-2) for SpacePoint.

Definition at line 108 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_eta

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_eta
private

eta index of the SCT-layer in which the SCT wafer is positioned for SpacePoint

Definition at line 110 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_layer

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_layer
private

index of the SCT-layer in which the SCT wafer is positioned for SpacePoint

Definition at line 109 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_phi

std::vector<int>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_phi
private

phi index of the SCT-layer in which the SCT wafer is positioned for SpacePoint

Definition at line 111 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_x

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_x
private

x position of SpacePoint in ATLAS coordinate system (mm)

Definition at line 112 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_y

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_y
private

y position of SpacePoint in ATLAS coordinate system (mm)

Definition at line 113 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_sp_z

std::vector<float>* InDet::SCT_ClusterValidationNtupleWriter::m_sp_z
private

z position of SpacePoint in ATLAS coordinate system (mm)

Definition at line 114 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_spacePointContainerName

SG::ReadHandleKey<SpacePointContainer> InDet::SCT_ClusterValidationNtupleWriter::m_spacePointContainerName {this, "SCT_SpacePointContainer", "SCT_SpacePoints", "SpacePoint container name: for the SCT this is SCT_SpacePoints"}
private

Definition at line 65 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_timeStamp

int InDet::SCT_ClusterValidationNtupleWriter::m_timeStamp
private

event time stamp

Definition at line 89 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_totalNumErrors

int InDet::SCT_ClusterValidationNtupleWriter::m_totalNumErrors
private

total number of BS errors.

Definition at line 138 of file SCT_ClusterValidationNtupleWriter.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< Algorithm > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files:
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
InDet::SCT_ClusterValidationNtupleWriter::m_sp_z
std::vector< float > * m_sp_z
z position of SpacePoint in ATLAS coordinate system (mm)
Definition: SCT_ClusterValidationNtupleWriter.h:114
InDet::SCT_ClusterValidationNtupleWriter::m_sct_eta
std::vector< int > * m_sct_eta
eta of the SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:121
InDet::SCT_ClusterValidationNtupleWriter::m_sct_phi
std::vector< int > * m_sct_phi
phi of the SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:122
Trk::SpacePoint
Definition: Tracking/TrkEvent/TrkSpacePoint/TrkSpacePoint/SpacePoint.h:35
InDet::SCT_ClusterValidationNtupleWriter::m_sct_rdoGroupSize
std::vector< int > * m_sct_rdoGroupSize
RDO group size.
Definition: SCT_ClusterValidationNtupleWriter.h:118
SCT_Identifier
Definition: SCT_Identifier.h:12
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
InDet::SCT_ClusterValidationNtupleWriter::m_eventNumber
int m_eventNumber
event number for current PRD vector
Definition: SCT_ClusterValidationNtupleWriter.h:87
InDet::SCT_ClusterValidationNtupleWriter::m_cabling
ToolHandle< ISCT_CablingTool > m_cabling
Definition: SCT_ClusterValidationNtupleWriter.h:72
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:67
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
Trk::locX
@ locX
Definition: ParamDefs.h:37
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
Trk::Track
The ATLAS Track class.
Definition: Tracking/TrkEvent/TrkTrack/TrkTrack/Track.h:73
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
Trk::SpacePoint::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
Interface method to get the global Position.
Definition: Tracking/TrkEvent/TrkSpacePoint/TrkSpacePoint/SpacePoint.h:146
ParticleGun_SamplingFraction.bec
int bec
Definition: ParticleGun_SamplingFraction.py:89
InDet::SCT_ClusterValidationNtupleWriter::m_sct_side
std::vector< int > * m_sct_side
side of the SCT wafer (0 or 1) within the SCT module
Definition: SCT_ClusterValidationNtupleWriter.h:123
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:83
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
SG::ReadHandle
Definition: StoreGate/StoreGate/ReadHandle.h:70
AthCommonDataStore::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_rodid
std::vector< int > * m_scterr_rodid
online ID of ROD containing link
Definition: SCT_ClusterValidationNtupleWriter.h:144
InDet::SCT_ClusterValidationNtupleWriter::m_sp_bec
std::vector< int > * m_sp_bec
Barrel or endcap index (barrel: 0, endcap: +/-2) for SpacePoint.
Definition: SCT_ClusterValidationNtupleWriter.h:108
InDet::SCT_ClusterValidationNtupleWriter::m_sct_numHitsInWafer
std::vector< int > * m_sct_numHitsInWafer
number of hits in the SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:126
SCT_OnlineId
Definition: SCT_OnlineId.h:22
skel.it
it
Definition: skel.GENtoEVGEN.py:396
InDet::SCT_ClusterValidationNtupleWriter::m_spacePointContainerName
SG::ReadHandleKey< SpacePointContainer > m_spacePointContainerName
Definition: SCT_ClusterValidationNtupleWriter.h:65
makeHists.thisPhi
thisPhi
Definition: makeHists.py:127
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
InDet::SCT_ClusterValidationNtupleWriter::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: SCT_ClusterValidationNtupleWriter.h:62
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
InDet::SCT_ClusterValidationNtupleWriter::m_dataObjectName
SG::ReadHandleKey< SCT_RDO_Container > m_dataObjectName
Definition: SCT_ClusterValidationNtupleWriter.h:64
SCT_RDORawData
Definition: SCT_RDORawData.h:24
SCT_ID::barrel_ec
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
Definition: SCT_ID.h:728
SCT_ID::phi_module
int phi_module(const Identifier &id) const
Definition: SCT_ID.h:740
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
InDetRawDataContainer
Definition: InDetRawDataContainer.h:27
InDet::SCT_ClusterValidationNtupleWriter::m_sct_rdoIsOnTrack
std::vector< int > * m_sct_rdoIsOnTrack
RDO on track.
Definition: SCT_ClusterValidationNtupleWriter.h:119
InDet::SCT_ClusterValidationNtupleWriter::m_sct_rodid
std::vector< int > * m_sct_rodid
ROD ID of the RDO.
Definition: SCT_ClusterValidationNtupleWriter.h:129
InDet::SCT_ClusterValidationNtupleWriter::m_ntupleDirName
StringProperty m_ntupleDirName
jobOption: Ntuple directory name
Definition: SCT_ClusterValidationNtupleWriter.h:74
InDet::SCT_ClusterValidationNtupleWriter::m_nRIOs
int m_nRIOs
number of RIOs, i.e.
Definition: SCT_ClusterValidationNtupleWriter.h:93
SCT_Cluster
Definition: Trigger/TrigAccel/TrigCudaFitter/src/SCT_Cluster.h:8
InDet::SCT_ClusterValidationNtupleWriter::m_SctPhiModule
std::vector< int > * m_SctPhiModule
from IdHelper: module index in phi
Definition: SCT_ClusterValidationNtupleWriter.h:101
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
AthCommonDataStore< AthCommonMsg< Algorithm > >::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:95
InDet::SCT_ClusterValidationNtupleWriter::m_SCTDetEleCollKey
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
Definition: SCT_ClusterValidationNtupleWriter.h:69
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
InDet::SCT_ClusterValidationNtupleWriter::m_lumiBlock
int m_lumiBlock
event lumi block information
Definition: SCT_ClusterValidationNtupleWriter.h:88
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
TRT::Hit::side
@ side
Definition: HitInfo.h:83
TileSynchronizeBch.online
online
Definition: TileSynchronizeBch.py:88
InDet::SCT_ClusterValidationNtupleWriter::m_timeStamp
int m_timeStamp
event time stamp
Definition: SCT_ClusterValidationNtupleWriter.h:89
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_side
std::vector< int > * m_scterr_side
side of the SCT wafer (0 or 1) within the module
Definition: SCT_ClusterValidationNtupleWriter.h:143
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
AthCommonDataStore
Definition: AthCommonDataStore.h:52
AthAlgorithm::sysInitialize
virtual StatusCode sysInitialize() override
Override sysInitialize.
Definition: AthAlgorithm.cxx:66
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
InDet::SCT_ClusterValidationNtupleWriter::m_SctHitErr
std::vector< float > * m_SctHitErr
please provide description!
Definition: SCT_ClusterValidationNtupleWriter.h:104
InDet::SCT_ClusterValidationNtupleWriter::m_doHitsOnTracks
BooleanProperty m_doHitsOnTracks
flag to book, access and fill RDO isOnTrack or not
Definition: SCT_ClusterValidationNtupleWriter.h:80
InDet::SCT_ClusterValidationNtupleWriter::m_SctLayerDisk
std::vector< int > * m_SctLayerDisk
from IdHelper: layer/disk index
Definition: SCT_ClusterValidationNtupleWriter.h:99
AthCommonDataStore< AthCommonMsg< Algorithm > >::outputHandles
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
InDet::SCT_ClusterValidationNtupleWriter::m_rioSurfaceX
std::vector< float > * m_rioSurfaceX
global x coordinate of SCT wafer center UNIT:mm
Definition: SCT_ClusterValidationNtupleWriter.h:95
lumiFormat.i
int i
Definition: lumiFormat.py:85
InDet::SCT_ClusterValidationNtupleWriter::m_fillRDO
BooleanProperty m_fillRDO
flag to book, access and fill RDO or not
Definition: SCT_ClusterValidationNtupleWriter.h:77
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_layer
std::vector< int > * m_scterr_layer
layer (barrel) or disk (endcap) of wafer with the error
Definition: SCT_ClusterValidationNtupleWriter.h:140
SCT3_RawData
Definition: SCT3_RawData.h:24
InDet::SCT_ClusterValidationNtupleWriter::m_sct_channel
std::vector< int > * m_sct_channel
channel within ROD of the RDO
Definition: SCT_ClusterValidationNtupleWriter.h:130
InDet::SCT_ClusterValidationNtupleWriter::m_fillCluster
BooleanProperty m_fillCluster
flag to book, access and fill Cluster or not
Definition: SCT_ClusterValidationNtupleWriter.h:76
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
InDet::SCT_ClusterValidationNtupleWriter::m_runNumber
int m_runNumber
run number
Definition: SCT_ClusterValidationNtupleWriter.h:86
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_channel
std::vector< int > * m_scterr_channel
online channel no.
Definition: SCT_ClusterValidationNtupleWriter.h:145
InDet::SCT_ClusterValidationNtupleWriter::m_rioLoc1
std::vector< float > * m_rioLoc1
local x coordinate of strip UNIT:mm
Definition: SCT_ClusterValidationNtupleWriter.h:94
InDet::SCT_ClusterValidationNtupleWriter::m_jo_riocontainername
SG::ReadHandleKey< SCT_ClusterContainer > m_jo_riocontainername
Definition: SCT_ClusterValidationNtupleWriter.h:63
InDet::SCT_ClusterValidationNtupleWriter::m_sp_x
std::vector< float > * m_sp_x
x position of SpacePoint in ATLAS coordinate system (mm)
Definition: SCT_ClusterValidationNtupleWriter.h:112
InDet::SCT_ClusterValidationNtupleWriter::m_SctBarrelEndcap
std::vector< int > * m_SctBarrelEndcap
from IdHelper: pos/neg barrel (+/-1) and pos/neg endcap (+/-2) UNIT:1:bar, 2:ec
Definition: SCT_ClusterValidationNtupleWriter.h:98
InDetRawDataCollection
Definition: InDetRawDataCollection.h:31
InDet::SCT_ClusterValidationNtupleWriter::m_ntupleFileName
StringProperty m_ntupleFileName
jobOption: Ntuple file name
Definition: SCT_ClusterValidationNtupleWriter.h:73
InDet::SCT_ClusterValidationNtupleWriter::m_sct_firstStrip
std::vector< int > * m_sct_firstStrip
index (could be from 0 to 767) of the fired strip within the SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:125
InDet::SCT_ClusterValidationNtupleWriter::m_sp_eta
std::vector< int > * m_sp_eta
eta index of the SCT-layer in which the SCT wafer is positioned for SpacePoint
Definition: SCT_ClusterValidationNtupleWriter.h:110
InDet::SCT_ClusterValidationNtupleWriter::m_SctSide
std::vector< int > * m_SctSide
from IdHelper: side index (0/1)
Definition: SCT_ClusterValidationNtupleWriter.h:102
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
IdentifiableContainerMT::end
const_iterator end() const
return const_iterator for end of container
Definition: IdentifiableContainerMT.h:239
SCT3_RawData::getTimeBin
int getTimeBin() const
Definition: SCT3_RawData.h:92
SCT_ID::wafer_hash
IdentifierHash wafer_hash(const Identifier &wafer_id) const
wafer hash from id - optimized
Definition: SCT_ID.h:492
IdentifiableContainerMT::const_iterator
Definition: IdentifiableContainerMT.h:79
AthCommonDataStore< AthCommonMsg< Algorithm > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
InDet::SCT_ClusterValidationNtupleWriter::m_sct_waferHash
std::vector< int > * m_sct_waferHash
index (could be from 0 to 8175) of the fired SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:127
IdentifiableContainerMT::begin
const_iterator begin() const
return const_iterator for first entry
Definition: IdentifiableContainerMT.h:233
SG::VarHandleKey::initialize
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleKey.cxx:103
RunTileMonitoring.rod
rod
Definition: RunTileMonitoring.py:134
InDet::SCT_ClusterValidationNtupleWriter::m_ntupleTreeName
StringProperty m_ntupleTreeName
jobOption: Ntuple tree name
Definition: SCT_ClusterValidationNtupleWriter.h:75
InDet::SCT_ClusterValidationNtupleWriter::m_SctEtaModule
std::vector< int > * m_SctEtaModule
from IdHelper: module index in eta
Definition: SCT_ClusterValidationNtupleWriter.h:100
InDet::SCT_ClusterValidationNtupleWriter::m_SctDeltaPhi
std::vector< float > * m_SctDeltaPhi
please provide description!
Definition: SCT_ClusterValidationNtupleWriter.h:103
DataVector< const Trk::TrackStateOnSurface >
InDet::SCT_ClusterValidationNtupleWriter::m_totalNumErrors
int m_totalNumErrors
total number of BS errors.
Definition: SCT_ClusterValidationNtupleWriter.h:138
InDet::SiCluster::detectorElement
virtual const InDetDD::SiDetectorElement * detectorElement() const override final
return the detector element corresponding to this PRD The pointer will be zero if the det el is not d...
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
InDet::SCT_ClusterValidationNtupleWriter::m_nSP
int m_nSP
Definition: SCT_ClusterValidationNtupleWriter.h:107
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
Trk::SpacePoint::elementIdList
const std::pair< IdentifierHash, IdentifierHash > & elementIdList() const
return the pair of Ids of the element by reference
Definition: Tracking/TrkEvent/TrkSpacePoint/TrkSpacePoint/SpacePoint.h:122
Amg::error
double error(const Amg::MatrixX &mat, int index)
return diagonal error of the matrix caller should ensure the matrix is symmetric and the index is in ...
Definition: EventPrimitivesHelpers.h:40
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_type
std::vector< int > * m_scterr_type
type of BS error (as defined in SCT_ByteStreamErrs enum in ISCT_ByteStreamErrorsSvc....
Definition: SCT_ClusterValidationNtupleWriter.h:146
SCT_ID::layer_disk
int layer_disk(const Identifier &id) const
Definition: SCT_ID.h:734
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Trk::RIO_OnTrack::prepRawData
virtual const Trk::PrepRawData * prepRawData() const =0
returns the PrepRawData (also known as RIO) object to which this RIO_OnTrack is associated.
InDet::SCT_ClusterValidationNtupleWriter::m_rioSurfaceZ
std::vector< float > * m_rioSurfaceZ
global x coordinate of SCT wafer center UNIT:mm
Definition: SCT_ClusterValidationNtupleWriter.h:97
InDet::SCT_ClusterValidationNtupleWriter::m_fillSpacePoint
BooleanProperty m_fillSpacePoint
flag to book, access and fill SpacePoints or not
Definition: SCT_ClusterValidationNtupleWriter.h:78
InDet::SCT_ClusterValidationNtupleWriter::m_sp_y
std::vector< float > * m_sp_y
y position of SpacePoint in ATLAS coordinate system (mm)
Definition: SCT_ClusterValidationNtupleWriter.h:113
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
InDet::SCT_ClusterValidationNtupleWriter::m_nRDOs
int m_nRDOs
Number of RDOs.
Definition: SCT_ClusterValidationNtupleWriter.h:117
InDet::SCT_ClusterValidationNtupleWriter::m_sct_tbin
std::vector< int > * m_sct_tbin
timebin of the RDO
Definition: SCT_ClusterValidationNtupleWriter.h:128
AthAlgorithm::m_extendedExtraObjects
DataObjIDColl m_extendedExtraObjects
Definition: AthAlgorithm.h:79
InDet::SCT_ClusterValidationNtupleWriter::m_sct_layer
std::vector< int > * m_sct_layer
index of the SCT-layer in which the SCT wafer is positioned
Definition: SCT_ClusterValidationNtupleWriter.h:120
a
TList * a
Definition: liststreamerinfos.cxx:10
h
Base_Fragment.width
width
Definition: Sherpa_i/share/common/Base_Fragment.py:59
InDet::SCT_ClusterValidationNtupleWriter::m_sct_barrelec
std::vector< int > * m_sct_barrelec
barrel/endcap index (barrel: 0, endcap: +/-2)
Definition: SCT_ClusterValidationNtupleWriter.h:124
InDet::SCT_ClusterValidationNtupleWriter::m_sctid
const SCT_ID * m_sctid
SCT ID helper.
Definition: SCT_ClusterValidationNtupleWriter.h:60
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
SCT_ID::strip
int strip(const Identifier &id) const
Definition: SCT_ID.h:764
SCT_FlaggedCondEnum::NUM_ERROR_TYPES
@ NUM_ERROR_TYPES
Definition: SCT_FlaggedCondEnum.h:28
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
InDet::SCT_ClusterValidationNtupleWriter::m_sp_layer
std::vector< int > * m_sp_layer
index of the SCT-layer in which the SCT wafer is positioned for SpacePoint
Definition: SCT_ClusterValidationNtupleWriter.h:109
SpacePointCollection
Definition: SpacePointCollection.h:40
SCT_ID::eta_module
int eta_module(const Identifier &id) const
Definition: SCT_ID.h:746
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_eta
std::vector< int > * m_scterr_eta
eta of the SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:141
InDet::SiWidth
Definition: SiWidth.h:25
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:623
InDet::SCT_ClusterValidationNtupleWriter::m_fillBSErrs
BooleanProperty m_fillBSErrs
flag to book, access and fill ByteStream errors or not
Definition: SCT_ClusterValidationNtupleWriter.h:79
InDet::SCT_ClusterValidationNtupleWriter::m_bunchCrossing
int m_bunchCrossing
event bunch crossing ID
Definition: SCT_ClusterValidationNtupleWriter.h:90
SCT_ID::side
int side(const Identifier &id) const
Definition: SCT_ID.h:752
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
InDetDD::SiDetectorElement::isSCT
bool isSCT() const
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:798
SpacePointContainer
Definition: Tracking/TrkEvent/TrkSpacePoint/TrkSpacePoint/SpacePointContainer.h:29
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
LHEF::Writer
Pythia8::Writer Writer
Definition: Prophecy4fMerger.cxx:12
SCT_ID::wafer_id
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int side) const
For a single side of module.
Definition: SCT_ID.h:464
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
InDet::SCT_ClusterValidationNtupleWriter::m_rioSurfaceY
std::vector< float > * m_rioSurfaceY
global x coordinate of SCT wafer center UNIT:mm
Definition: SCT_ClusterValidationNtupleWriter.h:96
InDet::SCT_ClusterValidationNtupleWriter::m_byteStreamErrTool
ToolHandle< ISCT_ByteStreamErrorsTool > m_byteStreamErrTool
Definition: SCT_ClusterValidationNtupleWriter.h:71
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_phi
std::vector< int > * m_scterr_phi
phi of the SCT wafer
Definition: SCT_ClusterValidationNtupleWriter.h:142
InDet::SCT_ClusterValidationNtupleWriter::m_riocontainer
const InDet::SCT_ClusterContainer * m_riocontainer
container of RIOs
Definition: SCT_ClusterValidationNtupleWriter.h:61
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
InDet::SiCluster
Definition: InnerDetector/InDetRecEvent/InDetPrepRawData/InDetPrepRawData/SiCluster.h:40
InDet::SCT_ClusterValidationNtupleWriter::m_nt
TTree * m_nt
pointer to the ntuple tree.
Definition: SCT_ClusterValidationNtupleWriter.h:83
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
fitman.k
k
Definition: fitman.py:528
InDet::SCT_ClusterValidationNtupleWriter::m_sp_phi
std::vector< int > * m_sp_phi
phi index of the SCT-layer in which the SCT wafer is positioned for SpacePoint
Definition: SCT_ClusterValidationNtupleWriter.h:111
InDet::SCT_ClusterValidationNtupleWriter::m_inputTrackCollection
SG::ReadHandleKey< TrackCollection > m_inputTrackCollection
Definition: SCT_ClusterValidationNtupleWriter.h:66
InDet::SiClusterOnTrack
Definition: SiClusterOnTrack.h:39
ServiceHandle< ICondSvc >
InDet::SCT_ClusterValidationNtupleWriter::m_scterr_bec
std::vector< int > * m_scterr_bec
barrel/endcap index (barrel: 0, endcap: +/-2)
Definition: SCT_ClusterValidationNtupleWriter.h:139
Identifier
Definition: IdentifierFieldParser.cxx:14