13 #ifndef DDREC_MATERIALMANAGER_H
14 #define DDREC_MATERIALMANAGER_H
16 #include "DD4hep/Detector.h"
17 #include "DD4hep/Objects.h"
20 #include "DD4hep/DD4hepUnits.h"
96 os <<
" " << m.name() <<
" Z: " << m.Z() <<
" A: " << m.A() <<
" density: " << m.density()
97 <<
" radiationLength: " << m.radLength()
98 <<
" interactionLength: " << m.intLength() ;
104 for(
unsigned i=0,n=m.
size() ; i<n ; ++i ) {
105 os <<
" material: " << m[i].first <<
" thickness: " << m[i].second <<
std::endl ;
115 #endif // DDREC_MATERIALMANAGER_H
std::vector< std::pair< Material, double > > MaterialVec
const Material & materialAt(const Vector3D &pos)
Get the material at the given position.
std::ostream & operator<<(std::ostream &io, const FixedPadSizeTPCData &d)
const PlacementVec & placementsBetween(const Vector3D &p0, const Vector3D &p1, double epsilon=1e-4)
Get a vector with all the placements between the two points p0 and p1.
Simple three dimensional vector providing the components for cartesian, cylindrical and spherical coo...
PlacedVolume placementAt(const Vector3D &pos)
Get the placed volume at the given position.
const MaterialVec & materialsBetween(const Vector3D &p0, const Vector3D &p1, double epsilon=1e-4)
Get a vector with all the materials between the two points p0 and p1 with the corresponding thickness...
Vector3D _p0
cached last points
MaterialData createAveragedMaterial(const MaterialVec &materials)
Create a material with averaged properties from all materials in the list.
MaterialVec _mV
Cached materials.
TGeoManager * _tgeoMgr
Reference to the TGeoManager.
Simple data class that implements the IMaterial interface and is used in the Surface implementation...
std::vector< std::pair< PlacedVolume, double > > PlacementVec
PlacedVolume _pv
Cached nodes.
Material manager provides access to the material properties of the detector.