|
ATLAS Offline Software
|
Go to the documentation of this file.
9 #ifndef TRKMATERIALONTRACK_MATERIALEFFECTSBASE_H
10 #define TRKMATERIALONTRACK_MATERIALEFFECTSBASE_H
77 const std::bitset<MaterialEffectsBase::NumberOfMaterialEffectsTypes>&
89 return std::unique_ptr<MaterialEffectsBase>(
clone());
115 virtual MsgStream&
dump(MsgStream& sl)
const;
117 virtual std::ostream&
dump(std::ostream& sl)
const;
132 friend class ::MaterialEffectsBaseCnv_p1;
133 friend class ::MaterialEffectsBaseCnv_p2;
134 friend class ::MaterialEffectsOnTrackCnv_p2;
135 friend class ::TrackCollectionCnv;
136 friend class ::ScatteringAngleOnTrackCnv_p1;
145 operator<<(MsgStream& sl,
const MaterialEffectsBase& meb);
149 operator<<(std::ostream& sl,
const MaterialEffectsBase& meb);
154 #endif // TRKMATERIALONTRACK_MATERIALEFFECTSBASE_H
virtual MaterialEffectsBase * clone() const =0
Virtual constructor.
MaterialEffectsBase(MaterialEffectsBase &&rhs)=default
move constructor
T/P converter v2 for MaterialEffectsOnTrack.
MaterialEffectsBase(double thicknessInX0, const Surface &assocSurf, const std::bitset< MaterialEffectsBase::NumberOfMaterialEffectsTypes > &typePattern)
base class constructor with information common to all types of material effects.
Converter for T/P separation of the TrkMaterialOnTrack/MaterialEffectsBase class.
MaterialEffectsBase()
default constructor for POOL
@ FittedMaterialEffects
contains values obtained by fitting the scatterer or e-loss
double thicknessInX0() const
returns the actually traversed material .
base class to integrate material effects on Trk::Track in a flexible way.
double m_tInX0
- the traversed thickness in RadiationLengths
std::unique_ptr< MaterialEffectsBase > uniqueClone() const
NVI uniqueClone.
@ UsesMeasurement
contains energy loss correction based on Calo measurement
std::string dumpType() const
returns a string with the type of the object
MaterialEffectsDerivedType
@ MATERIAL_EFFECTS_ON_TRACK
Converter for T/P separation of the TrkMaterialOnTrack/MaterialEffectsBase class.
virtual ~MaterialEffectsBase()=default
destructor.
virtual MsgStream & dump(MsgStream &sl) const
Interface method for output, can be overloaded by child classes.
@ ScatteringEffects
contains material effects due to multiple scattering
bool type(const MaterialEffectsType &type) const
returns the flags (bits) which types of ME are present
Ensure that the ATLAS eigen extensions are properly loaded.
MaterialEffectsBase & operator=(MaterialEffectsBase &&rhs)=default
move Assignment operator
@ EnergyLossEffects
contains energy loss corrections
@ NumberOfMaterialEffectsTypes
MsgStream & operator<<(MsgStream &sl, const AlignModule &alignModule)
overload of << operator for MsgStream for debug output
MaterialEffectsBase & operator=(const MaterialEffectsBase &rhs)=default
Assignment operator.
@ BremPoint
contains q/p covariance noise term
@ ESTIMATED_BREM_ON_TRACK
virtual MaterialEffectsDerivedType derivedType() const =0
Returns the concrete derived type.
MaterialEffectsBase(const MaterialEffectsBase &rhs)=default
copy constructor
@ MaterialThickness
contains only thickness, needs M.E.Updator to calculate effects
const Surface & associatedSurface() const
returns the surface to which these m.eff. are associated.
virtual void setValues(const Surface *assocSurface)
allows POOL converter to recreate transient links to DetStore