ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_Dogleg.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//
6// 14th Aug 2005 S.Mima modified.
7//
8#include "SCT_Dogleg.h"
9
10#include "SCT_GeometryManager.h"
11#include "SCT_MaterialManager.h"
12
14
15#include "GeoModelKernel/GeoBox.h"
16#include "GeoModelKernel/GeoLogVol.h"
17#include "GeoModelKernel/GeoPhysVol.h"
18#include "GeoModelKernel/GeoMaterial.h"
19#include "GeoModelKernel/Units.h"
20
21SCT_Dogleg::SCT_Dogleg(const std::string & name,
22 InDetDD::SCT_DetectorManager* detectorManager,
23 SCT_GeometryManager* geometryManager,
24 SCT_MaterialManager* materials)
25 : SCT_SharedComponentFactory(name, detectorManager, geometryManager, materials)
26{
29}
30
31
32void
34{
35 const SCT_BarrelParameters * parameters = m_geometryManager->barrelParameters();
36
37 m_material = m_materials->getMaterial(parameters->doglegMaterial());
38 m_thickness = parameters->doglegThickness();
39 m_length = parameters->doglegLength();
40 m_width = parameters->doglegWidth();
41}
42
43GeoVPhysVol *
45{
46
47 // Build the Dogleg. Just a simple box.
48 // Width is in z-direction.
49 // Length is in phi-direction.
50 // NB. This is opposite to other elements I use.
51
52 const GeoBox * doglegShape = new GeoBox(0.5*m_thickness, 0.5*m_length, 0.5*m_width);
53 const GeoLogVol *doglegLog =
54 new GeoLogVol(getName(), doglegShape, m_material);
55 GeoPhysVol * dogleg = new GeoPhysVol(doglegLog);
56
57 return dogleg;
58}
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()
SCT_Dogleg(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials)
double m_width
Definition SCT_Dogleg.h:41
void getParameters()
double m_thickness
Definition SCT_Dogleg.h:40
const GeoMaterial * m_material
Definition SCT_Dogleg.h:39
double m_length
Definition SCT_Dogleg.h:42
SCT_SharedComponentFactory(const std::string &name, InDetDD::SCT_DetectorManager *detectorManager, SCT_GeometryManager *geometryManager, SCT_MaterialManager *materials=nullptr)