10 using namespace Geometry ;
34 std::list< DetElement > dets ;
35 std::list< DetElement > daugs ;
36 std::list< DetElement > gdaugs ;
38 daugs.push_back(
_det ) ;
40 while( ! daugs.empty() ) {
42 for( std::list< DetElement >::iterator li=daugs.begin() ; li != daugs.end() ; ++li ){
45 for ( DetElement::Children::const_iterator it=chMap.begin() ; it != chMap.end() ; ++it ){
47 gdaugs.push_back( de ) ;
50 dets.splice( dets.end() , daugs ) ;
51 daugs.splice( daugs.end() , gdaugs ) ;
57 for( std::list< DetElement >::iterator li=dets.begin() ; li != dets.end() ; ++li ) {
86 _sL.insert(
_sL.end(), detSL.begin(), detSL.end() );
void initialize()
initializes surfaces from VolSurfaces assigned to this DetElement in detector construction ...
virtual DetElement world() const =0
Return reference to the top-most (world) detector element.
const Children & children() const
Access to the list of children.
static LCDD & getInstance(void)
—Factory method----—
const Geometry::DetElement & _det
Handle class describing a detector element.
Class to support the retrieval of detector elements and volumes given a valid identifier.
The main interface to the DD4hep detector description package.
std::map< std::string, DetElement > Children
const SurfaceList & surfaceList()
get the list of surfaces added to this DetElement