23 const std::vector<unsigned short int>& materialIndices,
double splitFactor)
30 std::unique_ptr<Trk::BinUtility> binutility,
32 const std::vector<unsigned short int>& materialIndices,
double splitFactor)
57 Trk::LayerMaterialProperties::operator=(lmp);
85 for (
const auto& matIter : matVector)
119 sl <<
"Trk::CompressedLayerMaterial : " << std::endl;
120 sl <<
" - Number of Material bins (1/2) : " <<
m_binUtility->max(0) + 1
122 sl <<
" - Parse full update material : " << std::endl;
127 sl <<
" Bin [" << imat1 <<
"] - " << matIter << std::endl;
129 sl <<
" Bin [" << imat1 <<
"] - empty " << std::endl;
136 sl <<
"Trk::CompressedLayerMaterial : " << std::endl;
137 sl <<
" - Number of Material bins (1/2) : " <<
m_binUtility->max(0) + 1
139 sl <<
" - Parse full update material : " << std::endl;
143 sl <<
" Bin [" << imat1 <<
"] - " << matIter << std::endl;
145 sl <<
" Bin [" << imat1 <<
"] - empty " << std::endl;
A generic symmetric BinUtility, for fully symmetric binning in terms of binning grid and binning type...
BinUtility * clone() const
Implizit Constructor.
It extends the LayerMaterialProperties base class.
const MaterialPropertiesVector & fullMaterial() const
Return method for full material description of the Layer - for all bins.
virtual MsgStream & dump(MsgStream &sl) const override final
Output Method for MsgStream, to be overloaded by child classes.
virtual const MaterialProperties * material(size_t bin0, size_t bin1) const override final
Access the single bin.
virtual ~CompressedLayerMaterial() override
Destructor.
CompressedLayerMaterial & operator=(const CompressedLayerMaterial &lmp)
Assignment operator.
BinUtility * m_binUtility
the helper for the bin finding
void fillMaterial(const MaterialPropertiesVector &matVector)
helper method - to refill the material
std::vector< unsigned short int > m_materialBins
virtual const BinUtility * binUtility() const override final
Return the BinUtility.
MaterialPropertiesVector m_fullMaterial
The five different MaterialProperties.
virtual CompressedLayerMaterial & operator*=(double scale) override final
Scale operator.
CompressedLayerMaterial()
Default Constructor - needed by POOL.
void clearMaterial()
helper method - to clear the material
virtual CompressedLayerMaterial * clone() const override final
Pseudo-Constructor clone()
LayerMaterialProperties()
Constructor.
Material with information about thickness of material.
static std::string release
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
std::vector< const MaterialProperties * > MaterialPropertiesVector
Useful typedefs.