CMS 3D CMS Logo

DDExpandedNode.cc
Go to the documentation of this file.
2 
3 #include <cassert>
4 #include <ostream>
5 
9 
11  const DDLogicalPart& lp, const DDPosData* pd, const DDTranslation& t, const DDRotationMatrix& r, int siblingno)
12  : logp_(lp), posd_(pd), trans_(t), rot_(r), siblingno_(siblingno) {}
13 
15 
17  return ((logp_ == n.logp_) && (posd_->copyno() == n.posd_->copyno()));
18 }
19 
21  assert(posd_);
22  return posd_->copyno();
23 }
24 
25 std::ostream& operator<<(std::ostream& os, const DDExpandedNode& n) {
26  os << n.logicalPart().name() << '[' << n.copyno() << ']';
27  return os;
28 }
29 
30 std::ostream& operator<<(std::ostream& os, const DDGeoHistory& h) {
31  for (const auto& it : h) {
32  os << '/' << it;
33  }
34  return os;
35 }
Relative position of a child-volume inside a parent-volume.
Definition: DDPosData.h:13
DDExpandedNode(const DDLogicalPart &lp, const DDPosData *pd, const DDTranslation &t, const DDRotationMatrix &r, int siblingno)
const DDPosData * posd_
represents one node in the DDExpandedView
assert(be >=bs)
ROOT::Math::Rotation3D DDRotationMatrix
A DDRotationMatrix is currently implemented with a ROOT Rotation3D.
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
Definition: DDLogicalPart.h:93
int copyno() const
copy number of this node
std::vector< DDExpandedNode > DDGeoHistory
Geometrical &#39;path&#39; of the current node up to the root-node.
std::ostream & operator<<(std::ostream &os, const DDExpandedNode &n)
DDLogicalPart logp_
int copyno() const
Definition: DDPosData.h:33
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
bool operator==(const DDExpandedNode &n) const
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7