ATLAS Offline Software
Public Member Functions | Protected Attributes | Private Attributes | List of all members
GeoPixelIBLFwdServices Class Reference

#include <GeoPixelIBLFwdServices.h>

Inheritance diagram for GeoPixelIBLFwdServices:
Collaboration diagram for GeoPixelIBLFwdServices:

Public Member Functions

 GeoPixelIBLFwdServices (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, int)
 
virtual GeoVPhysVol * Build () override
 
bool isComplexShapeDefined ()
 
GeoPhysVol * getSupportA ()
 
GeoPhysVol * getSupportC ()
 
GeoTransform * getSupportTrfA ()
 
GeoTransform * getSupportTrfC ()
 

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

bool m_bFwdComplexGeometry_CAD
 
bool m_bFwdComplexGeometry_Mod1
 
int m_section
 
GeoPhysVol * m_supportPhysA
 
GeoPhysVol * m_supportPhysC
 
GeoTransform * m_xformSupportA
 
GeoTransform * m_xformSupportC
 

Detailed Description

Definition at line 17 of file GeoPixelIBLFwdServices.h.

Constructor & Destructor Documentation

◆ GeoPixelIBLFwdServices()

GeoPixelIBLFwdServices::GeoPixelIBLFwdServices ( 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,
int  section 
)

Definition at line 23 of file GeoPixelIBLFwdServices.cxx.

29  : GeoVPixelFactory(ddmgr, mgr, sqliteReader, mapFPV, mapAX),
33  m_supportPhysA(nullptr),
34  m_supportPhysC(nullptr),
35  m_xformSupportA(nullptr),
36  m_xformSupportC(nullptr)
37 {
38 }

Member Function Documentation

◆ Build()

GeoVPhysVol * GeoPixelIBLFwdServices::Build ( )
overridevirtual

Implements GeoVPixelFactory.

Definition at line 68 of file GeoPixelIBLFwdServices.cxx.

69 {
70 
71  m_gmt_mgr->msg(MSG::INFO) <<"GeoPixelIBLFwdService - CAD tool design / S. model1 : "<< m_bFwdComplexGeometry_CAD<<"/"<<m_bFwdComplexGeometry_Mod1<<endmsg;
72 
74 
75  m_gmt_mgr->msg(MSG::INFO) <<"Build IBL fwd services - CAD tool design"<<endmsg;
77 
78  fwdSvc.Build();
79  m_supportPhysA = fwdSvc.getSupportA();
80  m_supportPhysC = fwdSvc.getSupportC();
83 
84  if(m_supportPhysA==nullptr) {
85  m_gmt_mgr->msg(MSG::ERROR) <<"Build IBL fwd services - CAD tool design : the PixelGeoModel package is not meant to be used to build this design"<<endmsg;
86  m_gmt_mgr->msg(MSG::ERROR) <<" : check that the GeoTorus object is defined in GeoModelKernel/GeoModel"<<endmsg;
87  }
88  return nullptr;
89  }
90 
91 
93 
94  m_gmt_mgr->msg(MSG::INFO) <<"Build IBL fwd services - S. Menke design"<<endmsg;
96 
97  fwdSvc.Build();
98  m_supportPhysA = fwdSvc.getSupportA();
99  m_supportPhysC = fwdSvc.getSupportC();
100  m_xformSupportA = fwdSvc.getSupportTrfA();
101  m_xformSupportC = fwdSvc.getSupportTrfC();
102 
103  return nullptr;
104  }
105 
106  return nullptr;
107 
108 }

◆ getSupportA()

GeoPhysVol* GeoPixelIBLFwdServices::getSupportA ( )
inline

Definition at line 30 of file GeoPixelIBLFwdServices.h.

30 { return m_supportPhysA; }

◆ getSupportC()

GeoPhysVol* GeoPixelIBLFwdServices::getSupportC ( )
inline

Definition at line 31 of file GeoPixelIBLFwdServices.h.

31 { return m_supportPhysC; }

◆ getSupportTrfA()

GeoTransform* GeoPixelIBLFwdServices::getSupportTrfA ( )
inline

Definition at line 32 of file GeoPixelIBLFwdServices.h.

32 { return m_xformSupportA; }

◆ getSupportTrfC()

GeoTransform* GeoPixelIBLFwdServices::getSupportTrfC ( )
inline

Definition at line 33 of file GeoPixelIBLFwdServices.h.

33 { return m_xformSupportC; }

◆ isComplexShapeDefined()

bool GeoPixelIBLFwdServices::isComplexShapeDefined ( )

Definition at line 41 of file GeoPixelIBLFwdServices.cxx.

42 {
43  // check if the wavy shape option is defined in the DB (based on the definition of the material)
44 
45  bool bFwd02Defined=false;
46  int nbBarrelSvc = m_gmt_mgr->PixelServiceElements("barrel");
47  for(int i=0; i<nbBarrelSvc; i++){
48  std::string volName = m_gmt_mgr->PixelServiceName("barrel",i);
49  if(volName.substr(0,9)=="IBL_Fwd02")bFwd02Defined=true;
50  }
51  int nbSimpleSvc = m_gmt_mgr->PixelServiceElements("simple");
52  for(int i=0; i<nbSimpleSvc; i++){
53  std::string volName = m_gmt_mgr->PixelServiceName("simple",i);
54  if(volName.substr(0,9)=="IBL_Fwd02")bFwd02Defined=true;
55  }
56 
57  if(m_mat_mgr->hasMaterial("pix::IBL_Fwd02_Cable_Wvy") &&!bFwd02Defined) m_bFwdComplexGeometry_CAD = true;
58  if(m_mat_mgr->hasMaterial("pix::IBL_Fwd02_Cable_Wvy_M1") && !bFwd02Defined) m_bFwdComplexGeometry_Mod1 = true;
59 
60  m_gmt_mgr->msg(MSG::INFO) <<"Build IBL fwd services - CAD tool design / S. model1 : "<< m_bFwdComplexGeometry_CAD<<"/"<<m_bFwdComplexGeometry_Mod1<<endmsg;
61 
62 
64 
65 }

Member Data Documentation

◆ m_bFwdComplexGeometry_CAD

bool GeoPixelIBLFwdServices::m_bFwdComplexGeometry_CAD
private

Definition at line 37 of file GeoPixelIBLFwdServices.h.

◆ m_bFwdComplexGeometry_Mod1

bool GeoPixelIBLFwdServices::m_bFwdComplexGeometry_Mod1
private

Definition at line 38 of file GeoPixelIBLFwdServices.h.

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

int GeoPixelIBLFwdServices::m_section
private

Definition at line 40 of file GeoPixelIBLFwdServices.h.

◆ m_sqliteReader

GeoModelIO::ReadGeoModel* GeoVPixelFactory::m_sqliteReader
protectedinherited

Definition at line 46 of file GeoVPixelFactory.h.

◆ m_supportPhysA

GeoPhysVol* GeoPixelIBLFwdServices::m_supportPhysA
private

Definition at line 41 of file GeoPixelIBLFwdServices.h.

◆ m_supportPhysC

GeoPhysVol* GeoPixelIBLFwdServices::m_supportPhysC
private

Definition at line 42 of file GeoPixelIBLFwdServices.h.

◆ m_xformSupportA

GeoTransform* GeoPixelIBLFwdServices::m_xformSupportA
private

Definition at line 43 of file GeoPixelIBLFwdServices.h.

◆ m_xformSupportC

GeoTransform* GeoPixelIBLFwdServices::m_xformSupportC
private

Definition at line 44 of file GeoPixelIBLFwdServices.h.


The documentation for this class was generated from the following files:
GeoPixelIBLFwdSvcCADModel::getSupportC
GeoPhysVol * getSupportC()
Definition: GeoPixelIBLFwdSvcCADModel.h:32
GeoPixelIBLFwdSvcModel1::Build
virtual GeoVPhysVol * Build() override
Definition: GeoPixelIBLFwdSvcModel1.cxx:45
GeoPixelIBLFwdSvcCADModel::getSupportTrfA
GeoTransform * getSupportTrfA()
Definition: GeoPixelIBLFwdSvcCADModel.h:33
GeoPixelIBLFwdServices::m_section
int m_section
Definition: GeoPixelIBLFwdServices.h:40
PixelGeometryManager::msg
MsgStream & msg(MSG::Level lvl) const
Definition: PixelGeometryManager.h:611
GeoPixelIBLFwdSvcCADModel::Build
virtual GeoVPhysVol * Build() override
Definition: GeoPixelIBLFwdSvcCADModel.cxx:49
GeoPixelIBLFwdSvcModel1
Definition: GeoPixelIBLFwdSvcModel1.h:19
GeoPixelIBLFwdSvcModel1::getSupportTrfA
GeoTransform * getSupportTrfA()
Definition: GeoPixelIBLFwdSvcModel1.h:33
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
GeoPixelIBLFwdSvcCADModel::getSupportTrfC
GeoTransform * getSupportTrfC()
Definition: GeoPixelIBLFwdSvcCADModel.h:34
GeoPixelIBLFwdSvcCADModel
Definition: GeoPixelIBLFwdSvcCADModel.h:19
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
GeoPixelIBLFwdServices::m_xformSupportA
GeoTransform * m_xformSupportA
Definition: GeoPixelIBLFwdServices.h:43
lumiFormat.i
int i
Definition: lumiFormat.py:92
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
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)
Definition: GeoVPixelFactory.cxx:9
GeoPixelIBLFwdServices::m_xformSupportC
GeoTransform * m_xformSupportC
Definition: GeoPixelIBLFwdServices.h:44
GeoPixelIBLFwdServices::m_bFwdComplexGeometry_Mod1
bool m_bFwdComplexGeometry_Mod1
Definition: GeoPixelIBLFwdServices.h:38
GeoPixelIBLFwdSvcModel1::getSupportA
GeoPhysVol * getSupportA()
Definition: GeoPixelIBLFwdSvcModel1.h:31
PixelGeometryManager::PixelServiceName
virtual std::string PixelServiceName(const std::string &, int)=0
GeoVPixelFactory::m_mat_mgr
InDetMaterialManager * m_mat_mgr
Definition: GeoVPixelFactory.h:44
GeoPixelIBLFwdSvcCADModel::getSupportA
GeoPhysVol * getSupportA()
Definition: GeoPixelIBLFwdSvcCADModel.h:31
PixelGeometryManager::PixelServiceElements
virtual int PixelServiceElements(const std::string &)=0
GeoPixelIBLFwdSvcModel1::getSupportTrfC
GeoTransform * getSupportTrfC()
Definition: GeoPixelIBLFwdSvcModel1.h:34
GeoPixelIBLFwdServices::m_bFwdComplexGeometry_CAD
bool m_bFwdComplexGeometry_CAD
Definition: GeoPixelIBLFwdServices.h:37
GeoPixelIBLFwdSvcModel1::getSupportC
GeoPhysVol * getSupportC()
Definition: GeoPixelIBLFwdSvcModel1.h:32
section
void section(const std::string &sec)
Definition: TestTriggerMenuAccess.cxx:22
GeoPixelIBLFwdServices::m_supportPhysA
GeoPhysVol * m_supportPhysA
Definition: GeoPixelIBLFwdServices.h:41
GeoPixelIBLFwdServices::m_supportPhysC
GeoPhysVol * m_supportPhysC
Definition: GeoPixelIBLFwdServices.h:42
InDetMaterialManager::hasMaterial
bool hasMaterial(const std::string &materialName) const
Definition: InDetMaterialManager.cxx:101