ATLAS Offline Software
Loading...
Searching...
No Matches
GeoPixelSimpleStaveSupport Class Reference

#include <GeoPixelSimpleStaveSupport.h>

Inheritance diagram for GeoPixelSimpleStaveSupport:
Collaboration diagram for GeoPixelSimpleStaveSupport:

Public Member Functions

 GeoPixelSimpleStaveSupport (InDetDD::PixelDetectorManager *ddmgr, PixelGeometryManager *mgr, GeoModelIO::ReadGeoModel *sqliteReader, std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV, std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX)
virtual ~GeoPixelSimpleStaveSupport ()=default
virtual GeoVPhysVol * Build () override
virtual GeoVPhysVol * getPhysVol () override
virtual const GeoTrf::Transform3D & transform () const override
virtual double thicknessP () const override
virtual double thicknessN () const override
virtual GeoSimplePolygonBrep * computeStaveEnvelopShape (double) override
virtual GeoVPhysVol * getEndblockEnvelopShape (int) override
virtual GeoTransform * getEndblockEnvelopShapeTrf (int) override
virtual double getEndblockZpos () const override
virtual double getServiceZpos () const override
virtual double getEndblockLength () const override
virtual void computeStaveEnvelopTransformAndSize (double, double, double, double, double, double) override
virtual int PixelNModule () const override
virtual int PixelNPlanarModule () const override
virtual int PixelN3DModule () const override
 GeoVPixelFactory (InDetDD::PixelDetectorManager *ddmgr, PixelGeometryManager *mgr, GeoModelIO::ReadGeoModel *sqliteReader, std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV, std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX)

Protected Attributes

PixelGeometryManagerm_gmt_mgr
InDetMaterialManagerm_mat_mgr
InDetDD::PixelDetectorManagerm_DDmgr
GeoModelIO::ReadGeoModel * m_sqliteReader
std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > m_mapFPV
std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > m_mapAX
const double m_epsilon

Private Attributes

PVLink m_physVol {}
GeoTrf::Transform3D m_transform
double m_thicknessP = 0.0
double m_thicknessN = 0.0

Detailed Description

Definition at line 12 of file GeoPixelSimpleStaveSupport.h.

Constructor & Destructor Documentation

◆ GeoPixelSimpleStaveSupport()

GeoPixelSimpleStaveSupport::GeoPixelSimpleStaveSupport ( InDetDD::PixelDetectorManager * ddmgr,
PixelGeometryManager * mgr,
GeoModelIO::ReadGeoModel * sqliteReader,
std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV,
std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX )

Definition at line 18 of file GeoPixelSimpleStaveSupport.cxx.

23 : GeoPixelStaveSupport(ddmgr, mgr, sqliteReader, std::move(mapFPV), std::move(mapAX)),
24 m_transform(GeoTrf::Transform3D::Identity())
25{
27}
virtual GeoVPhysVol * Build() override

◆ ~GeoPixelSimpleStaveSupport()

virtual GeoPixelSimpleStaveSupport::~GeoPixelSimpleStaveSupport ( )
virtualdefault

Member Function Documentation

◆ Build()

GeoVPhysVol * GeoPixelSimpleStaveSupport::Build ( )
overridevirtual

Implements GeoVPixelFactory.

Definition at line 29 of file GeoPixelSimpleStaveSupport.cxx.

29 {
30
31 double thickness = m_gmt_mgr->PixelLadderSupportThickness();
32 double width = m_gmt_mgr->PixelLadderSupportWidth();
33 double length = m_gmt_mgr->PixelLadderSupportLength();
34 double xOffset = m_gmt_mgr->PixelLadderServicesX();
35 double yOffset = m_gmt_mgr->PixelLadderServicesY();
36 int staveIndex = m_gmt_mgr->PixelStaveIndex(m_gmt_mgr->GetLD());
37
38 GeoBox * shape = new GeoBox(0.5*thickness, 0.5*width, 0.5*length);
39 std::string matName = m_gmt_mgr->getMaterialName("StaveSupport", m_gmt_mgr->GetLD(), staveIndex);
40 const GeoMaterial* material = m_mat_mgr->getMaterialForVolume(matName,shape->volume());
41 GeoLogVol* logVol = new GeoLogVol("StaveSupport",shape,material);
42
43 m_transform = GeoTrf::Translate3D(xOffset,yOffset,0);
44
45 m_thicknessP = xOffset + 0.5*thickness;
46 m_thicknessN = -xOffset + 0.5*thickness;
47
48 return new GeoPhysVol(logVol);
49}
double length(const pvec &v)
const double width
PixelGeometryManager * m_gmt_mgr
InDetMaterialManager * m_mat_mgr

◆ computeStaveEnvelopShape()

virtual GeoSimplePolygonBrep * GeoPixelSimpleStaveSupport::computeStaveEnvelopShape ( double )
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 26 of file GeoPixelSimpleStaveSupport.h.

26{ return 0;}

◆ computeStaveEnvelopTransformAndSize()

virtual void GeoPixelSimpleStaveSupport::computeStaveEnvelopTransformAndSize ( double ,
double ,
double ,
double ,
double ,
double  )
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 33 of file GeoPixelSimpleStaveSupport.h.

33{};

◆ GeoVPixelFactory()

GeoVPixelFactory::GeoVPixelFactory ( InDetDD::PixelDetectorManager * ddmgr,
PixelGeometryManager * mgr,
GeoModelIO::ReadGeoModel * sqliteReader,
std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV,
std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX )
inherited

Definition at line 33 of file GeoVPixelFactory.cxx.

16 : m_gmt_mgr (mgr)
17 , m_mat_mgr (m_gmt_mgr->getMaterialManager())
18 , m_DDmgr (ddmgr)
19 , m_sqliteReader(sqliteReader)
20 , m_mapFPV(std::move(mapFPV))
21 , m_mapAX(std::move(mapAX))
22 , m_epsilon(0.0001)
23{
24}
std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > m_mapFPV
std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > m_mapAX
const double m_epsilon
GeoModelIO::ReadGeoModel * m_sqliteReader
InDetDD::PixelDetectorManager * m_DDmgr

◆ getEndblockEnvelopShape()

virtual GeoVPhysVol * GeoPixelSimpleStaveSupport::getEndblockEnvelopShape ( int )
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 27 of file GeoPixelSimpleStaveSupport.h.

27{ return 0;}

◆ getEndblockEnvelopShapeTrf()

virtual GeoTransform * GeoPixelSimpleStaveSupport::getEndblockEnvelopShapeTrf ( int )
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 28 of file GeoPixelSimpleStaveSupport.h.

28{return 0;}

◆ getEndblockLength()

virtual double GeoPixelSimpleStaveSupport::getEndblockLength ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 31 of file GeoPixelSimpleStaveSupport.h.

31{ return 0.; }

◆ getEndblockZpos()

virtual double GeoPixelSimpleStaveSupport::getEndblockZpos ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 29 of file GeoPixelSimpleStaveSupport.h.

29{ return 0.; }

◆ getPhysVol()

virtual GeoVPhysVol * GeoPixelSimpleStaveSupport::getPhysVol ( )
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 22 of file GeoPixelSimpleStaveSupport.h.

22{return m_physVol;}

◆ getServiceZpos()

virtual double GeoPixelSimpleStaveSupport::getServiceZpos ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 30 of file GeoPixelSimpleStaveSupport.h.

30{ return 0; }

◆ PixelN3DModule()

virtual int GeoPixelSimpleStaveSupport::PixelN3DModule ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 37 of file GeoPixelSimpleStaveSupport.h.

37{return 0;}

◆ PixelNModule()

virtual int GeoPixelSimpleStaveSupport::PixelNModule ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 35 of file GeoPixelSimpleStaveSupport.h.

35{return 0;}

◆ PixelNPlanarModule()

virtual int GeoPixelSimpleStaveSupport::PixelNPlanarModule ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 36 of file GeoPixelSimpleStaveSupport.h.

36{return 0;}

◆ thicknessN()

virtual double GeoPixelSimpleStaveSupport::thicknessN ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 25 of file GeoPixelSimpleStaveSupport.h.

25{return m_thicknessN;}

◆ thicknessP()

virtual double GeoPixelSimpleStaveSupport::thicknessP ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 24 of file GeoPixelSimpleStaveSupport.h.

24{return m_thicknessP;}

◆ transform()

virtual const GeoTrf::Transform3D & GeoPixelSimpleStaveSupport::transform ( ) const
inlineoverridevirtual

Implements GeoPixelStaveSupport.

Definition at line 23 of file GeoPixelSimpleStaveSupport.h.

23{return m_transform;}

Member Data Documentation

◆ m_DDmgr

InDetDD::PixelDetectorManager* GeoVPixelFactory::m_DDmgr
protectedinherited

Definition at line 45 of file GeoVPixelFactory.h.

◆ m_epsilon

const double GeoVPixelFactory::m_epsilon
protectedinherited

Definition at line 49 of file GeoVPixelFactory.h.

◆ m_gmt_mgr

PixelGeometryManager* GeoVPixelFactory::m_gmt_mgr
protectedinherited

Definition at line 43 of file GeoVPixelFactory.h.

◆ m_mapAX

std::shared_ptr<std::map<std::string, GeoAlignableTransform*> > GeoVPixelFactory::m_mapAX
protectedinherited

Definition at line 48 of file GeoVPixelFactory.h.

◆ m_mapFPV

std::shared_ptr<std::map<std::string, GeoFullPhysVol*> > GeoVPixelFactory::m_mapFPV
protectedinherited

Definition at line 47 of file GeoVPixelFactory.h.

◆ m_mat_mgr

InDetMaterialManager* GeoVPixelFactory::m_mat_mgr
protectedinherited

Definition at line 44 of file GeoVPixelFactory.h.

◆ m_physVol

PVLink GeoPixelSimpleStaveSupport::m_physVol {}
private

Definition at line 40 of file GeoPixelSimpleStaveSupport.h.

40{};

◆ m_sqliteReader

GeoModelIO::ReadGeoModel* GeoVPixelFactory::m_sqliteReader
protectedinherited

Definition at line 46 of file GeoVPixelFactory.h.

◆ m_thicknessN

double GeoPixelSimpleStaveSupport::m_thicknessN = 0.0
private

Definition at line 43 of file GeoPixelSimpleStaveSupport.h.

◆ m_thicknessP

double GeoPixelSimpleStaveSupport::m_thicknessP = 0.0
private

Definition at line 42 of file GeoPixelSimpleStaveSupport.h.

◆ m_transform

GeoTrf::Transform3D GeoPixelSimpleStaveSupport::m_transform
private

Definition at line 41 of file GeoPixelSimpleStaveSupport.h.


The documentation for this class was generated from the following files: