ATLAS Offline Software
Public Member Functions | Protected Attributes | List of all members
PixelGeoDC2::GeoPixelBarrel Class Reference

#include <PixelDetectorDC1DC2.h>

Inheritance diagram for PixelGeoDC2::GeoPixelBarrel:
Collaboration diagram for PixelGeoDC2::GeoPixelBarrel:

Public Member Functions

virtual GeoVPhysVol * Build () override
 
 GeoVPixelFactory (InDetDD::PixelDetectorManager *ddmgr, PixelGeometryManager *mgr)
 

Protected Attributes

PixelGeometryManagerm_gmt_mgr {}
 
StoredMaterialManagerm_mat_mgr {}
 
InDetDD::PixelDetectorManagerm_DDmgr {}
 
const double m_epsilon {}
 

Detailed Description

Definition at line 68 of file PixelDetectorDC1DC2.h.

Member Function Documentation

◆ Build()

GeoVPhysVol * GeoPixelBarrel::Build ( )
overridevirtual

Implements PixelGeoDC2::GeoVPixelFactory.

Definition at line 56 of file PixelDetectorDC1DC2.cxx.

56  {
57 
58  //
59  // create the Barrel Mother volume
60  //
61  double rmin = m_gmt_mgr->PixelBarrelRMin();
62  double rmax = m_gmt_mgr->PixelBarrelRMax();
63  double halflength = m_gmt_mgr->PixelBarrelHalfLength();
64  const GeoMaterial* air = m_mat_mgr->getMaterial("std::Air");
65  const GeoTube* barrelTube = new GeoTube(rmin,rmax,halflength);
66  const GeoLogVol* barrelLog = new GeoLogVol("barrelLog",barrelTube,air);
67  GeoPhysVol* barrelPhys = new GeoPhysVol(barrelLog);
68 
69  // Set numerology
71 
72  //
73  // Build the layers inside
74  //
76  std::string lname[3];
77  lname[0] = "InnerLayer";
78  lname[1] = "CenterLayer";
79  lname[2] = "OuterLayer";
80  for(int ii = 0; ii < m_gmt_mgr->PixelBarrelNLayer(); ii++) {
81  //cout << "Layer" << ii << endl;
83  if(m_gmt_mgr->isLDPresent()) {
84  GeoAlignableTransform * xform = new GeoAlignableTransform(GeoTrf::Transform3D::Identity());
85  GeoVPhysVol* layerphys = layer.Build();
86  GeoNameTag *tag = new GeoNameTag(lname[ii]);
87  barrelPhys->add(tag);
88  barrelPhys->add(new GeoIdentifierTag(ii));
89  barrelPhys->add(xform);
90  barrelPhys->add(layerphys);
91 
92  // Store the transform (at level 1)
93  Identifier id = m_gmt_mgr->getIdHelper()->wafer_id(0,ii,0,0);
94  m_DDmgr->addAlignableTransform(1, id, xform, layerphys);
95  } else {
96  m_gmt_mgr->msg(MSG::DEBUG) << "Layer " << ii << " not built" << endmsg;
97  }
98  }
99  if(m_gmt_mgr->DoServices() ) {
100  //
101  // Add the services inside the barrel volume
102  //
103  GeoPixelServices brlsvc = GeoPixelServices(m_DDmgr, m_gmt_mgr, "/Pixel/PixelBarrel");
104  for(int ii =0; ii< brlsvc.NCylinders(); ii++) {
105  brlsvc.SetCylinder(ii);
106  GeoNameTag* tag = new GeoNameTag("Outside Barrel Service");
107  GeoTrf::Translate3D pos(0.,0.,brlsvc.ZPos() );
108  GeoTransform* xform = new GeoTransform(pos);
109  barrelPhys->add(tag);
110  barrelPhys->add(xform);
111  barrelPhys->add(brlsvc.Build() );
112  }
113  }
114  return barrelPhys;
115 }

◆ GeoVPixelFactory()

GeoVPixelFactory::GeoVPixelFactory

Definition at line 45 of file PixelDetectorDC1DC2.cxx.

1551  :
1552  m_gmt_mgr (mgr),
1554  m_DDmgr (ddmgr),
1555  m_epsilon(0.0001)
1556 {
1557 }

Member Data Documentation

◆ m_DDmgr

InDetDD::PixelDetectorManager* PixelGeoDC2::GeoVPixelFactory::m_DDmgr {}
protectedinherited

Definition at line 53 of file PixelDetectorDC1DC2.h.

◆ m_epsilon

const double PixelGeoDC2::GeoVPixelFactory::m_epsilon {}
protectedinherited

Definition at line 54 of file PixelDetectorDC1DC2.h.

◆ m_gmt_mgr

PixelGeometryManager* PixelGeoDC2::GeoVPixelFactory::m_gmt_mgr {}
protectedinherited

Definition at line 51 of file PixelDetectorDC1DC2.h.

◆ m_mat_mgr

StoredMaterialManager* PixelGeoDC2::GeoVPixelFactory::m_mat_mgr {}
protectedinherited

Definition at line 52 of file PixelDetectorDC1DC2.h.


The documentation for this class was generated from the following files:
PixelGeoDC2::PixelGeometryManager::DoServices
virtual bool DoServices()=0
PixelGeoDC2::GeoVPixelFactory::m_gmt_mgr
PixelGeometryManager * m_gmt_mgr
Definition: PixelDetectorDC1DC2.h:51
InDetDD::SiDetectorManager::numerology
const SiNumerology & numerology() const
Access Numerology.
Definition: SiDetectorManager.h:128
PixelGeoDC2::GeoVPixelFactory::m_DDmgr
InDetDD::PixelDetectorManager * m_DDmgr
Definition: PixelDetectorDC1DC2.h:53
PixelGeoDC2::GeoVPixelFactory::m_epsilon
const double m_epsilon
Definition: PixelDetectorDC1DC2.h:54
PixelGeoDC2::GeoPixelServices::Build
virtual GeoVPhysVol * Build() override
Definition: PixelDetectorDC1DC2.cxx:1135
InDetDD::SiNumerology::setNumLayers
void setNumLayers(int nLayers)
Definition: SiNumerology.cxx:27
PixelGeoDC2::GeoVPixelFactory::m_mat_mgr
StoredMaterialManager * m_mat_mgr
Definition: PixelDetectorDC1DC2.h:52
PixelGeoDC2::PixelGeometryManager::PixelBarrelRMin
virtual double PixelBarrelRMin()=0
PixelGeoDC2::PixelGeometryManager::SetCurrentLD
virtual void SetCurrentLD(int i)=0
PixelID::wafer_id
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
Definition: PixelID.h:360
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
PixelGeoDC2::PixelGeometryManager::isLDPresent
virtual bool isLDPresent()=0
PixelGeoDC2::PixelGeometryManager::PixelBarrelRMax
virtual double PixelBarrelRMax()=0
PixelGeoDC2::PixelGeometryManager::PixelBarrelHalfLength
virtual double PixelBarrelHalfLength()=0
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
PixelGeoDC2::PixelGeometryManager::getIdHelper
virtual const PixelID * getIdHelper()=0
PixelGeoDC2::PixelGeometryManager::getMaterialManager
virtual StoredMaterialManager * getMaterialManager()=0
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
AthMessaging::msg
MsgStream & msg() const
The standard message stream.
Definition: AthMessaging.h:164
InDetDD::PixelDetectorManager::addAlignableTransform
virtual void addAlignableTransform(int level, const Identifier &id, GeoAlignableTransform *xf, const GeoVFullPhysVol *child)
Add alignable transforms.
Definition: PixelDetectorManager.cxx:274
PixelGeoDC2::GeoPixelServices::NCylinders
int NCylinders()
Definition: PixelDetectorDC1DC2.h:290
PixelGeoDC2::GeoPixelServices::ZPos
double ZPos()
Definition: PixelDetectorDC1DC2.h:292
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:16
PixelGeoDC2::PixelGeometryManager::PixelBarrelNLayer
virtual int PixelBarrelNLayer()=0
PixelGeoDC2::GeoPixelLayer
Definition: PixelDetectorDC1DC2.h:247
DEBUG
#define DEBUG
Definition: page_access.h:11
StoredMaterialManager::getMaterial
virtual const GeoMaterial * getMaterial(const std::string &name)=0
PixelGeoDC2::GeoPixelServices
Definition: PixelDetectorDC1DC2.h:284
CaloCondBlobAlgs_fillNoiseFromASCII.tag
string tag
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:23
PixelGeoDC2::GeoPixelServices::SetCylinder
void SetCylinder(int n)
Definition: PixelDetectorDC1DC2.h:291
Identifier
Definition: IdentifierFieldParser.cxx:14