ATLAS Offline Software
GeoPixelModule.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef PIXELGEOMODEL_GEOPIXELMODULE_H
6 #define PIXELGEOMODEL_GEOPIXELMODULE_H
7 #include "Identifier/Identifier.h"
8 #include "GeoVPixelFactory.h"
9 
10 #include "GeoModelKernel/GeoIntrusivePtr.h"
11 #include "GeoModelKernel/GeoLogVol.h"
12 class GeoPixelSiCrystal;
13 
15 
16  public:
19  GeoModelIO::ReadGeoModel* sqliteReader,
20  std::shared_ptr<std::map<std::string, GeoFullPhysVol*>> mapFPV,
21  std::shared_ptr<std::map<std::string, GeoAlignableTransform*>> mapAX,
22  GeoPixelSiCrystal &theSensor);
23  GeoPixelModule (const GeoPixelModule&) = delete;
25  virtual ~GeoPixelModule() = default;
26  virtual GeoVPhysVol* Build() override;
27  double Thickness();
28  double ThicknessN();
29  double ThicknessN_noSvc();
30  double ThicknessP();
31  double Width();
32  double Length();
33  double ModuleServiceThickness() const { return m_moduleSvcThickness; }
34  double ModuleServiceWidth() const { return m_moduleSvcWidth; }
35  Identifier getID();
36 
37  private:
38 
39  const GeoShape* addShape(const GeoShape * lastShape, const GeoShape * nextShape, const GeoTrf::Transform3D & trans);
40 
41  GeoIntrusivePtr<const GeoLogVol> m_theModule{nullptr};
44  bool m_isModule3D{false};
45 
47  double m_moduleSvcWidth{0.};
48  int m_nbModuleSvc{0};
49 
50 };
51 
52 #endif
GeoPixelModule::m_nbModuleSvc
int m_nbModuleSvc
Definition: GeoPixelModule.h:48
GeoPixelModule::m_theModule
GeoIntrusivePtr< const GeoLogVol > m_theModule
Definition: GeoPixelModule.h:41
GeoPixelModule::Build
virtual GeoVPhysVol * Build() override
Definition: GeoPixelModule.cxx:117
GeoPixelModule::addShape
const GeoShape * addShape(const GeoShape *lastShape, const GeoShape *nextShape, const GeoTrf::Transform3D &trans)
Definition: GeoPixelModule.cxx:316
GeoPixelModule::ThicknessN
double ThicknessN()
Definition: GeoPixelModule.cxx:236
PixelGeometryManager
Definition: PixelGeometryManager.h:28
GeoPixelModule::m_moduleSvcWidth
double m_moduleSvcWidth
Definition: GeoPixelModule.h:47
GeoPixelModule::Width
double Width()
Definition: GeoPixelModule.cxx:288
GeoPixelModule::ModuleServiceWidth
double ModuleServiceWidth() const
Definition: GeoPixelModule.h:34
GeoPixelModule::ThicknessN_noSvc
double ThicknessN_noSvc()
Definition: GeoPixelModule.cxx:204
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
GeoPixelSiCrystal
Definition: GeoPixelSiCrystal.h:20
GeoPixelModule::ThicknessP
double ThicknessP()
Definition: GeoPixelModule.cxx:269
GeoPixelModule::~GeoPixelModule
virtual ~GeoPixelModule()=default
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
GeoPixelModule::ModuleServiceThickness
double ModuleServiceThickness() const
Definition: GeoPixelModule.h:33
GeoPixelModule::operator=
GeoPixelModule & operator=(const GeoPixelModule &)=delete
GeoPixelModule::Length
double Length()
Definition: GeoPixelModule.cxx:297
GeoPixelModule::m_theSensor
GeoPixelSiCrystal & m_theSensor
Definition: GeoPixelModule.h:43
GeoPixelModule::m_id
Identifier m_id
Definition: GeoPixelModule.h:42
InDetDD::PixelDetectorManager
Definition: PixelDetectorManager.h:47
GeoPixelModule::m_moduleSvcThickness
double m_moduleSvcThickness
Definition: GeoPixelModule.h:46
GeoPixelModule::getID
Identifier getID()
Definition: GeoPixelModule.cxx:311
GeoVPixelFactory.h
GeoPixelModule::m_isModule3D
bool m_isModule3D
Definition: GeoPixelModule.h:44
GeoPixelModule::GeoPixelModule
GeoPixelModule(const GeoPixelModule &)=delete
GeoVPixelFactory
This is the base class for all the pieces of the Pixel detector.
Definition: GeoVPixelFactory.h:31
GeoPixelModule
Definition: GeoPixelModule.h:14
GeoPixelModule::Thickness
double Thickness()
Definition: GeoPixelModule.cxx:283
GeoPixelModule::GeoPixelModule
GeoPixelModule(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, GeoPixelSiCrystal &theSensor)
Definition: GeoPixelModule.cxx:23