CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
BoundDisk.h
Go to the documentation of this file.
1 #ifndef Geom_BoundDisk_H
2 #define Geom_BoundDisk_H
3 
5 
20 class BoundDisk : public BoundPlane {
21 public:
22 
25 
26 
30  const RotationType& rot,
31  Bounds* bounds,
32  MediumProperties* mp=0) {
33  return BoundDiskPointer(new BoundDisk(pos, rot, bounds, mp));
34  }
35 
36 
40  const RotationType& rot,
41  Bounds& bounds,
42  MediumProperties* mp=0) {
43  return BoundDiskPointer(new BoundDisk(pos, rot, &bounds, mp));
44  }
45 
46  virtual ~BoundDisk() {}
47 
48 
49  // -- DEPRECATED CONSTRUCTORS
50 
55  const RotationType& rot,
56  Bounds* bounds) :
57  Surface(pos,rot), BoundPlane( pos, rot, bounds) {}
58 
63  const RotationType& rot,
64  const Bounds& bounds) :
65  Surface(pos,rot), BoundPlane( pos, rot, bounds) {}
66 
67 
68  // -- Extension of the Surface interface for disk
69 
71  float innerRadius() const;
72 
74  float outerRadius() const;
75 
76  protected:
77  // Private constructor - use build() instead
79  const RotationType& rot,
80  Bounds* bounds,
81  MediumProperties* mp=0) :
82  Surface(pos, rot, mp), BoundPlane(pos, rot, bounds, mp) {}
83 
84 };
85 
86 
87 #endif // Geom_BoundDisk_H
ReferenceCountingPointer< BoundDisk > BoundDiskPointer
Definition: BoundDisk.h:23
virtual ~BoundDisk()
Definition: BoundDisk.h:46
static BoundDiskPointer build(const PositionType &pos, const RotationType &rot, Bounds *bounds, MediumProperties *mp=0)
Definition: BoundDisk.h:29
ConstReferenceCountingPointer< BoundDisk > ConstBoundDiskPointer
Definition: BoundDisk.h:24
BoundDisk(const PositionType &pos, const RotationType &rot, Bounds *bounds, MediumProperties *mp=0)
Definition: BoundDisk.h:78
static BoundDiskPointer build(const PositionType &pos, const RotationType &rot, Bounds &bounds, MediumProperties *mp=0)
Definition: BoundDisk.h:39
const Bounds & bounds() const
Definition: BoundSurface.h:89
BoundDisk(const PositionType &pos, const RotationType &rot, const Bounds &bounds)
Definition: BoundDisk.h:62
float outerRadius() const
The outer radius of the disk.
Definition: BoundDisk.cc:10
float innerRadius() const
The inner radius of the disk.
Definition: BoundDisk.cc:6
Definition: Bounds.h:18
BoundDisk(const PositionType &pos, const RotationType &rot, Bounds *bounds)
Definition: BoundDisk.h:54