Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

MJDatabaseMEGACrystal.hh

Go to the documentation of this file.
00001 //---------------------------------------------------------------------------//
00002 //bb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nu//
00003 //                                                                           //
00004 //                         MAJORANA Simulation                               //
00005 //                                                                           //
00006 //      This code implementation is the intellectual property of the         //
00007 //      MAJORANA Collaboration. It is based on Geant4, an intellectual       //
00008 //      property of the RD44 GEANT4 collaboration.                           //
00009 //                                                                           //
00010 //                        *********************                              //
00011 //                                                                           //
00012 //    Neither the authors of this software system, nor their employing       //
00013 //    institutes, nor the agencies providing financial support for this      //
00014 //    work  make  any representation or  warranty, express or implied,       //
00015 //    regarding this software system or assume any liability for its use.    //
00016 //    By copying, distributing or modifying the Program (or any work based   //
00017 //    on on the Program) you indicate your acceptance of this statement,     //
00018 //    and all its terms.                                                     //
00019 //                                                                           //
00020 //bb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nu//
00021 //---------------------------------------------------------------------------//
00032 // Begin description of class here
00039 // End class description
00040 //
00045 // 
00046 // --------------------------------------------------------------------------//
00056 // --------------------------------------------------------------------------//
00057 
00058 #ifndef _MJDATABASEMEGACRYSTAL_HH
00059 #define _MJDATABASEMEGACRYSTAL_HH
00060 
00061 //---------------------------------------------------------------------------//
00062 #include <string>
00063 
00064 using namespace std;
00065 //---------------------------------------------------------------------------//
00066 class MJDatabaseElement;
00067 
00068 class MJDatabaseMEGACrystal 
00069 {
00070 public:
00071 
00072   //default constructor
00073   MJDatabaseMEGACrystal();
00074 
00075   MJDatabaseMEGACrystal(string, int, string, double,
00076                         double, double, double,
00077                         double [], double, double,
00078                         char);
00079 
00080   //copy constructor
00081   MJDatabaseMEGACrystal(const MJDatabaseMEGACrystal &);
00082 
00083   //destructor
00084   ~MJDatabaseMEGACrystal();
00085 
00086   //public interface
00087   string GetIdentity() { return _name;}
00088   int GetIndex() {return _id;}
00089   string GetMaterialName() {return _matName;}
00090   MJDatabaseElement* GetMaterial () {return _material;}
00091   double GetHeight() {return _height;}
00092   double GetInnerR() {return _innerR;}
00093   double GetOuterR() {return _outerR;}
00094   double GetCoreDepth() {return _coreDepth;}
00095   //  G4RotationMatrix GetRotMatrix();
00096   double GetInnerDeadLayerWidth() {return _innerDeadLayerW;}
00097   double GetOuterDeadLayerWidth() {return _outerDeadLayerW;}
00098   char   GetDiodType() {return _diodType;}
00099 
00100   string message(){return "you called MEGACrystal";}
00101   void print();
00102 
00103   //protected members
00104 protected:
00105 
00106 
00107   //private  members
00108 private:
00109   string       _name;       //crystal name
00110   int          _id;         // crystal id
00111   string       _matName;
00112   MJDatabaseElement*     _material;
00113   double       _height;
00114   double       _innerR;
00115   double       _outerR;
00116   double       _coreDepth;
00117   double       _orientation[3];
00118   double       _innerDeadLayerW;  //inner dead layer width
00119   double       _outerDeadLayerW;  //outer dead layer width
00120   char           _diodType;         // diod type p or n
00121 
00122 
00123 };
00124 #endif

Generated on Mon Nov 29 16:58:49 2004 for Majorana Simulation by  doxygen 1.3.9.1