CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Public Attributes
cms::DDParsingContext Class Reference

#include <DDParsingContext.h>

Classes

struct  BooleanShape
 
struct  CompositeMaterial
 

Public Member Functions

 DDParsingContext (dd4hep::Detector *det)
 
bool const ns (std::string &result)
 
 ~DDParsingContext ()
 

Public Attributes

bool debug_algorithms = false
 
bool debug_constants = false
 
bool debug_includes = false
 
bool debug_materials = false
 
bool debug_namespaces = false
 
bool debug_placements = false
 
bool debug_rotations = false
 
bool debug_shapes = false
 
bool debug_specpars = false
 
bool debug_visattr = false
 
bool debug_volumes = false
 
std::atomic< dd4hep::Detector * > description
 
tbb::concurrent_vector< std::string > disabledAlgs
 
bool geo_inited = false
 
tbb::concurrent_queue< std::string > namespaces
 
tbb::concurrent_unordered_map< std::string, dd4hep::Rotation3D > rotations
 
tbb::concurrent_unordered_map< std::string, dd4hep::Solid > shapes
 
std::map< std::string, std::vector< CompositeMaterial > > unresolvedMaterials
 
std::map< std::string, std::variant< BooleanShape< dd4hep::UnionSolid >, BooleanShape< dd4hep::SubtractionSolid >, BooleanShape< dd4hep::IntersectionSolid > > > unresolvedShapes
 
tbb::concurrent_unordered_map< std::string, dd4hep::Volume > volumes
 

Detailed Description

Definition at line 14 of file DDParsingContext.h.

Constructor & Destructor Documentation

cms::DDParsingContext::DDParsingContext ( dd4hep::Detector *  det)
inline

Definition at line 16 of file DDParsingContext.h.

16 : description(det) {}
std::atomic< dd4hep::Detector * > description
cms::DDParsingContext::~DDParsingContext ( )
inline

Definition at line 18 of file DDParsingContext.h.

References disabledAlgs, namespaces, rotations, shapes, and volumes.

18  {
19  rotations.clear();
20  shapes.clear();
21  volumes.clear();
22  disabledAlgs.clear();
23  namespaces.clear();
24  };
tbb::concurrent_vector< std::string > disabledAlgs
tbb::concurrent_unordered_map< std::string, dd4hep::Rotation3D > rotations
tbb::concurrent_unordered_map< std::string, dd4hep::Volume > volumes
tbb::concurrent_unordered_map< std::string, dd4hep::Solid > shapes
tbb::concurrent_queue< std::string > namespaces

Member Function Documentation

bool const cms::DDParsingContext::ns ( std::string &  result)
inline

Definition at line 26 of file DDParsingContext.h.

References namespaces, and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by cms::DDNamespace::DDNamespace().

26  {
28  if (namespaces.try_pop(res)) {
29  result = res;
30  namespaces.emplace(res);
31  return true;
32  }
33  return false;
34  }
Definition: Electron.h:6
tbb::concurrent_queue< std::string > namespaces

Member Data Documentation

bool cms::DDParsingContext::debug_algorithms = false

Definition at line 84 of file DDParsingContext.h.

Referenced by for_each_token(), and cms::DDAlgoArguments::resolveValue().

bool cms::DDParsingContext::debug_constants = false
bool cms::DDParsingContext::debug_includes = false

Definition at line 75 of file DDParsingContext.h.

Referenced by for_each_token().

bool cms::DDParsingContext::debug_materials = false

Definition at line 77 of file DDParsingContext.h.

Referenced by dd4hep::createPlacement(), and for_each_token().

bool cms::DDParsingContext::debug_namespaces = false
bool cms::DDParsingContext::debug_placements = false

Definition at line 81 of file DDParsingContext.h.

Referenced by convert_boolean(), dd4hep::createPlacement(), and for_each_token().

bool cms::DDParsingContext::debug_rotations = false

Definition at line 78 of file DDParsingContext.h.

Referenced by dd4hep::createPlacement(), and for_each_token().

bool cms::DDParsingContext::debug_shapes = false
bool cms::DDParsingContext::debug_specpars = false

Definition at line 85 of file DDParsingContext.h.

Referenced by dd4hep::createPlacement(), and for_each_token().

bool cms::DDParsingContext::debug_visattr = false

Definition at line 83 of file DDParsingContext.h.

Referenced by dd4hep::createPlacement(), and for_each_token().

bool cms::DDParsingContext::debug_volumes = false
std::atomic<dd4hep::Detector*> cms::DDParsingContext::description
tbb::concurrent_vector<std::string> cms::DDParsingContext::disabledAlgs

Definition at line 40 of file DDParsingContext.h.

Referenced by dd4hep::createPlacement(), and ~DDParsingContext().

bool cms::DDParsingContext::geo_inited = false

Definition at line 72 of file DDParsingContext.h.

tbb::concurrent_queue<std::string> cms::DDParsingContext::namespaces
tbb::concurrent_unordered_map<std::string, dd4hep::Rotation3D> cms::DDParsingContext::rotations
tbb::concurrent_unordered_map<std::string, dd4hep::Solid> cms::DDParsingContext::shapes
std::map<std::string, std::vector<CompositeMaterial> > cms::DDParsingContext::unresolvedMaterials

Definition at line 70 of file DDParsingContext.h.

Referenced by dd4hep::createPlacement().

std::map<std::string, std::variant<BooleanShape<dd4hep::UnionSolid>, BooleanShape<dd4hep::SubtractionSolid>, BooleanShape<dd4hep::IntersectionSolid> > > cms::DDParsingContext::unresolvedShapes

Definition at line 61 of file DDParsingContext.h.

Referenced by convert_boolean().

tbb::concurrent_unordered_map<std::string, dd4hep::Volume> cms::DDParsingContext::volumes