|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKGEOMETY_LAYERMATERIALPROPERTIES_H
10 #define TRKGEOMETY_LAYERMATERIALPROPERTIES_H
19 #include "GaudiKernel/MsgStream.h"
119 virtual MsgStream&
dump(MsgStream& sl)
const = 0;
122 virtual std::ostream&
dump(std::ostream& sl)
const = 0;
125 friend class ::BinnedLayerMaterialCnv_p1;
133 return (
static_cast<int>(pDir) *
static_cast<int>(mStage) > 0 ?
164 #endif // TRKGEOMETY_LAYERMATERIALPROPERTIES_H
MaterialUpdateStage
This is a steering enum to tell which material update stage:
virtual const MaterialProperties * fullMaterial(const Amg::Vector3D &gp) const =0
Return method for full material description of the Layer.
LayerMaterialProperties(double splitFactor)
Constructor.
double oppositePostFactor() const
Return method for post update material description of the Layer along normalvector.
virtual void updateBinning(BinUtility *bu)=0
Update the BinUtility if necessary - passing ownership of the utility class.
double factor(PropDirection pDir, MaterialUpdateStage mStage) const
Update pre factor.
virtual const MaterialProperties * material(size_t ib0, size_t ib1) const =0
Direct access via bins to the MaterialProperties.
double m_splitFactor
the split factor in favour of oppositePre
void updateElementTable(const SharedObject< const ElementTable > &) const
Update the ElementTable.
virtual std::ostream & dump(std::ostream &sl) const =0
Output Method for std::ostream, to be overloaded by child classes.
double alongPostFactor() const
Return method for post update material description of the Layer along normalvector.
double oppositePreFactor() const
Return method for pre update material description of the Layer along normalvector.
virtual const BinUtility * binUtility() const =0
Return the BinUtility.
virtual LayerMaterialProperties & operator*=(double scale)=0
Scale operator.
Ensure that the ATLAS eigen extensions are properly loaded.
Eigen::Matrix< double, 3, 1 > Vector3D
std::shared_ptr< T > SharedObject
MsgStream & operator<<(MsgStream &sl, const AlignModule &alignModule)
overload of << operator for MsgStream for debug output
virtual ~LayerMaterialProperties()
Destructor.
virtual LayerMaterialProperties * clone() const =0
Pseudo-Constructor clone()
const ElementTable * elementTable() const
Get the ElementTable.
LayerMaterialProperties()
Constructor.
double alongPreFactor() const
Return method for pre update material description of the Layer along normalvector.
virtual MsgStream & dump(MsgStream &sl) const =0
Output Method for MsgStream, to be overloaded by child classes.