Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Hype.h

Go to the documentation of this file.
00001 // $Header: /nfs/slac/g/glast/ground/cvs/geometry/geometry/Hype.h,v 1.2 2000/01/18 00:42:06 burnett Exp $
00002 //
00003 
00004 #ifndef __HYPE_H
00005 #define __HYPE_H
00006 
00007 #include "geometry/Volume.h"
00008 
00021 class Hype: public Volume
00022 {
00023  
00024 public:
00025     Hype( double z, double ri, double ro, double sa ); 
00026     // constructor: z is half-length, ri and ro the inner and outer radii,
00027     // and sa the stereo angle
00028 
00029 
00030     const Vector axis()const;
00031     double halfLength() const { return half_length; }
00032     double innerRadius() const { return inner_radius; }
00033     double outerRadius() const { return outer_radius; }
00034     double stereoAngle() const { return stereo_angle; }
00035 
00036     virtual void calcMaxDimension();
00037 
00038 
00039     virtual const char *nameOf() const { return "Hype"; }
00040     virtual void printOn( std::ostream& os = std::cout ) const;
00041 
00042  private:    // don't really need these, keep them for now              
00043     double half_length;                 // half length of Hype
00044     double inner_radius;                // inner radius of Hype
00045     double outer_radius;                // outer radius of Hype
00046     double stereo_angle;                // stereo angle (in radians) of Hype
00047 };
00048 
00049 #endif
00050 

Generated at Mon Nov 26 18:18:21 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000