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

#include <GeoPixelDiskSupports.h>

Inheritance diagram for GeoPixelDiskSupports:
Collaboration diagram for GeoPixelDiskSupports:

Public Member Functions

 GeoPixelDiskSupports (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 GeoVPhysVol * Build () override
int NCylinders ()
void SetCylinder (int n)
double ZPos ()

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

std::vector< double > m_rmin
std::vector< double > m_rmax
std::vector< double > m_halflength
std::vector< double > m_zpos
std::vector< int > m_typeNum
int m_nframe

Detailed Description

Definition at line 11 of file GeoPixelDiskSupports.h.

Constructor & Destructor Documentation

◆ GeoPixelDiskSupports()

GeoPixelDiskSupports::GeoPixelDiskSupports ( 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 15 of file GeoPixelDiskSupports.cxx.

20 : GeoVPixelFactory (ddmgr, mgr, sqliteReader, std::move(mapFPV), std::move(mapAX))
21{
22 //
23 // Initialize the vectors
24 //
25 //
26 // zpos is not needed, but it's here just in case...
27 //
28 for (int ii =0; ii< m_gmt_mgr->PixelDiskNumSupports(); ii++) {
29 double rmin = m_gmt_mgr->PixelDiskSupportRMin(ii);
30 double rmax = m_gmt_mgr->PixelDiskSupportRMax(ii);
31 double halflength = m_gmt_mgr->PixelDiskSupportThickness(ii)/2.;
32 double zpos = 0.;
33 int matTypeNum = m_gmt_mgr->PixelDiskSupportMaterialTypeNum(ii);
34 m_rmin.push_back(rmin);
35 m_rmax.push_back(rmax);
36 m_zpos.push_back(zpos);
37 m_halflength.push_back(halflength);
38 m_typeNum.push_back(matTypeNum);
39 }
40 m_nframe = 0;
41}
std::vector< double > m_rmax
std::vector< int > m_typeNum
std::vector< double > m_halflength
std::vector< double > m_zpos
std::vector< double > m_rmin
PixelGeometryManager * m_gmt_mgr
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)

Member Function Documentation

◆ Build()

GeoVPhysVol * GeoPixelDiskSupports::Build ( )
overridevirtual

Implements GeoVPixelFactory.

Definition at line 44 of file GeoPixelDiskSupports.cxx.

44 {
45 //
46 // Dimensions: (_nframe set with the SetCylinder method)
47 //
48 double rmin = m_rmin[m_nframe];
49 double rmax = m_rmax[m_nframe];
50 double halflength = m_halflength[m_nframe];
52
53 const GeoTube* supportTube = new GeoTube(rmin,rmax,halflength);
54 std::string matName = m_gmt_mgr->getMaterialName("DiskSupport", m_gmt_mgr->GetLD(), typeNum);
55 const GeoMaterial* supportMat = m_mat_mgr->getMaterialForVolume(matName, supportTube->volume());
56 std::string logName = "DiskSup";
57 std::ostringstream o;
58 o << m_nframe;
59 logName = logName+o.str();
60 GeoLogVol* theSupport = new GeoLogVol(logName,supportTube,supportMat);
61 GeoPhysVol* supportPhys = new GeoPhysVol(theSupport);
62 return supportPhys;
63}
InDetMaterialManager * m_mat_mgr
const int typeNum
Definition Assert.h:75

◆ NCylinders()

int GeoPixelDiskSupports::NCylinders ( )
inline

Definition at line 21 of file GeoPixelDiskSupports.h.

21{return m_rmin.size();}

◆ SetCylinder()

void GeoPixelDiskSupports::SetCylinder ( int n)
inline

Definition at line 22 of file GeoPixelDiskSupports.h.

◆ ZPos()

double GeoPixelDiskSupports::ZPos ( )
inline

Definition at line 23 of file GeoPixelDiskSupports.h.

23{return m_zpos[m_nframe];}

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_halflength

std::vector<double> GeoPixelDiskSupports::m_halflength
private

Definition at line 26 of file GeoPixelDiskSupports.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_nframe

int GeoPixelDiskSupports::m_nframe
private

Definition at line 28 of file GeoPixelDiskSupports.h.

◆ m_rmax

std::vector<double> GeoPixelDiskSupports::m_rmax
private

Definition at line 26 of file GeoPixelDiskSupports.h.

◆ m_rmin

std::vector<double> GeoPixelDiskSupports::m_rmin
private

Definition at line 26 of file GeoPixelDiskSupports.h.

◆ m_sqliteReader

GeoModelIO::ReadGeoModel* GeoVPixelFactory::m_sqliteReader
protectedinherited

Definition at line 46 of file GeoVPixelFactory.h.

◆ m_typeNum

std::vector<int> GeoPixelDiskSupports::m_typeNum
private

Definition at line 27 of file GeoPixelDiskSupports.h.

◆ m_zpos

std::vector<double> GeoPixelDiskSupports::m_zpos
private

Definition at line 26 of file GeoPixelDiskSupports.h.


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