CMS 3D CMS Logo

DDScope.h
Go to the documentation of this file.
1 #ifndef DDCore_DDScope_h
2 #define DDCore_DDScope_h
3 
4 #include <iosfwd>
5 #include <vector>
6 
8 
10 
12 
20 {
21  dd_scope_class operator()( const DDGeoHistory &, const DDGeoHistory & ) const;
22 };
23 
25 
28 class DDScope
29 {
30  friend std::ostream & operator<<( std::ostream &, const DDScope & );
31 
32 public:
33  typedef std::vector<DDGeoHistory> scope_type;
34 
36  DDScope( void );
37 
39  DDScope( const DDGeoHistory &, int depth = 0 );
40 
41  ~DDScope( void );
42 
44 
47  bool addScope( const DDGeoHistory & s );
48 
50  void setDepth( int );
51 
53  int depth( void ) const;
54 
56  const scope_type & scope( void ) const;
57 
58 protected:
59  scope_type subtrees_;
61  int depth_;
62 };
63 
64 std::ostream & operator<<( std::ostream &, const DDScope & );
65 
66 #endif
scope_type subtrees_
Definition: DDScope.h:59
dd_scope_class
Definition: DDScope.h:9
Classification of scope describe by A towards B.
Definition: DDScope.h:19
DDScopeClassification classify_
Definition: DDScope.h:60
std::vector< DDGeoHistory > scope_type
Definition: DDScope.h:33
std::ostream & operator<<(std::ostream &, const DDScope &)
Definition: DDScope.cc:120
std::vector< DDExpandedNode > DDGeoHistory
Geometrical &#39;path&#39; of the current node up to the root-node.
defines subtrees in the expanded-view
Definition: DDScope.h:28
Definition: DDScope.h:9
dd_scope_class operator()(const DDGeoHistory &, const DDGeoHistory &) const
Definition: DDScope.cc:6
int depth_
Definition: DDScope.h:61