ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_Sensor.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef SCT_GEOMODEL_SCT_SENSOR_H
6#define SCT_GEOMODEL_SCT_SENSOR_H
7
9
10#include <atomic>
11#include <string>
12
13class GeoMaterial;
14class GeoVPhysVol;
15namespace InDetDD{class SiDetectorDesign;}
16
18{
19public:
20 SCT_Sensor(const std::string & name,
21 InDetDD::SCT_DetectorManager* detectorManager,
22 SCT_GeometryManager* geometryManager,
23 SCT_MaterialManager* materials,
24 GeoModelIO::ReadGeoModel* sqliteReader,
25 std::shared_ptr<std::map<std::string, GeoFullPhysVol*>> mapFPV,
26 std::shared_ptr<std::map<std::string, GeoAlignableTransform*>> mapAX);
27
28public:
29 const GeoMaterial * material() const {return m_material;}
30 double thickness() const {return m_thickness;}
31 double width() const {return m_width;}
32 double length() const {return m_length;}
33
34 virtual GeoVPhysVol * build(SCT_Identifier id);
35
36private:
37 void getParameters();
38 virtual const GeoLogVol * preBuild();
39 void makeDesign();
40
41 const GeoMaterial * m_material = nullptr;
42 double m_thickness = 0.0;
43 double m_width = 0.0;
44 double m_length = 0.0;
45
47
48 mutable std::atomic_bool m_noElementWarning;
49};
50
51#endif // SCT_GEOMODEL_SCT_SENSOR_H
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
Base class for the detector design classes for Pixel and SCT.
double m_width
Definition SCT_Sensor.h:43
double width() const
Definition SCT_Sensor.h:31
void makeDesign()
double length() const
Definition SCT_Sensor.h:32
virtual GeoVPhysVol * build(SCT_Identifier id)
const GeoMaterial * material() const
Definition SCT_Sensor.h:29
double m_thickness
Definition SCT_Sensor.h:42
void getParameters()
const GeoMaterial * m_material
Definition SCT_Sensor.h:41
const InDetDD::SiDetectorDesign * m_design
Definition SCT_Sensor.h:46
double thickness() const
Definition SCT_Sensor.h:30
virtual const GeoLogVol * preBuild()
double m_length
Definition SCT_Sensor.h:44
std::atomic_bool m_noElementWarning
Definition SCT_Sensor.h:48
SCT_Sensor(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials, GeoModelIO::ReadGeoModel *sqliteReader, std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV, std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX)
SCT_UniqueComponentFactory(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials=nullptr, GeoModelIO::ReadGeoModel *sqliteReader=nullptr, std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > mapFPV=nullptr, std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > mapAX=nullptr)
Message Stream Member.