ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_FSIScorpion.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#include "SCT_FSIScorpion.h"
6
8
11
12#include "GeoModelKernel/GeoBox.h"
13#include "GeoModelKernel/GeoLogVol.h"
14#include "GeoModelKernel/GeoPhysVol.h"
15#include "GeoModelKernel/GeoMaterial.h"
16#include "GeoModelKernel/Units.h"
17
18SCT_FSIScorpion::SCT_FSIScorpion(const std::string & name,
19 InDetDD::SCT_DetectorManager* detectorManager,
20 SCT_GeometryManager* geometryManager,
21 SCT_MaterialManager* materials)
22 : SCT_SharedComponentFactory(name, detectorManager, geometryManager, materials)
23{
26}
27
28
29void
31{
32 const SCT_BarrelParameters * parameters = m_geometryManager->barrelParameters();
33 m_materialName = parameters->fsiScorpionMaterial();
34 m_radialWidth = parameters->fsiScorpionRadialWidth();
35 m_rPhiWidth = parameters->fsiScorpionRPhiWidth();
36 m_length = parameters->fsiScorpionLength();
37}
38
39GeoVPhysVol *
41{
42
43 // Build the barrel FSI scorpion. Just a simple box.
44 // Length is in z-direction.
45 const GeoBox * scorpionShape = new GeoBox(0.5*m_radialWidth, 0.5*m_rPhiWidth, 0.5*m_length);
46 m_material = m_materials->getMaterialForVolume(m_materialName, scorpionShape->volume());
47 const GeoLogVol *scorpionLog = new GeoLogVol(getName(), scorpionShape, m_material);
48 GeoPhysVol * scorpion = new GeoPhysVol(scorpionLog);
49
50 return scorpion;
51}
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
const std::string & getName() const
SCT_GeometryManager * m_geometryManager
SCT_MaterialManager * m_materials
virtual GeoVPhysVol * build()
std::string m_materialName
const GeoMaterial * m_material
SCT_FSIScorpion(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials)
SCT_SharedComponentFactory(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials=nullptr)