CMS 3D CMS Logo

GeometricTimingDetExtra.h
Go to the documentation of this file.
1 #ifndef Geometry_MTDNumberingBuilder_GeometricTimingDetExtra_H
2 #define Geometry_MTDNumberingBuilder_GeometricTimingDetExtra_H
3 
7 
8 #include <vector>
10 
11 #include <ext/pool_allocator.h>
12 
14  public:
16 #ifdef PoolAlloc
17  typedef std::vector< DDExpandedNode, PoolAlloc<DDExpandedNode> > GeoHistory;
18 #endif
19 #ifndef PoolAlloc
20  typedef std::vector<DDExpandedNode> GeoHistory;
21 #endif
22 
25  GeometricTimingDetExtra( GeometricTimingDet const *gd ) : _mygd(gd) { }; // this better be "copied into" or it will never have any valid numbers/info.
26 
27  GeometricTimingDetExtra( GeometricTimingDet const *gd, DetId id, GeoHistory& gh, double vol, double dens, double wgt, double cpy, const std::string& mat, const std::string& name, bool dd=false );
28 
33 
38  GeometricTimingDet const * geometricDet() const { return _mygd; }
39 
45  }
46  DetId geographicalId() const { return _geographicalId; }
47 
48  GeoHistory const & parents() const {
49 
50  return _parents;
51  }
52  //rr
53  int copyno() const {
54  return _copy;
55  }
56  double volume() const {
57  return _volume;
58  }
59  double density() const {
60  return _density;
61  }
62  double weight() const {
63  return _weight;
64  }
65  std::string const & material() const {
66  return _material;
67  }
68 
72  bool wasBuiltFromDD() const {
73  return _fromDD;
74  }
75 
76  std::string const& name() const { return _name; }
77 
78  private:
79 
84  GeoHistory _parents;
85  double _volume;
86  double _density;
87  double _weight;
88  int _copy;
91  bool _fromDD; // may not need this, keep an eye on it.
92 };
93 
94 #undef PoolAlloc
95 #endif
std::string const & material() const
std::vector< DDExpandedNode > GeoHistory
std::pair< int const *, size_t > NavRange
DDExpandedView::NavRange NavRange
GeometricTimingDet const * geometricDet() const
std::string const & name() const
Definition: DetId.h:18
GeoHistory const & parents() const
GeometricTimingDet const * _mygd
Definition: DDUnits.h:8
GeometricTimingDetExtra(GeometricTimingDet const *gd)