13 from __future__
import absolute_import, unicode_literals
19 logging.basicConfig(format=
'%(levelname)s: %(message)s', level=logging.INFO)
20 logger = logging.getLogger(__name__)
25 dat = DDRec.FixedPadSizeTPCData(det)
26 logger.info(dat.toString())
30 dat = DDRec.ZPlanarData(det)
31 logger.info(dat.toString())
35 dat = DDRec.ZDiskPetalsData(det)
36 logger.info(dat.toString())
40 dat = DDRec.ConicalSupportData(det)
41 logger.info(dat.toString())
45 dat = DDRec.LayeredCalorimeterData(det)
46 logger.info(dat.toString())
50 dat = DDRec.NeighbourSurfacesStruct(det)
51 logger.info(dat.toString())
56 parser = optparse.OptionParser()
57 parser.formatter.width = 132
58 parser.description =
"Dump detector data objects from DDRec"
59 parser.add_option(
"-c",
"--compact", dest=
"compact", default=
None,
60 help=
"Define LCCDD style compact xml input",
63 (opts, args) = parser.parse_args()
65 if opts.compact
is None:
66 logger.info(
" %s", parser.format_help())
70 from ROOT
import gROOT
72 except ImportError
as X:
73 logger.error(
'PyROOT interface not accessible: %s', str(X))
74 logger.error(
"%s", parser.format_help())
75 sys.exit(errno.ENOENT)
79 except ImportError
as X:
80 logger.error(
'dd4hep python interface not accessible: %s', str(X))
81 logger.error(
"%s", parser.format_help())
82 sys.exit(errno.ENOENT)
86 except ImportError
as X:
87 logger.error(
'ddrec python interface not accessible: %s', str(X))
88 logger.error(
"%s", parser.format_help())
89 sys.exit(errno.ENOENT)
92 dd4hep.setPrintLevel(dd4hep.OutputLevel.ERROR)
93 logger.info(
'+++%s\n+++ Loading compact geometry:%s\n+++%s', 120 *
'=', opts.compact, 120 *
'=')
96 description = dd4hep.Detector.getInstance()
97 description.fromXML(opts.compact)
102 for n, d
in description.detectors():
105 logger.info(
" ------------- detector : %s", d.name())
108 det = description.detector(n)
115 logger.info(
'+++ Execution finished...')