CMS 3D CMS Logo

DDDetector.h
Go to the documentation of this file.
1 #ifndef DETECTOR_DESCRIPTION_DD_DETECTOR_H
2 #define DETECTOR_DESCRIPTION_DD_DETECTOR_H
3 
5 #include <string>
6 
7 namespace dd4hep {
8  class Detector;
9  class Volume;
10 }
11 
12 namespace cms {
13  class DDDetector {
14  public:
17 
18  explicit DDDetector(const std::string&, const std::string&);
19  DDDetector() = delete;
20 
21  ~DDDetector();
22 
23  // FIXME: remove the need for it
24  Detector const* description() const {
25  return m_description;
26  }
27 
28  DDVectorsMap const& vectors() const {
29  return m_vectors;
30  }
31 
32  DDPartSelectionMap const& partsels() const {
33  return m_partsels;
34  }
35 
36  DDSpecParRegistry const& specpars() const {
37  return m_specpars;
38  }
39 
40  Volume worldVolume() const;
41 
42  private:
43 
44  void process(const std::string&);
45 
46  Detector* m_description = nullptr;
51  };
52 }
53 
54 #endif
tbb::concurrent_unordered_map< std::string, tbb::concurrent_vector< std::string >> DDPartSelectionMap
DDPartSelectionMap const & partsels() const
Definition: DDDetector.h:32
const std::string m_tag
Definition: DDDetector.h:50
DDSpecParRegistry const & specpars() const
Definition: DDDetector.h:36
dd4hep::Volume Volume
Definition: DDDetector.h:16
DDVectorsMap const & vectors() const
Definition: DDDetector.h:28
tbb::concurrent_unordered_map< std::string, tbb::concurrent_vector< double >> DDVectorsMap
DDPartSelectionMap m_partsels
Definition: DDDetector.h:48
dd4hep::Detector Detector
Definition: DDDetector.h:15
dd4hep::Volume Volume
DDVectorsMap m_vectors
Definition: DDDetector.h:47
DDSpecParRegistry m_specpars
Definition: DDDetector.h:49
Namespace of DDCMS conversion namespace.
Detector const * description() const
Definition: DDDetector.h:24