ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
MuonIdentification
MuidCaloScatteringTools
src
MuidCaloMaterialParam.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
20
21
#ifndef MUIDCALOSCATTERINGTOOLS_MUIDCALOMATERIALPARAM_H
22
#define MUIDCALOSCATTERINGTOOLS_MUIDCALOMATERIALPARAM_H
23
24
//<<<<<< INCLUDES >>>>>>
25
26
#include <vector>
27
28
#include "
AthenaBaseComps/AthAlgTool.h
"
29
#include "GaudiKernel/ToolHandle.h"
30
#include "
MuidEvent/CaloLayer.h
"
31
#include "
MuidInterfaces/IMuidCaloMaterialParam.h
"
32
#include "
TrkDetDescrInterfaces/IGeometryProcessor.h
"
33
34
//<<<<<< CLASS DECLARATIONS >>>>>>
35
36
namespace
Rec
{
37
38
class
MuidCaloMaterialParam
:
public
AthAlgTool
,
virtual
public
IMuidCaloMaterialParam
{
39
public
:
40
MuidCaloMaterialParam
(
const
std::string&
type
,
const
std::string& name,
const
IInterface* parent);
41
virtual
~MuidCaloMaterialParam
() =
default
;
// destructor
42
43
StatusCode
initialize
()
override
;
44
47
const
Trk::Surface
*
innerSurface
(
double
eta
)
const override
;
48
const
Trk::Surface
*
middleSurface
(
double
eta
)
const override
;
49
const
Trk::Surface
*
outerSurface
(
double
eta
)
const override
;
50
53
double
radiationThickness
(
double
eta
)
const override
;
54
57
std::unique_ptr<Trk::TrackStateOnSurface>
trackStateOnSurface
(
const
Trk::TrackParameters
& parameters)
const override
;
58
59
private
:
60
// private methods
61
std::unique_ptr<Trk::Surface>
createSurface
(
double
eta
,
double
r
,
double
z
,
double
cotThetaWidth)
const
;
62
StatusCode
defineCaloMaterial
();
63
64
// helpers, managers, tools
65
ToolHandle<Trk::IGeometryProcessor>
m_surfaceDisplayTool
{
66
this
,
67
"SurfaceDisplayTool"
,
68
"Trk::TrackingVolumeDisplayer/TrackingVolumeDisplayer"
,
69
};
70
71
// configuration
73
bool
m_produceSurfacesDisplay
;
74
75
// data from geantino map - organized at initialize
76
double
m_binSize
;
77
std::vector<std::unique_ptr<const CaloLayer>>
m_caloInnerLayers
;
78
std::vector<std::unique_ptr<const CaloLayer>>
m_caloOuterLayers
;
79
std::vector<std::unique_ptr<const Trk::Surface>>
m_innerBackwardSurfaces
;
80
std::vector<std::unique_ptr<const Trk::Surface>>
m_innerForwardSurfaces
;
81
std::vector<std::unique_ptr<const Trk::Surface>>
m_middleBackwardSurfaces
;
82
std::vector<std::unique_ptr<const Trk::Surface>>
m_middleForwardSurfaces
;
83
const
unsigned
m_numberBins
;
84
std::vector<std::unique_ptr<const Trk::Surface>>
m_outerBackwardSurfaces
;
85
std::vector<std::unique_ptr<const Trk::Surface>>
m_outerForwardSurfaces
;
86
std::vector<double>
m_radiationThickness
;
87
};
88
89
}
// namespace Rec
90
91
#endif
// MUIDCALOSCATTERINGTOOLS_MUIDCALOMATERIALPARAM_H
eta
Scalar eta() const
pseudorapidity method
Definition
AmgMatrixBasePlugin.h:83
AthAlgTool.h
CaloLayer.h
IGeometryProcessor.h
IMuidCaloMaterialParam.h
z
#define z
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
Rec::IMuidCaloMaterialParam
Base class for MuidCaloMaterialParam AlgTool.
Definition
IMuidCaloMaterialParam.h:39
Rec::MuidCaloMaterialParam::m_produceSurfacesDisplay
bool m_produceSurfacesDisplay
if true (set in jobOptions), use TrackingVolumeDisplayer to produce ROOT output.
Definition
MuidCaloMaterialParam.h:73
Rec::MuidCaloMaterialParam::m_middleBackwardSurfaces
std::vector< std::unique_ptr< const Trk::Surface > > m_middleBackwardSurfaces
Definition
MuidCaloMaterialParam.h:81
Rec::MuidCaloMaterialParam::m_innerBackwardSurfaces
std::vector< std::unique_ptr< const Trk::Surface > > m_innerBackwardSurfaces
Definition
MuidCaloMaterialParam.h:79
Rec::MuidCaloMaterialParam::m_binSize
double m_binSize
Definition
MuidCaloMaterialParam.h:76
Rec::MuidCaloMaterialParam::m_outerBackwardSurfaces
std::vector< std::unique_ptr< const Trk::Surface > > m_outerBackwardSurfaces
Definition
MuidCaloMaterialParam.h:84
Rec::MuidCaloMaterialParam::defineCaloMaterial
StatusCode defineCaloMaterial()
Definition
MuidCaloMaterialParam.cxx:210
Rec::MuidCaloMaterialParam::m_radiationThickness
std::vector< double > m_radiationThickness
Definition
MuidCaloMaterialParam.h:86
Rec::MuidCaloMaterialParam::middleSurface
const Trk::Surface * middleSurface(double eta) const override
Definition
MuidCaloMaterialParam.cxx:105
Rec::MuidCaloMaterialParam::m_numberBins
const unsigned m_numberBins
Definition
MuidCaloMaterialParam.h:83
Rec::MuidCaloMaterialParam::initialize
StatusCode initialize() override
Definition
MuidCaloMaterialParam.cxx:47
Rec::MuidCaloMaterialParam::m_caloInnerLayers
std::vector< std::unique_ptr< const CaloLayer > > m_caloInnerLayers
Definition
MuidCaloMaterialParam.h:77
Rec::MuidCaloMaterialParam::m_caloOuterLayers
std::vector< std::unique_ptr< const CaloLayer > > m_caloOuterLayers
Definition
MuidCaloMaterialParam.h:78
Rec::MuidCaloMaterialParam::innerSurface
const Trk::Surface * innerSurface(double eta) const override
IMuidCaloMaterialParam interface: return inner/middle/outer surface corresponding to eta value.
Definition
MuidCaloMaterialParam.cxx:82
Rec::MuidCaloMaterialParam::outerSurface
const Trk::Surface * outerSurface(double eta) const override
Definition
MuidCaloMaterialParam.cxx:128
Rec::MuidCaloMaterialParam::m_surfaceDisplayTool
ToolHandle< Trk::IGeometryProcessor > m_surfaceDisplayTool
Definition
MuidCaloMaterialParam.h:65
Rec::MuidCaloMaterialParam::trackStateOnSurface
std::unique_ptr< Trk::TrackStateOnSurface > trackStateOnSurface(const Trk::TrackParameters ¶meters) const override
IMuidCaloMaterialParam interface: TrackStateOnSurface for parameters at a scattering surface.
Definition
MuidCaloMaterialParam.cxx:166
Rec::MuidCaloMaterialParam::m_middleForwardSurfaces
std::vector< std::unique_ptr< const Trk::Surface > > m_middleForwardSurfaces
Definition
MuidCaloMaterialParam.h:82
Rec::MuidCaloMaterialParam::createSurface
std::unique_ptr< Trk::Surface > createSurface(double eta, double r, double z, double cotThetaWidth) const
Definition
MuidCaloMaterialParam.cxx:191
Rec::MuidCaloMaterialParam::radiationThickness
double radiationThickness(double eta) const override
IMuidCaloMaterialParam interface: calorimeter layer radiation thickness corresponding to eta value.
Definition
MuidCaloMaterialParam.cxx:151
Rec::MuidCaloMaterialParam::m_outerForwardSurfaces
std::vector< std::unique_ptr< const Trk::Surface > > m_outerForwardSurfaces
Definition
MuidCaloMaterialParam.h:85
Rec::MuidCaloMaterialParam::MuidCaloMaterialParam
MuidCaloMaterialParam(const std::string &type, const std::string &name, const IInterface *parent)
Definition
MuidCaloMaterialParam.cxx:39
Rec::MuidCaloMaterialParam::m_innerForwardSurfaces
std::vector< std::unique_ptr< const Trk::Surface > > m_innerForwardSurfaces
Definition
MuidCaloMaterialParam.h:80
Rec::MuidCaloMaterialParam::~MuidCaloMaterialParam
virtual ~MuidCaloMaterialParam()=default
Trk::Surface
Abstract Base Class for tracking surfaces.
Definition
Surface.h:79
r
int r
Definition
globals.cxx:22
Rec
namespace for combined reconstruction tools and interfaces
Definition
FakeTrackBuilder.h:10
Trk::TrackParameters
ParametersBase< TrackParametersDim, Charged > TrackParameters
Definition
Tracking/TrkEvent/TrkParameters/TrkParameters/TrackParameters.h:27
type
Generated on
for ATLAS Offline Software by
1.17.0