|
ATLAS Offline Software
|
Go to the documentation of this file.
17 #include "GaudiKernel/MsgStream.h"
19 #include "Identifier/Identifier.h"
44 m_outputFileName(
"IDgeometry.txt"),
47 m_PixelHelper(nullptr),
50 m_TRTDetectorManager(nullptr)
66 return StatusCode::FAILURE;
72 return StatusCode::FAILURE;
79 return StatusCode::FAILURE;
87 return StatusCode::FAILURE;
95 return StatusCode::SUCCESS;
108 return StatusCode::SUCCESS;
110 std::cout <<
"========================================================================================" <<std::endl;
111 std::cout <<
"==================== Getting the Inner Detector Positions ==============================" <<std::endl;
112 std::cout <<
"========================================================================================" <<std::endl;
124 return StatusCode::SUCCESS;
134 return StatusCode::SUCCESS;
143 if (not pixelDetEleHandle.
isValid() or elements==
nullptr) {
160 float pix_x = p3d.x();
161 float pix_y = p3d.y();
162 float pix_z = p3d.z();
165 << pix_barrel_ec <<
" "
166 << pix_layer_disk <<
" "
167 << pix_phi_module <<
" "
168 << pix_eta_module <<
" "
187 if (not sctDetEleHandle.
isValid() or elements==
nullptr) {
203 float sct_x = p3d.x();
204 float sct_y = p3d.y();
205 float sct_z = p3d.z();
208 << sct_barrel_ec <<
" "
209 << sct_layer_disk <<
" "
210 << sct_phi_module <<
" "
211 << sct_eta_module <<
" "
258 for(; trtStrawLayIt != trtStrawLayItE; ++trtStrawLayIt ) {
273 for (; trtStrawIt != trtStrawItE; ++trtStrawIt) {
304 float trt_x = p3d.x();
305 float trt_y = p3d.y();
306 float trt_z = p3d.z();
309 << trt_barrel_ec <<
" "
310 << trt_layer_or_wheel <<
" "
311 << trt_phi_module <<
" "
312 << trt_straw_layer <<
" ";
343 float first_X = firstSampling.x();
344 float first_Y = firstSampling.y();
345 float first_Z = firstSampling.z();
349 float second_X = secondSampling.x();
350 float second_Y = secondSampling.y();
351 float second_Z = secondSampling.z();
354 << trt_barrel_ec <<
" "
355 << trt_layer_or_wheel <<
" "
356 << trt_phi_module <<
" "
357 << trt_straw_layer <<
" "
365 << trt_barrel_ec <<
" "
366 << trt_layer_or_wheel <<
" "
367 << trt_phi_module <<
" "
368 << trt_straw_layer <<
" "
def retrieve(aClass, aKey=None)
This is an Identifier helper class for the Pixel subdetector. This class is a factory for creating co...
const PixelID * m_PixelHelper
Tools.
void writeSimpleTRTPositions()
Writing the Simple (not all straws) TRT Positions.
This is an Identifier helper class for the SCT subdetector. This class is a factory for creating comp...
void writePixelPositions()
Functions to get the data.
StatusCode finalize()
Finalize.
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_pixelDetEleCollKey
Pixel Data.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
This is an Identifier helper class for the TRT subdetector. This class is a factory for creating comp...
void writeSCTPositions()
Writing the SCT Positions.
void writeTRTPositions()
Writing the TRT positions (depends on the level of detail)
bool msgLvl(const MSG::Level lvl) const
void writeTwoTRTPositions(Identifier const &trtId)
Write the TRT Positions, sampling each straw twice Allows the wire-by-wire alignment to be debugged.
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
int phi_module(const Identifier &id) const
void writeDetailedTRTPositions(bool doDoubleSampling=false)
Writing the Detailed (all straws) TRT Positions.
std::string m_outputFileName
const_id_iterator straw_layer_end(void) const
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
int straw(const Identifier &id) const
int phi_index_max(const Identifier &id) const
int eta_index_max(const Identifier &id) const
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
SCT Data.
const SCT_ID * m_SCTHelper
int barrel_ec(const Identifier &id) const
Values of different levels (failure returns 0)
int straw_layer(const Identifier &id) const
int layer_or_wheel(const Identifier &id) const
int nStrips(const MuonGM::TgcReadoutElement &readoutEle, int layer)
int layer_disk(const Identifier &id) const
int eta_module(const Identifier &id) const
const TRT_BaseElement * getElement(Identifier id) const
Access Elements Generically---------------------------------------------—.
int layer_disk(const Identifier &id) const
StatusCode initialize(bool used=true)
const InDetDD::TRT_DetectorManager * m_TRTDetectorManager
Eigen::Matrix< double, 3, 1 > Vector3D
const_expanded_id_iterator straw_end(void) const
int phi_module(const Identifier &id) const
StatusCode execute()
execute
const Amg::Transform3D & strawTransform(unsigned int straw) const
Straw transform - fast access in array, in Tracking frame: Amg.
int eta_module(const Identifier &id) const
int strip_max(const Identifier &id) const
virtual const Amg::Vector3D & center() const override final
Element Surface: center of a straw layer.
const TRT_ID * m_TRTHelper
GetDetectorPositions(const std::string &name, ISvcLocator *pSvcLocator)
Authors: John Alison johnda@hep.upenn.edu
const_expanded_id_iterator straw_begin(void) const
For straw ids, only expanded id iterators are available.
const_id_iterator straw_layer_begin(void) const
Iterators over full set of straw_layer ids. Straw_layer ids are sorted.
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module, int side) const
For a single side of module.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
int phi_module(const Identifier &id) const
StatusCode initialize()
initialize
std::ofstream m_outputFile
Identifier straw_id(int barrel_ec, int phi_module, int layer_or_wheel, int straw_layer, int straw) const
Three ways of getting id for a single straw:
unsigned int m_detailLevel
Name of the Output file.