CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/DataFormats/GeometrySurface/interface/SimpleDiskBounds.h

Go to the documentation of this file.
00001 #ifndef Geom_SimpleDiskBounds_H
00002 #define Geom_SimpleDiskBounds_H
00003 
00004 
00005 #include "DataFormats/GeometryVector/interface/LocalPoint.h"
00006 #include "DataFormats/GeometrySurface/interface/Bounds.h"
00007 
00008 
00013 class SimpleDiskBounds : public Bounds {
00014 public:
00015 
00017   SimpleDiskBounds( float rmin, float rmax, float zmin, float zmax);
00018 
00019   virtual float length()    const { return theZmax - theZmin;}
00020   virtual float width()     const { return 2*theRmax;}
00021   virtual float thickness() const { return theZmax-theZmin;}
00022 
00023   virtual bool inside( const Local3DPoint& p) const;
00024     
00025   virtual bool inside( const Local3DPoint& p, const LocalError& err, float scale) const;
00026 
00027   virtual bool inside( const Local2DPoint& p, const LocalError& err) const;
00028 
00029   virtual Bounds* clone() const;
00030 
00032   float innerRadius() const {return theRmin;}
00033   float outerRadius() const {return theRmax;}
00034 
00035 private:
00036   float theRmin;
00037   float theRmax;
00038   float theZmin;
00039   float theZmax;
00040 };
00041 
00042 #endif // Geom_SimpleDiskBounds_H
00043 
00044