13 #ifndef DDREC_IMATERIAL_H
14 #define DDREC_IMATERIAL_H
19 namespace dd4hep {
namespace rec {
43 virtual double A()
const =0 ;
46 virtual double Z()
const =0 ;
49 virtual double density()
const =0 ;
62 os <<
" " << m.
name() <<
", A: " << m.
A() <<
", Z: " << m.
Z() <<
", density: " << m.
density() <<
", radiationLength: " << m.
radiationLength()
72 #endif // DDREC_IMATERIAL_H
std::ostream & operator<<(std::ostream &io, const FixedPadSizeTPCData &d)
virtual ~IMaterial()
Destructor.
virtual double Z() const =0
averaged proton number
virtual double radiationLength() const =0
radiation length - units ?
virtual double interactionLength() const =0
interaction length - units ?
virtual std::string name() const =0
material name
virtual double A() const =0
averaged atomic number
IMaterial & operator=(const IMaterial &)
Assignment operator.
virtual double density() const =0
density - units ?
Interface for material description for tracking.