CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DDCompactViewImpl.h
Go to the documentation of this file.
1 #ifndef DDCompactViewImpl_h
2 # define DDCompactViewImpl_h
3 
7 
8 class DDPartSelector;
9 
11 {
12 public:
13 
14  typedef ::graph<DDLogicalPart, DDPosData* > GraphNav;
16 
17  explicit DDCompactViewImpl();
18  DDCompactViewImpl(const DDLogicalPart & rootnodedata);
20 
21  //reassigns root with no check!!!
22  void setRoot(const DDLogicalPart & root) { root_=root; }
23 
24  const DDLogicalPart & root() const { return root_; }
25 
26  DDLogicalPart & current() const;
27 
28  const GraphNav & graph() const { return graph_; }
29 
31 
32  double weight(const DDLogicalPart &) const;
33 
34  void position (const DDLogicalPart & self,
35  const DDLogicalPart & parent,
36  int copyno,
37  const DDTranslation & trans,
38  const DDRotation & rot,
39  const DDDivision * div);
40 
41  void swap( DDCompactViewImpl& );
42 
43 protected:
44  // internal use ! (see comments in DDCompactView(bool)!)
47 };
48 
49 #endif
void position(const DDLogicalPart &self, const DDLogicalPart &parent, int copyno, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div)
graphwalker< DDLogicalPart, DDPosData * > WalkerType
DDLogicalPart & current() const
graphwalker< DDLogicalPart, DDPosData * > walker() const
void setRoot(const DDLogicalPart &root)
DDLogicalPart root_
::graph< DDLogicalPart, DDPosData * > GraphNav
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
Represents a uniquely identifyable rotation matrix.
Definition: DDTransform.h:66
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
Definition: DDLogicalPart.h:88
void swap(DDCompactViewImpl &)
const DDLogicalPart & root() const
double weight(const DDLogicalPart &) const
const GraphNav & graph() const