13 #ifndef DDREC_MATERIALSCAN_H
14 #define DDREC_MATERIALSCAN_H
88 const MaterialVec&
scan(
double x0,
double y0,
double z0,
double x1,
double y1,
double z1,
double epsilon=1e-4)
const;
94 void print(
double x0,
double y0,
double z0,
95 double x1,
double y1,
double z1,
96 double epsilon=1e-4)
const;
100 #endif // DDREC_MATERIALSCAN_H
void setRegion(const char *region)
Set a specific region to limit the scan (resets other selection criteria)
virtual ~MaterialScan()
Default destructor.
Simple three dimensional vector providing the components for cartesian, cylindrical and spherical coo...
MaterialScan()
Default constructor.
void setMaterial(const char *material)
Set a specific volume material to limit the scan (resets other selection criteria) ...
std::unique_ptr< MaterialManager > m_materialMgr
Material manager.
std::set< const TGeoNode * > m_placements
Local cache: subdetector placements.
void print(const Vector3D &start, const Vector3D &end, double epsilon=1e-4) const
Scan along a line and print the materials traversed.
Detector & m_detector
Reference to detector setup.
const MaterialVec & scan(double x0, double y0, double z0, double x1, double y1, double z1, double epsilon=1e-4) const
Scan along a line and store the matrials internally.
Class to perform material scans along a straight line.
void setDetector(DetElement detector)
Set a specific detector volume to limit the scan (resets other selection criteria) ...