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

MaGeGeometryGermaniumArrayHole.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
00033 /*
00034  *  this is the class that settles the Gerda experiments
00035  *  it inherit class MJGeometryDetector
00036  *
00037  *
00038  */
00039 // End class description
00040 //
00045 // 
00046 // --------------------------------------------------------------------------//
00077 // --------------------------------------------------------------------------//
00078 
00079 #ifndef _MAGEGEOMETRYGERMANIUMARRAYHOLE_HH
00080 #define _MAGEGEOMETRYGERMANIUMARRAYHOLE_HH
00081 
00082 //---------------------------------------------------------------------------//
00083 //      Geant4 headers
00084 #include "globals.hh"
00085 #include "G4LogicalVolume.hh"
00086 
00087 class MaGeGeometryGermaniumArrayHoleMessenger;
00088 
00089 // MJ headers
00090 #include "geometry/MJGeometryDetector.hh"
00091 #include "gerdageometry/MaGeGeometryGermaniumCrystalHole.hh"
00092 
00093 //---------------------------------------------------------------------------//
00094 
00095 class MaGeGeometryGermaniumArrayHole 
00096 {
00097   //public members
00098 public:
00099 
00100 
00101   //default constructor
00102   MaGeGeometryGermaniumArrayHole();
00103 
00104   //copy constructor
00105 
00106   //destructor
00107   ~MaGeGeometryGermaniumArrayHole();
00108 
00109   // construction inheritedfrom MJGeometryDetector
00110   void ConstructArrayPositions();
00111 
00112   // setters
00113   void SetHorizontalGap(G4double hg) {GeDetectorHorizontalGap=hg;};
00114   void SetVerticalGap(G4double vg)   {GeDetectorVerticalGap=vg;};
00115 
00116   // getters
00117   G4LogicalVolume* GetCrystalActiveLogical()
00118      {  return theCrystal->GetCrystalActiveLogical();   };
00119   G4LogicalVolume* GetCrystalDeadLayerLogical()
00120      {  return theCrystal->GetCrystalDeadLayerLogical();   };
00121   G4ThreeVector GetCrystalPosition(int i)
00122      {  return position_ge[i]; };
00123 //  char*  GetCrystalName(int i) { return name_ge[i]; };
00124 
00125   //protected members
00126 protected:
00127 
00128 
00129   //private  members
00130 private:
00131 
00132 //-----------------------------------------
00133 // Number of Ge crystals
00134 //-----------------------------------------
00135     static const G4int     GeCrystalNumLayer=3;
00136     static const G4int     GeCrystalNumColumn=7;
00137     static const G4int     GeCrystalNum=21;
00138 //-----------------------------------------
00139 // Ge crystal
00140 //-----------------------------------------
00141     G4double  GeCrystalOuterRadius;
00142     G4double  GeCrystalInnerRadius;
00143     G4double  GeCrystalDeadlayer;
00144     G4double  GeCrystalHeight;
00145 //-----------------------------------------
00146 // Ge detectors arrangement
00147 //-----------------------------------------
00148     G4double  GeDetectorHorizontalGap;
00149     G4double  GeDetectorVerticalGap;
00150 
00151     MaGeGeometryGermaniumCrystalHole *theCrystal;
00152 //    G4VPhysicalVolume* GeActiveCrystal_Physical[GeCrystalNum];
00153 //    G4VPhysicalVolume* GeDeadlayerCrystal_Physical[GeCrystalNum];
00154 //-----------------------------------------
00155 // positions of the Ge detectors
00156 //-----------------------------------------
00157     G4ThreeVector position_ge[GeCrystalNum];
00158  //   char*    name_ge[GeCrystalNum];
00159 
00160     MaGeGeometryGermaniumArrayHoleMessenger *fMessenger;
00161 };
00162 //
00163 #endif

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