ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkDetDescr
TrkDetDescrTools
TrkDetDescrTools
CompressedLayerMaterialCreator.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// CompressedLayerMaterialCreator.h, (c) ATLAS Detector software
8
9
#ifndef TRKDETDESCRTOOLS_COMPRESSEDLAYERMATERIALCREATOR_H
10
#define TRKDETDESCRTOOLS_COMPRESSEDLAYERMATERIALCREATOR_H
11
12
// Trk
13
#include "
TrkDetDescrInterfaces/ILayerMaterialCreator.h
"
14
#include "
TrkGeometry/MaterialProperties.h
"
15
// Gaudi & Athena
16
#include "
AthenaBaseComps/AthAlgTool.h
"
17
#include "GaudiKernel/ToolHandle.h"
18
19
20
namespace
Trk
{
21
22
class
LayerMaterialProperties
;
23
class
LayerMaterialRecord
;
24
class
BinUtility
;
25
26
struct
IndexedMaterial
{
27
unsigned
short
int
firstBin
;
28
unsigned
short
int
secondBin
;
29
const
Trk::MaterialProperties
*
materialProperties
;
30
};
31
32
42
43
class
CompressedLayerMaterialCreator
:
public
AthAlgTool
,
virtual
public
ILayerMaterialCreator
{
44
45
public
:
47
CompressedLayerMaterialCreator
(
const
std::string&,
const
std::string&,
const
IInterface*);
48
49
51
LayerMaterialProperties
*
createLayerMaterial
(
const
LayerMaterialRecord
& lmr)
const
;
52
54
LayerMaterialProperties
*
convertLayerMaterial
(
const
LayerMaterialProperties
& lmr)
const
;
55
56
private
:
58
LayerMaterialProperties
*
createCompressedLayerMaterial
(
const
MaterialPropertiesMatrix
& lmm,
const
BinUtility
& lmbu)
const
;
59
60
Gaudi::Property<double>
m_compressedMaterialThickness
61
{
this
,
"MaterialThickness"
, 1.};
62
Gaudi::Property<unsigned int>
m_compressedMaterialX0Bins
63
{
this
,
"MaterialBinsX0"
, 256};
64
Gaudi::Property<unsigned int>
m_compressedMaterialZARhoBins
65
{
this
,
"MaterialBinsZARho"
, 256};
66
};
67
68
}
69
70
#endif
71
72
73
74
AthAlgTool.h
ILayerMaterialCreator.h
MaterialProperties.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
Trk::BinUtility
A generic symmetric BinUtility, for fully symmetric binning in terms of binning grid and binning type...
Definition
BinUtility.h:39
Trk::CompressedLayerMaterialCreator::m_compressedMaterialThickness
Gaudi::Property< double > m_compressedMaterialThickness
Definition
CompressedLayerMaterialCreator.h:61
Trk::CompressedLayerMaterialCreator::m_compressedMaterialZARhoBins
Gaudi::Property< unsigned int > m_compressedMaterialZARhoBins
Definition
CompressedLayerMaterialCreator.h:65
Trk::CompressedLayerMaterialCreator::m_compressedMaterialX0Bins
Gaudi::Property< unsigned int > m_compressedMaterialX0Bins
Definition
CompressedLayerMaterialCreator.h:63
Trk::CompressedLayerMaterialCreator::convertLayerMaterial
LayerMaterialProperties * convertLayerMaterial(const LayerMaterialProperties &lmr) const
create layer material properties from layer material properties - simply clones
Definition
CompressedLayerMaterialCreator.cxx:44
Trk::CompressedLayerMaterialCreator::CompressedLayerMaterialCreator
CompressedLayerMaterialCreator(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition
CompressedLayerMaterialCreator.cxx:19
Trk::CompressedLayerMaterialCreator::createCompressedLayerMaterial
LayerMaterialProperties * createCompressedLayerMaterial(const MaterialPropertiesMatrix &lmm, const BinUtility &lmbu) const
private method that can be called by both create/convertLayerMaterial
Definition
CompressedLayerMaterialCreator.cxx:87
Trk::CompressedLayerMaterialCreator::createLayerMaterial
LayerMaterialProperties * createLayerMaterial(const LayerMaterialRecord &lmr) const
process the material properties
Definition
CompressedLayerMaterialCreator.cxx:29
Trk::ILayerMaterialCreator
Interface class for LayerMaterialCreator AlgTools to create LayerMaterial properties with different s...
Definition
ILayerMaterialCreator.h:32
Trk::LayerMaterialProperties
This virtual base class encapsulates the logics to build pre/post/full update material for Layer stru...
Definition
LayerMaterialProperties.h:64
Trk::LayerMaterialRecord
Helper Class to record the material during the GeantinoNtupleMappingProcess.
Definition
LayerMaterialRecord.h:45
Trk::MaterialProperties
Material with information about thickness of material.
Definition
MaterialProperties.h:40
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::MaterialPropertiesMatrix
std::vector< std::vector< const MaterialProperties * > > MaterialPropertiesMatrix
Definition
ILayerMaterialAnalyser.h:25
Trk::IndexedMaterial
Definition
CompressedLayerMaterialCreator.h:26
Trk::IndexedMaterial::secondBin
unsigned short int secondBin
Definition
CompressedLayerMaterialCreator.h:28
Trk::IndexedMaterial::materialProperties
const Trk::MaterialProperties * materialProperties
Definition
CompressedLayerMaterialCreator.h:29
Trk::IndexedMaterial::firstBin
unsigned short int firstBin
Definition
CompressedLayerMaterialCreator.h:27
Generated on
for ATLAS Offline Software by
1.17.0