Go to the source code of this file.
◆ DDCheck() [1/2]
bool DDCheck |
( |
std::ostream & |
os | ) |
|
Definition at line 149 of file DDCheck.cc.
References DDCheckAll(), and mps_fire::result.
151 os <<
"DDCore: start comprehensive checking" << std::endl;
157 os <<
"DDCore: end of comprehensive checking" << std::endl;
160 edm::LogError(
"DDCheck") << std::endl <<
"DDD:DDCore:DDCheck: found inconsistency problems!" << std::endl;
Log< level::Error, false > LogError
Compact representation of the geometrical detector hierarchy.
bool DDCheckAll(const DDCompactView &cpv, std::ostream &os)
Provides an exploded view of the detector (tree-view)
◆ DDCheck() [2/2]
Definition at line 166 of file DDCheck.cc.
References DDCheckAll(), and mps_fire::result.
168 os <<
"DDCore: start comprehensive checking" << std::endl;
174 os <<
"DDCore: end of comprehensive checking" << std::endl;
177 edm::LogError(
"DDCheck") << std::endl <<
"DDD:DDCore:DDCheck: found inconsistency problems!" << std::endl;
Log< level::Error, false > LogError
bool DDCheckAll(const DDCompactView &cpv, std::ostream &os)
Provides an exploded view of the detector (tree-view)
◆ DDCheckAll()
Definition at line 110 of file DDCheck.cc.
References DDCheckConnect(), DDCheckLP(), DDCheckPD(), g, DDCompactView::graph(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, DDName::name(), DDBase< N, C >::name(), DDName::ns(), and mps_fire::result.
Referenced by DDCheck().
116 std::map<std::pair<std::string, std::string>,
int> lp_names;
119 for (;
it <
g.size(); ++
it) {
124 for (
const auto& mit : lp_names) {
125 if (mit.second > 1) {
126 os <<
"interesting: " << mit.first.first <<
":" << mit.first.second <<
" counted " << mit.second <<
" times!" 128 os <<
" Names of LogicalParts seem not to be unique!" << std::endl << std::endl;
134 for (
it = 0;
it <
g.size(); ++
it) {
bool DDCheckLP(const DDLogicalPart &lp, std::ostream &os)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
const std::string & name() const
Returns the name.
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
bool DDCheckConnect(const DDCompactView &cpv, std::ostream &os)
bool DDCheckPD(const DDLogicalPart &lp, DDCompactView::Graph::edge_range nb, const DDCompactView::Graph &g, std::ostream &os)
const Graph & graph() const
Provides read-only access to the data structure of the compact-view.
const std::string & ns() const
Returns the namespace.
◆ DDCheckConnect()
bool DDCheckConnect |
( |
const DDCompactView & |
cpv, |
|
|
std::ostream & |
os |
|
) |
| |
Definition at line 64 of file DDCheck.cc.
References DDBase< N, C >::ddname(), g, DDCompactView::graph(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, mps_fire::result, DDCompactView::root(), and class-composition::visited.
Referenced by DDCheckAll().
66 os << std::endl <<
"Checking connectivity of CompactView:" << std::endl;
73 std::map<DDLogicalPart, bool>
visited;
75 visited[wkr.current().first] =
true;
78 visited[wkr.current().first] =
true;
80 os <<
" CompactView has " <<
visited.size() <<
" (multiple-)connected LogicalParts with root=" << cpv.
root().
ddname()
89 for (;
it <
g.size(); ++
it) {
92 os <<
" " <<
g.nodeData(
it).ddname();
96 os <<
" There were " << uc <<
" unconnected nodes found." << std::endl << std::endl;
99 os <<
" ****************************************************************************" << std::endl;
100 os <<
" WARNING: The geometrical hierarchy may not be complete. " << std::endl
101 <<
" Expect unpredicted behaviour using DDCore/interface (i.e. SEGFAULT)" << std::endl;
102 os <<
" ****************************************************************************" << std::endl;
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
const DDLogicalPart & root() const
returns the DDLogicalPart representing the root of the geometrical hierarchy
const Graph & graph() const
Provides read-only access to the data structure of the compact-view.
◆ DDCheckLP()
Definition at line 17 of file DDCheck.cc.
References dd_not_init, DDLogicalPart::material(), mps_fire::result, DDSolid::shape(), and DDLogicalPart::solid().
Referenced by DDCheckAll().
21 os <<
"LogicalPart: " << lp <<
" is not defined!" << std::endl;
25 os <<
"LogicalPart: " << lp <<
"| no solid defined, solid=" << lp.
solid() << std::endl;
27 os <<
"LogicalPart: " << lp <<
"| solid not init, solid=" << lp.
solid() << std::endl;
31 os <<
"LogicalPart: " << lp <<
"| no material defined, material=" << lp.
material() << std::endl;
DDSolidShape shape(void) const
The type of the solid.
const DDMaterial & material(void) const
Returns a reference object of the material this LogicalPart is made of.
const DDSolid & solid(void) const
Returns a reference object of the solid being the shape of this LogicalPart.
◆ DDCheckPD()
Definition at line 40 of file DDCheck.cc.
References g, DDBase< N, C >::name(), alignCSCRings::r, and mps_fire::result.
Referenced by DDCheckAll().
45 if (nb.first != nb.second) {
46 for (; nb.first != nb.second; ++(nb.first)) {
47 if (!nb.first->second) {
48 edm::LogInfo(
"DDCheck") <<
"PosData of LogicalPart " << lp.
name() <<
" missing." << std::endl;
49 edm::LogInfo(
"DDCheck") <<
" the LogicalPart is meant to be a daughter volume, but its position is missing!" 52 const DDRotation&
r =
g.edgeData(nb.first->second)->ddrot();
53 if (!
r.isDefined().second) {
55 const DDRotation&
r =
g.edgeData(nb.first->second)->ddrot();
56 os <<
"Rotationmatrix is not defined: " <<
r << std::endl;
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Represents a uniquely identifyable rotation matrix.
Log< level::Info, false > LogInfo