|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKGEOMETRY_COMPOUNDLAYERMATERIAL_H
10 #define TRKGEOMETRY_COMPOUNDLAYERMATERIAL_H
23 #include "GaudiKernel/MsgStream.h"
37 double value(
unsigned char ibin0,
unsigned char ibin1)
const {
41 unsigned int ibin =
static_cast<unsigned int>(
43 [
static_cast<unsigned int>(ibin0)]);
71 const std::vector<std::vector<MaterialComposition> >& composition,
72 bool fComposition =
false);
111 virtual MsgStream&
dump(MsgStream& sl)
const override final;
114 virtual std::ostream&
dump(std::ostream& sl)
const override final;
132 std::vector<std::vector<MaterialComposition> >
ValueStore m_aBins
A parameters (averaged)
ValueStore m_x0Bins
x0 parameter
void resizeMaterialProperties()
virtual CompoundLayerMaterial * clone() const override final
Pseudo-Constructor clone()
CachedUniquePtrT< const T > CachedUniquePtr
Cached pointer with atomic update.
ValueStore m_l0Bins
l0 parameter
double value(unsigned char ibin0, unsigned char ibin1) const
std::vector< std::vector< MaterialPropertiesCUP > > m_materialProperties
the ones you return
bool const RAWDATA *ch2 const
virtual void updateBinning(BinUtility *bu) override final
Update the BinUtility if necessary - passing ownership of the utility class.
void updateElementTable(const SharedObject< const ElementTable > &set)
Update the ElementTable.
ValueMatrix valueBinMatrix
CompoundLayerMaterial()=default
Default Constructor - needed by POOL.
bool m_fullComposition
full composition calculation
Cached unique_ptr with atomic update.
SharedObject< const ElementTable > m_elementTable
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
BinUtility * m_binUtility
the helper for the bin finding
Ensure that the ATLAS eigen extensions are properly loaded.
Definition of ATLAS Math & Geometry primitives (Amg)
const ElementTable * elementTable() const
Get the ElementTable.
Eigen::Matrix< double, 3, 1 > Vector3D
virtual MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream, to be overloaded by child classes.
std::vector< std::vector< MaterialComposition > > m_composition
composition matrix
ValueStore m_thicknessBins
thickness parameter
ValueStore m_rhoBins
rho parameter (averaged)
std::shared_ptr< T > SharedObject
std::vector< ValueVector > ValueMatrix
virtual ~CompoundLayerMaterial() override
Destructor.
ValueStore m_zBins
Z parameter (averaged)
std::vector< unsigned char > ValueVector
virtual const MaterialProperties * material(size_t bin0, size_t bin1) const override final
Access the single bin.
virtual const MaterialProperties * fullMaterial(const Amg::Vector3D &gp) const override final
Return method for full material description of the Layer.
virtual const BinUtility * binUtility() const override final
Return the BinUtility.