|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKGEOMETRY_COMPRESSEDLAYERMATERIAL_H
10 #define TRKGEOMETRY_COMPRESSEDLAYERMATERIAL_H
19 #include "GaudiKernel/MsgStream.h"
52 const std::vector<unsigned short int>& materialIndices,
53 double splitFactor = 0.);
56 std::unique_ptr<Trk::BinUtility> binutility,
58 const std::vector<unsigned short int>& materialIndices,
59 double splitFactor = 0.);
87 const std::vector<unsigned short int>&
materialBins()
const;
95 size_t bin1)
const override final;
98 virtual MsgStream&
dump(MsgStream& sl)
const override final;
100 virtual std::ostream&
dump(std::ostream& sl)
const override final;
125 inline const std::vector<unsigned short int>&
131 size_t bin0,
size_t bin1)
const {
virtual CompressedLayerMaterial & operator*=(double scale) override final
Scale operator.
BinUtility * m_binUtility
the helper for the bin finding
CompressedLayerMaterial & operator=(const CompressedLayerMaterial &lmp)
Assignment operator.
size_t max(size_t ba=0) const
First bin maximal value.
MaterialPropertiesVector m_fullMaterial
The five different MaterialProperties.
const MaterialPropertiesVector & fullMaterial() const
Return method for full material description of the Layer - for all bins.
const std::vector< unsigned short int > & materialBins() const
Return method for index vector, needs BinUtility to interpret this.
virtual ~CompressedLayerMaterial() override
Destructor.
std::vector< const MaterialProperties * > MaterialPropertiesVector
Useful typedefs.
virtual MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream, to be overloaded by child classes.
virtual void updateBinning(BinUtility *bu) override final
Update the BinUtility if necessary - passing ownership of the utility class.
CompressedLayerMaterial()
Default Constructor - needed by POOL.
virtual const BinUtility * binUtility() const override final
Return the BinUtility.
Ensure that the ATLAS eigen extensions are properly loaded.
void clearMaterial()
helper method - to clear the material
virtual const MaterialProperties * material(size_t bin0, size_t bin1) const override final
Access the single bin.
Eigen::Matrix< double, 3, 1 > Vector3D
std::vector< unsigned short int > m_materialBins
virtual CompressedLayerMaterial * clone() const override final
Pseudo-Constructor clone()
void fillMaterial(const MaterialPropertiesVector &matVector)
helper method - to refill the material