ATLAS Offline Software
Loading...
Searching...
No Matches
GeoPixelECCable.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#include <utility>
6
7#include "GeoPixelECCable.h"
8#include "GeoModelKernel/GeoTube.h"
9#include "GeoModelKernel/GeoLogVol.h"
10#include "GeoModelKernel/GeoPhysVol.h"
11#include "GeoModelKernel/GeoMaterial.h"
12
15 GeoModelIO::ReadGeoModel* sqliteReader,
16 std::shared_ptr<std::map<std::string, GeoFullPhysVol*>> mapFPV,
17 std::shared_ptr<std::map<std::string, GeoAlignableTransform*>> mapAX)
18 : GeoVPixelFactory (ddmgr, mgr, sqliteReader, std::move(mapFPV), std::move(mapAX) )
19{}
20
21
22GeoVPhysVol* GeoPixelECCable::Build( ) {
23 //
24 // Dimensions
25 //
26 double rmin = m_gmt_mgr->PixelECCablesRMin();
27 double rmax = m_gmt_mgr->PixelECCablesRMax();
28 double thickness = m_gmt_mgr->PixelECCablesThickness();
29 const GeoTube* cableTube = new GeoTube(rmin,rmax,thickness/2.);
30 std::string matName = m_gmt_mgr->getMaterialName("DiskCable", m_gmt_mgr->GetLD());
31 const GeoMaterial* cableMat = m_mat_mgr->getMaterialForVolume(matName, cableTube->volume());
32 std::ostringstream ostr; ostr << m_gmt_mgr->GetLD();
33 const GeoLogVol* theECCable = new GeoLogVol("ECCable"+ostr.str(),cableTube,cableMat);
34
35 GeoPhysVol* cablePhys = new GeoPhysVol(theECCable);
36 return cablePhys;
37}
38
virtual GeoVPhysVol * Build() override
GeoPixelECCable(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)
PixelGeometryManager * m_gmt_mgr
InDetMaterialManager * m_mat_mgr
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)
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
STL namespace.