CMS 3D CMS Logo

DDCompactViewImpl.h
Go to the documentation of this file.
1 #ifndef DETECTOR_DESCRIPTION_CORE_DD_COMPACT_VIEW_IMPL_H
2 # define DETECTOR_DESCRIPTION_CORE_DD_COMPACT_VIEW_IMPL_H
3 
10 
11 class DDDivision;
12 struct DDPosData;
13 
15 {
16 public:
17 
20 
21  explicit DDCompactViewImpl();
22  DDCompactViewImpl(const DDLogicalPart & rootnodedata);
24 
25  //reassigns root with no check!!!
26  void setRoot(const DDLogicalPart & root) { root_=root; }
27 
28  const DDLogicalPart & root() const { return root_; }
29 
30  DDLogicalPart & current() const;
31 
32  const Graph& graph() const { return graph_; }
33  GraphWalker walker() const;
34 
35  void position (const DDLogicalPart & self,
36  const DDLogicalPart & parent,
37  int copyno,
38  const DDTranslation & trans,
39  const DDRotation & rot,
40  const DDDivision * div);
41 
42  void swap( DDCompactViewImpl& );
43 
44 protected:
45  // internal use ! (see comments in DDCompactView(bool)!)
48 };
49 
50 #endif
void position(const DDLogicalPart &self, const DDLogicalPart &parent, int copyno, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div)
Relative position of a child-volume inside a parent-volume.
Definition: DDPosData.h:13
DDLogicalPart & current() const
void setRoot(const DDLogicalPart &root)
const Graph & graph() const
DDLogicalPart root_
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
Represents a uniquely identifyable rotation matrix.
Definition: DDTransform.h:67
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
Definition: DDLogicalPart.h:92
void swap(DDCompactViewImpl &)
GraphWalker walker() const
const DDLogicalPart & root() const