/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Simulation/BOOST/EmcSim/EmcSim-00-00-46/EmcSim/BesEmcParameter.hh

Go to the documentation of this file.
00001 //---------------------------------------------------------------------------//
00002 //      BOOST --- BESIII Object_Oriented Simulation Tool                     //
00003 //---------------------------------------------------------------------------//
00004 //Description:
00005 //Author: He Miao
00006 //Created: Nov,12 2004
00007 //Modified:
00008 //Comment:
00009 //---------------------------------------------------------------------------//
00010 //$ID: BesEmcParameter.hh
00011 
00012 #ifndef BesEmcParameter_h
00013 #define BesEmcParameter_h 1
00014 
00015 #include "globals.hh"
00016 
00017 class BesEmcParameter
00018 {
00019   public:
00020 
00021     BesEmcParameter();
00022     ~BesEmcParameter();
00023 
00024     //static member functions
00025     static BesEmcParameter& GetInstance();
00026     static bool Exist();
00027     static void Kill();
00028 
00029   private:
00030     //static data members
00031     static BesEmcParameter* fpInstance;
00032        
00033   public:
00034 
00035     void ReadData();
00036 
00037     G4long GetArraySize(){ return array_size; }
00038     G4double GetTau(){ return m_tau; }
00039     G4double GetHighRange(){ return m_highRange; }
00040     G4double GetMidRange(){ return m_midRange; }
00041     G4double GetLowRange(){ return m_lowRange; }
00042     G4double GetSampleTime(){ return m_sampleTime; }
00043     G4double GetPeakTime() { return m_peakTime; }
00044     G4double GetTimeOffset() { return m_timeOffset; }
00045     G4int GetADCbit(){ return m_bitNb; }
00046     G4double GetPhotonsPerMeV(){ return m_photonsPerMeV; }
00047     G4double GetNonuniformity(){ return m_nonuniformity; }
00048 
00049     G4double GetWorldRmin1(){ return WorldRmin1; }
00050     G4double GetWorldRmax1(){ return WorldRmax1; }
00051     G4double GetWorldRmin2(){ return WorldRmin2; }
00052     G4double GetWorldRmax2(){ return WorldRmax2; }
00053     G4double GetWorldDz(){ return WorldDz; }
00054     G4double GetWorldZPosition(){ return WorldZPosition; }
00055     G4double GetCrystalLength(){ return CrystalLength; }
00056     G4double GetCrystalLength1(){ return CrystalLength1; }
00057 
00058     G4int GetCryInOneLayer(G4int nb){ return cryNumInOneLayer[nb]; }
00059     G4int GetPentaInOneSector(G4int nb){ return pentaInOneSector[nb]; }
00060 
00061     G4double GetTyvekThickness(){ return fTyvekThickness; }
00062     G4double GetAlThickness(){ return fAlThickness; }
00063     G4double GetMylarThickness(){ return fMylarThickness; }
00064     
00065     G4double GetBSCRmin(){ return BSCRmin; }
00066     G4double GetBSCDz(){ return BSCDz; }
00067     G4double GetBSCRmin1(){ return BSCRmin1; }
00068     G4double GetBSCRmax1(){ return BSCRmax1; }
00069     G4double GetBSCRmin2(){ return BSCRmin2; }
00070     G4double GetBSCRmax2(){ return BSCRmax2; }
00071     G4double GetBSCDz1(){ return BSCDz1; }
00072     
00073     G4double GetBSCAngleRotat(){ return BSCAngleRotat; }
00074     G4int GetBSCNbPhi(){ return BSCNbPhi; }
00075     G4int GetBSCNbTheta(){ return BSCNbTheta; }
00076     
00077     G4double GetBSCYFront0(){ return BSCYFront0; }
00078     G4double GetBSCYFront(){ return BSCYFront; }
00079     G4double GetBSCYFront1(){ return BSCYFront1; }
00080     G4double GetBSCPosition0(){ return BSCPosition0; }
00081     G4double GetBSCPosition1(){ return BSCPosition1; }
00082 
00083     G4double            GetTaperRingDz(){ return TaperRingDz; }
00084     G4double            GetTaperRingThickness1(){ return TaperRingThickness1; }
00085     G4double            GetTaperRingThickness2(){ return TaperRingThickness2; }
00086     G4double            GetTaperRingThickness3(){ return TaperRingThickness3; }
00087     G4double            GetTaperRingTheta(){ return TaperRingTheta; }
00088     G4double            GetTaperRingInnerLength(){ return TaperRingInnerLength; }
00089     G4double            GetTaperRingOuterLength(){ return TaperRingOuterLength; }
00090 
00091     G4double            GetRearBoxLength(){ return rearBoxLength; }
00092     G4double            GetRearBoxDz(){ return rearBoxDz; }
00093     G4double            GetHangingPlateDz(){ return HangingPlateDz; }
00094     G4double            GetOCGirderAngle(){ return OCGirderAngle; }
00095     
00096     G4double            GetRearCasingThickness(){ return rearCasingThickness; }
00097 
00098     G4double            GetOrgGlassLengthX(){ return orgGlassLengthX; }
00099     G4double            GetOrgGlassLengthY(){ return orgGlassLengthY; }
00100     G4double            GetOrgGlassLengthZ(){ return orgGlassLengthZ; }
00101 
00102     G4double            GetPDLengthX(){ return PDLengthX; }
00103     G4double            GetPDLengthY(){ return PDLengthY; }
00104     G4double            GetPDLengthZ(){ return PDLengthZ; }
00105 
00106     G4double            GetAlPlateDz(){ return AlPlateDz; }
00107     G4double            GetPABoxDz(){ return PABoxDz; }
00108     G4double            GetPABoxThickness(){ return PABoxThickness; }
00109 
00110     G4double            GetCableDr(){ return cableDr; }
00111     G4double            GetWaterPipeDr(){ return waterPipeDr; }
00112     G4double            GetWaterPipeThickness(){ return waterPipeThickness; }
00113 
00114     G4double            GetSPBarThickness(){ return SPBarThickness; }
00115     G4double            GetSPBarThickness1(){ return SPBarThickness1; }
00116     G4double            GetSPBarwidth(){ return SPBarwidth; }
00117 
00118     G4double            GetEndRingDz(){ return EndRingDz; }
00119     G4double            GetEndRingDr(){ return EndRingDr; }
00120     G4double            GetEndRingRmin(){ return EndRingRmin; }
00121 
00122     G4double            GetLightOutput(G4int i){ return lightOutput[i]; }
00123     G4double            GetLightOutput(G4int, G4int, G4int);
00124 
00125   private:
00126 
00127     //digitise parameter
00128     G4long array_size;
00129     G4double m_tau;
00130     G4double m_highRange;
00131     G4double m_midRange;
00132     G4double m_lowRange;
00133     G4double m_sampleTime;
00134     G4double m_peakTime;
00135     G4double m_timeOffset;
00136     G4int m_bitNb;
00137     G4double m_photonsPerMeV;
00138     G4double m_nonuniformity;
00139 
00140     //endcap geometry parameter
00141     G4double WorldRmin1;
00142     G4double WorldRmax1;
00143     G4double WorldRmin2;
00144     G4double WorldRmax2;
00145     G4double WorldDz;
00146     G4double WorldZPosition;
00147     G4double CrystalLength;
00148     G4double CrystalLength1;
00149 
00150     G4int cryNumInOneLayer[6];
00151     G4int pentaInOneSector[5];
00152 
00153     //crystal casing parameter
00154     G4double fTyvekThickness;
00155     G4double fAlThickness;
00156     G4double fMylarThickness;
00157     
00158     //barrel geometry parameter
00159     G4double  BSCRmin;
00160     G4double  BSCDz;
00161     G4double  BSCRmin1;
00162     G4double  BSCRmax1;
00163     G4double  BSCRmin2;
00164     G4double  BSCRmax2;
00165     G4double  BSCDz1;
00166 
00167     G4double  BSCAngleRotat;
00168     G4int  BSCNbPhi;
00169     G4int  BSCNbTheta;
00170 
00171     G4double  BSCYFront0;
00172     G4double  BSCYFront;
00173     G4double  BSCYFront1;
00174     G4double  BSCPosition0;
00175     G4double  BSCPosition1;
00176 
00177     //barrel support frame parameter
00178     G4double            TaperRingDz;
00179     G4double            TaperRingThickness1;
00180     G4double            TaperRingThickness2;
00181     G4double            TaperRingThickness3;
00182     G4double            TaperRingTheta;
00183     G4double            TaperRingInnerLength;
00184     G4double            TaperRingOuterLength;
00185 
00186     G4double            rearBoxLength;
00187     G4double            rearBoxDz;
00188     G4double            HangingPlateDz;
00189     G4double            OCGirderAngle;
00190     
00191     G4double            rearCasingThickness;
00192 
00193     G4double            orgGlassLengthX;
00194     G4double            orgGlassLengthY;
00195     G4double            orgGlassLengthZ;
00196 
00197     G4double            PDLengthX;
00198     G4double            PDLengthY;
00199     G4double            PDLengthZ;
00200 
00201     G4double            AlPlateDz;
00202     G4double            PABoxDz;
00203     G4double            PABoxThickness;
00204 
00205     G4double            cableDr;
00206     G4double            waterPipeDr;
00207     G4double            waterPipeThickness;
00208 
00209     G4double            SPBarThickness;
00210     G4double            SPBarThickness1;
00211     G4double            SPBarwidth;
00212 
00213     G4double            EndRingDz;
00214     G4double            EndRingDr;
00215     G4double            EndRingRmin;
00216 
00217     //crystal light yield
00218     G4double            lightOutput[6240];
00219 };
00220 
00221 #endif

Generated on Tue Nov 29 23:14:25 2016 for BOSS_7.0.2 by  doxygen 1.4.7