DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Utilities.h
Go to the documentation of this file.
1 //==========================================================================
2 // AIDA Detector description implementation
3 //--------------------------------------------------------------------------
4 // Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
5 // All rights reserved.
6 //
7 // For the licensing terms see $DD4hepINSTALL/LICENSE.
8 // For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
9 //
10 // Author : M.Frank
11 //
12 //==========================================================================
13 
14 #ifndef XML_UTILITIES_H
15 #define XML_UTILITIES_H
16 
17 // Framework include files
18 #include <XML/Conversions.h>
19 #include <XML/XMLElements.h>
20 #include <XML/VolumeBuilder.h>
21 #include <DD4hep/Detector.h>
22 
23 // C/C++ include files
24 #include <set>
25 #include <map>
26 
28 namespace dd4hep {
29 
31  namespace xml {
32 
34 
52 
54  Volume createStdVolume(Detector& description, xml::Element element);
55 
57  Volume createVolume(Detector& description, const std::string& type, xml::Element element);
58 
59 
61  Solid createShape(Detector& description, const std::string& shape_type, xml::Element element);
62 
63 
78  dd4hep::DetElement sdet ) ;
79 
87 
89 
110  std::size_t configVolume( dd4hep::Detector& detector,
111  dd4hep::xml::Handle_t element,
112  dd4hep::Volume volume,
113  bool propagate,
114  bool ignore_unknown_attr = false);
115 
117 
137  std::size_t configSensitiveDetector( dd4hep::Detector& detector,
138  dd4hep::SensitiveDetector sensitive,
139  dd4hep::xml::Handle_t element);
140 
141  } /* End namespace xml */
142 } /* End namespace dd4hep */
143 #endif // XML_UTILITIES_H
dd4hep::xml::configVolume
std::size_t configVolume(dd4hep::Detector &detector, dd4hep::xml::Handle_t element, dd4hep::Volume volume, bool propagate, bool ignore_unknown_attr=false)
Configure volume properties from XML element.
Definition: Utilities.cpp:331
dd4hep::SensitiveDetector
Handle class to hold the information of a sensitive detector.
Definition: DetElement.h:44
Detector.h
dd4hep::xml::Handle_t
Class to easily access the properties of single XmlElements.
Definition: XMLElements.h:380
dd4hep::DetElement
Handle class describing a detector element.
Definition: DetElement.h:188
dd4hep::Volume
Handle class holding a placed volume (also called physical volume)
Definition: Volumes.h:370
dd4hep::xml::createShape
Solid createShape(Detector &description, const std::string &shape_type, xml::Element element)
Create a solid shape using the plugin mechanism from the attributes of the XML element.
Definition: Utilities.cpp:84
dd4hep::xml
Namespace for the AIDA detector description toolkit supporting XML utilities.
Definition: ConditionsTags.h:27
VolumeBuilder.h
dd4hep::xml::setDetectorTypeFlag
void setDetectorTypeFlag(dd4hep::xml::Handle_t e, dd4hep::DetElement sdet)
Definition: Utilities.cpp:284
dd4hep::Transform3D
ROOT::Math::Transform3D Transform3D
Definition: Objects.h:117
dd4hep::xml::createPlacedEnvelope
Volume createPlacedEnvelope(dd4hep::Detector &description, dd4hep::xml::Handle_t e, dd4hep::DetElement sdet)
Definition: Utilities.cpp:220
dd4hep::xml::createVolume
Volume createVolume(Detector &description, const std::string &type, xml::Element element)
Create a volume using the plugin mechanism from the attributes of the XML element.
Definition: Utilities.cpp:197
Conversions.h
XMLElements.h
dd4hep::xml::Element
User abstraction class to manipulate XML elements within a document.
Definition: XMLElements.h:769
dd4hep
Namespace for the AIDA detector description toolkit.
Definition: AlignmentsCalib.h:28
dd4hep::Solid
Solid_type< TGeoShape > Solid
Definition: Shapes.h:197
dd4hep::Detector
The main interface to the dd4hep detector description package.
Definition: Detector.h:90
dd4hep::xml::createTransformation
Transform3D createTransformation(xml::Element element)
Create layered transformation from xml information.
Definition: Utilities.cpp:42
dd4hep::xml::createStdVolume
Volume createStdVolume(Detector &description, xml::Element element)
Create a simple volume using the shape plugin mechanism from the attributes of the XML element.
Definition: Utilities.cpp:100
dd4hep::xml::configSensitiveDetector
std::size_t configSensitiveDetector(dd4hep::Detector &detector, dd4hep::SensitiveDetector sensitive, dd4hep::xml::Handle_t element)
Configure sensitive detector from XML element.
Definition: Utilities.cpp:378