ATLAS Offline Software
Loading...
Searching...
No Matches
PixelDetectorFactoryLite.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_PIXELDETECTORFACTORYLITE_H
6#define PIXELGEOMODEL_PIXELDETECTORFACTORYLITE_H
7
8#include <map>
9#include <string>
10
12
16
17class GeoFullPhysVol;
18class GeoAlignableTransform;
19
20class PixelSwitches;
23
24namespace GeoModelIO {
25 class ReadGeoModel;
26}
27
29
30 public:
31
32 PixelDetectorFactoryLite(GeoModelIO::ReadGeoModel* sqliteReader
33 , PixelGeoModelAthenaComps* athenaComps
34 , const PixelSwitches& switches);
38
39 // Creation of geometry:
40 virtual void create(GeoPhysVol *world) override;
41
42 // Access to the results:
43 virtual const InDetDD::PixelDetectorManager* getDetectorManager() const override{ return m_detectorManager; }
44
45 private:
46 GeoModelIO::ReadGeoModel* m_sqliteReader{nullptr};
47 InDetDD::PixelDetectorManager* m_detectorManager{nullptr}; //ownership handed to caller
48 std::unique_ptr<PixelGeometryManager> m_geometryManager;
49
51 std::shared_ptr<std::map<std::string, GeoFullPhysVol*>> m_mapFPV;
52 std::shared_ptr<std::map<std::string, GeoAlignableTransform*>> m_mapAX;
53
54 void doChecks();
55};
56
57#endif
Define macros for attributes used to control the static checker.
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
InDetDD::PixelDetectorManager * m_detectorManager
PixelDetectorFactoryLite(GeoModelIO::ReadGeoModel *sqliteReader, PixelGeoModelAthenaComps *athenaComps, const PixelSwitches &switches)
GeoModelIO::ReadGeoModel * m_sqliteReader
std::shared_ptr< std::map< std::string, GeoAlignableTransform * > > m_mapAX
virtual const InDetDD::PixelDetectorManager * getDetectorManager() const override
std::shared_ptr< std::map< std::string, GeoFullPhysVol * > > m_mapFPV
std::unique_ptr< PixelGeometryManager > m_geometryManager
const PixelDetectorFactoryLite & operator=(const PixelDetectorFactoryLite &right)=delete
virtual void create(GeoPhysVol *world) override
PixelDetectorFactoryLite(const PixelDetectorFactoryLite &right)=delete
Class to hold various Athena components.