ATLAS Offline Software
GeoPixelStaveSupport.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GEOPIXELSTAVESUPPORT_H
6 #define GEOPIXELSTAVESUPPORT_H
7 
8 #include "GeoVPixelFactory.h"
10 #include "GeoModelKernel/GeoDefinitions.h"
11 #include "GeoModelKernel/GeoSimplePolygonBrep.h"
12 #include "GeoModelKernel/GeoTransform.h"
13 
15 
16 public:
18  virtual GeoVPhysVol* getPhysVol() = 0;
19  virtual const GeoTrf::Transform3D & transform() const = 0;
20  virtual double thicknessP() const = 0;
21  virtual double thicknessN() const = 0;
22  virtual GeoSimplePolygonBrep* computeStaveEnvelopShape(double) = 0;
23  virtual GeoVPhysVol* getEndblockEnvelopShape(int) = 0;
24  virtual GeoTransform* getEndblockEnvelopShapeTrf(int) =0;
25  virtual double getEndblockZpos() const = 0;
26  virtual double getServiceZpos() const =0;
27  virtual double getEndblockLength() const = 0;
28 
29  virtual void computeStaveEnvelopTransformAndSize(double moduleThickN,double moduleThickP, double moduleWidth,
30  double moduleThickN3D,double moduleThickP3D, double moduleWidth3D) =0;
31  virtual int PixelNModule() const = 0;
32  virtual int PixelNPlanarModule() const = 0;
33  virtual int PixelN3DModule() const = 0;
34 
35 };
36 
37 #endif
38 
39 
GeoPixelStaveSupport::getEndblockEnvelopShape
virtual GeoVPhysVol * getEndblockEnvelopShape(int)=0
GeoPixelStaveSupport::computeStaveEnvelopShape
virtual GeoSimplePolygonBrep * computeStaveEnvelopShape(double)=0
GeoPixelStaveSupport::transform
virtual const GeoTrf::Transform3D & transform() const =0
GeoPixelStaveSupport::PixelN3DModule
virtual int PixelN3DModule() const =0
GeoPixelStaveSupport::computeStaveEnvelopTransformAndSize
virtual void computeStaveEnvelopTransformAndSize(double moduleThickN, double moduleThickP, double moduleWidth, double moduleThickN3D, double moduleThickP3D, double moduleWidth3D)=0
GeoPixelStaveSupport::getPhysVol
virtual GeoVPhysVol * getPhysVol()=0
GeoPrimitives.h
GeoPixelStaveSupport::PixelNModule
virtual int PixelNModule() const =0
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
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:11
GeoPixelStaveSupport::getServiceZpos
virtual double getServiceZpos() const =0
GeoVPixelFactory.h
GeoPixelStaveSupport::thicknessN
virtual double thicknessN() const =0
GeoPixelStaveSupport
Definition: GeoPixelStaveSupport.h:14
GeoVPixelFactory
This is the base class for all the pieces of the Pixel detector.
Definition: GeoVPixelFactory.h:31
GeoPixelStaveSupport::getEndblockZpos
virtual double getEndblockZpos() const =0
GeoPixelStaveSupport::PixelNPlanarModule
virtual int PixelNPlanarModule() const =0
GeoPixelStaveSupport::getEndblockLength
virtual double getEndblockLength() const =0
GeoPixelStaveSupport::thicknessP
virtual double thicknessP() const =0
GeoPixelStaveSupport::getEndblockEnvelopShapeTrf
virtual GeoTransform * getEndblockEnvelopShapeTrf(int)=0