15 os <<
"LogicalPart: " << lp <<
" is not defined!" << std::endl;
20 os <<
"LogicalPart: " << lp <<
"| no solid defined, solid="
21 << lp.
solid() << std::endl;
24 os <<
"LogicalPart: " << lp <<
"| solid not init, solid="
25 << lp.
solid() << std::endl;
29 os <<
"LogicalPart: " << lp <<
"| no material defined, material="
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!" << std::endl;
56 os <<
"Rotationmatrix is not defined: " << r << std::endl;
68 os << std::endl <<
"Checking connectivity of CompactView:" << std::endl;
75 std::map<DDLogicalPart,bool>
visited;
78 visited[wkr.
current().first]=
true;
81 visited[wkr.
current().first]=
true;
83 os <<
" CompactView has " << visited.size()
84 <<
" (multiple-)connected LogicalParts with root=" << cpv.
root().
ddname() << std::endl;
92 for(; it < g.
size(); ++it) {
99 os <<
" There were " << uc <<
" unconnected nodes found." << std::endl << std::endl;
102 os <<
" ****************************************************************************" << std::endl;
103 os <<
" WARNING: The geometrical hierarchy may not be complete. " << std::endl
104 <<
" Expect unpredicted behaviour using DDCore/interface (i.e. SEGFAULT)"
106 os <<
" ****************************************************************************" << std::endl;
122 std::map< std::pair<std::string,std::string>,
int > lp_names;
125 for(; it < g.
size(); ++it) {
129 std::map< std::pair<std::string,std::string>,
int >::iterator mit = lp_names.
begin();
132 for (; mit != lp_names.end(); ++ mit) {
133 if (mit->second >1) {
134 os <<
"interesting: " << mit->first.first <<
":" << mit->first.second
135 <<
" counted " << mit->second <<
" times!" << std::endl;
136 os <<
" Names of LogicalParts seem not to be unique!" << std::endl << std::endl;
145 for(it=0; it < g.
size(); ++it) {
165 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;
193 os <<
"DDCore: start comprehensive checking" << std::endl;
202 os <<
"DDCore: end of comprehensive checking" << std::endl;
205 edm::LogError(
"DDCheck") << std::endl <<
"DDD:DDCore:DDCheck: found inconsistency problems!" << std::endl;
adj_list::size_type size() const
def_type isDefined() const
std::pair< edge_iterator, edge_iterator > edge_range
bool DDCheck(std::ostream &os)
bool DDCheckLP(const DDLogicalPart &lp, std::ostream &os)
const graph_type & graph() const
Provides read-only access to the data structure of the compact-view.
const std::string & ns() const
Returns the namespace.
const N & nodeData(const edge_type &) const
const E & edgeData(index_type i) const
const DDSolid & solid(void) const
Returns a reference object of the solid being the shape of this LogicalPart.
type of data representation of DDCompactView
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.
edge_range edges(index_type nodeIndex)
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
DDSolidShape shape(void) const
The type of the solid.
bool DDCheckConnect(const DDCompactView &cpv, std::ostream &os)
value_type current() const
bool DDCheckAll(const DDCompactView &cpv, std::ostream &os)
walker_type walker() const
dont't use ! Proper implementation missing ...
const DDLogicalPart & root() const
returns the DDLogicalPart representing the root of the geometrical hierarchy
static DDI::Store< N, C >::iterator begin()
Provides an exploded view of the detector (tree-view)
const std::string & name() const
Returns the name.
const DDMaterial & material(void) const
Returns a reference object of the material this LogicalPart is made of.
bool DDCheckPD(const DDLogicalPart &lp, DDCompactView::graph_type::edge_range nb, const DDCompactView::graph_type &g, std::ostream &os)