ATLAS Offline Software
Public Member Functions | Protected Attributes | Private Attributes | List of all members
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 16 of file GeoPixelSimpleStaveSupport.cxx.

21  : GeoPixelStaveSupport(ddmgr, mgr, sqliteReader, mapFPV, mapAX),
22  m_transform(GeoTrf::Transform3D::Identity())
23 {
25 }

◆ ~GeoPixelSimpleStaveSupport()

virtual GeoPixelSimpleStaveSupport::~GeoPixelSimpleStaveSupport ( )
virtualdefault

Member Function Documentation

◆ Build()

GeoVPhysVol * GeoPixelSimpleStaveSupport::Build ( )
overridevirtual

Implements GeoVPixelFactory.

Definition at line 27 of file GeoPixelSimpleStaveSupport.cxx.

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

◆ 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
inherited

Definition at line 33 of file GeoVPixelFactory.cxx.

14  : m_gmt_mgr (mgr)
16  , m_DDmgr (ddmgr)
17  , m_sqliteReader(sqliteReader)
18  , m_mapFPV(mapFPV)
19  , m_mapAX(mapAX)
20  , m_epsilon(0.0001)
21 {
22 }

◆ 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.

◆ 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:
PixelGeometryManager::PixelLadderSupportLength
virtual double PixelLadderSupportLength()=0
PixelGeometryManager::PixelLadderServicesY
virtual double PixelLadderServicesY()=0
PixelGeometryManager::PixelLadderServicesX
virtual double PixelLadderServicesX()=0
GeoPixelSimpleStaveSupport::m_physVol
PVLink m_physVol
Definition: GeoPixelSimpleStaveSupport.h:40
GeoVPixelFactory::m_mapAX
std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > m_mapAX
Definition: GeoVPixelFactory.h:48
GeoVPixelFactory::m_sqliteReader
GeoModelIO::ReadGeoModel * m_sqliteReader
Definition: GeoVPixelFactory.h:46
GeoVPixelFactory::m_DDmgr
InDetDD::PixelDetectorManager * m_DDmgr
Definition: GeoVPixelFactory.h:45
GeoVPixelFactory::m_gmt_mgr
PixelGeometryManager * m_gmt_mgr
Definition: GeoVPixelFactory.h:43
GeoVPixelFactory::m_mapFPV
std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > m_mapFPV
Definition: GeoVPixelFactory.h:47
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
InDetMaterialManager::getMaterialForVolume
const GeoMaterial * getMaterialForVolume(const std::string &materialName, double volume, const std::string &newName="")
Create and get material with a density calculated to give weight in predefined weight table.
Definition: InDetMaterialManager.cxx:460
GeoPixelSimpleStaveSupport::m_thicknessN
double m_thicknessN
Definition: GeoPixelSimpleStaveSupport.h:43
GeoPixelSimpleStaveSupport::Build
virtual GeoVPhysVol * Build() override
Definition: GeoPixelSimpleStaveSupport.cxx:27
GeoVPixelFactory::m_epsilon
const double m_epsilon
Definition: GeoVPixelFactory.h:49
GeoVPixelFactory::m_mat_mgr
InDetMaterialManager * m_mat_mgr
Definition: GeoVPixelFactory.h:44
PixelGeometryManager::PixelLadderSupportWidth
virtual double PixelLadderSupportWidth()=0
PixelGeometryManager::PixelLadderSupportThickness
virtual double PixelLadderSupportThickness()=0
Base_Fragment.width
width
Definition: Sherpa_i/share/common/Base_Fragment.py:59
GeoPixelSimpleStaveSupport::m_transform
GeoTrf::Transform3D m_transform
Definition: GeoPixelSimpleStaveSupport.h:41
GeoPixelStaveSupport
Definition: GeoPixelStaveSupport.h:14
PixelGeometryManager::getMaterialName
virtual std::string getMaterialName(const std::string &volumeName, int layerdisk=0, int typenum=0)=0
length
double length(const pvec &v)
Definition: FPGATrackSimLLPDoubletHoughTransformTool.cxx:26
PixelGeometryManager::PixelStaveIndex
virtual int PixelStaveIndex(int layer)=0
GeoPixelSimpleStaveSupport::m_thicknessP
double m_thicknessP
Definition: GeoPixelSimpleStaveSupport.h:42
PixelGeometryManager::GetLD
virtual int GetLD()=0
PixelGeometryManager::getMaterialManager
virtual InDetMaterialManager * getMaterialManager()=0