Geant4 Cross Reference |
1 // 2 // ******************************************************************** 3 // * License and Disclaimer * 4 // * * 5 // * The Geant4 software is copyright of the Copyright Holders of * 6 // * the Geant4 Collaboration. It is provided under the terms and * 7 // * conditions of the Geant4 Software License, included in the file * 8 // * LICENSE and available at http://cern.ch/geant4/license . These * 9 // * include a list of copyright holders. * 10 // * * 11 // * Neither the authors of this software system, nor their employing * 12 // * institutes,nor the agencies providing financial support for this * 13 // * work make any representation or warranty, express or implied, * 14 // * regarding this software system or assume any liability for its * 15 // * use. Please see the license in the file LICENSE and URL above * 16 // * for the full disclaimer and the limitation of liability. * 17 // * * 18 // * This code implementation is the result of the scientific and * 19 // * technical work of the GEANT4 collaboration. * 20 // * By using, copying, modifying or distributing the software (or * 21 // * any work based on the software) you agree to acknowledge its * 22 // * use in resulting scientific publications, and indicate your * 23 // * acceptance of all terms of the Geant4 Software license. * 24 // ******************************************************************** 25 // 26 /// \file electromagnetic/TestEm8/src/TestParameters.cc 27 /// \brief Implementation of the TestParameters class 28 // 29 // 30 //--------------------------------------------------------------------------- 31 // 32 // ClassName: TestParameters 33 // 34 // Author: V.Ivanchenko 01.09.2010 35 // 36 //---------------------------------------------------------------------------- 37 // 38 39 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 40 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 41 42 #include "TestParameters.hh" 43 44 #include "G4SystemOfUnits.hh" 45 #include "G4UnitsTable.hh" 46 47 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 48 49 TestParameters* TestParameters::fManager = nullptr; 50 51 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 52 53 TestParameters* TestParameters::GetPointer() 54 { 55 if (!fManager) { 56 fManager = new TestParameters(); 57 } 58 return fManager; 59 } 60 61 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 62 63 TestParameters::TestParameters() 64 { 65 fMaxEnergy = 100. * CLHEP::keV; 66 67 // normalisation to PAI 68 // fFactorALICE = 325; 69 70 // normalisation to Opt0 71 // fFactorALICE = 275; 72 } 73 74 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 75 76 void TestParameters::SetMaxEnergy(G4double value) 77 { 78 fMaxEnergy = value; 79 } 80 81 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 82 83 G4double TestParameters::GetMaxEnergy() const 84 { 85 return fMaxEnergy; 86 } 87 88 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 89 90 void TestParameters::SetNumberBins(G4int value) 91 { 92 fBinsE = value; 93 } 94 95 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 96 97 G4int TestParameters::GetNumberBins() const 98 { 99 return fBinsE; 100 } 101 102 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 103 104 void TestParameters::SetNumberBinsCluster(G4int value) 105 { 106 fBinsCluster = value; 107 } 108 109 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 110 111 G4int TestParameters::GetNumberBinsCluster() const 112 { 113 return fBinsCluster; 114 } 115 116 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 117 118 void TestParameters::SetMaxCluster(G4int value) 119 { 120 fMaxCluster = value; 121 } 122 123 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 124 125 G4int TestParameters::GetMaxCluster() const 126 { 127 return fMaxCluster; 128 } 129 130 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 131 132 void TestParameters::SetEnergyPerChannel(G4double value) 133 { 134 if (value > 0.0) { 135 fFactorALICE = 1. / value; 136 } 137 } 138 139 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 140 141 G4double TestParameters::GetFactorALICE() const 142 { 143 return fFactorALICE; 144 } 145 146 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 147 148 void TestParameters::SetNormFactor(G4double value) 149 { 150 fNormFactor = value; 151 } 152 153 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 154 155 G4double TestParameters::GetNormFactor() const 156 { 157 return fNormFactor; 158 } 159 160 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 161 162 void TestParameters::SetEnergySmear(G4double value) 163 { 164 fEnergySmear = value; 165 } 166 167 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 168 169 G4double TestParameters::GetEnergySmear() const 170 { 171 return fEnergySmear; 172 } 173 174 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 175 176 void TestParameters::SetPositionZ(G4double val) 177 { 178 fPositionZ = val; 179 } 180 181 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 182 183 G4double TestParameters::GetPositionZ() const 184 { 185 return fPositionZ; 186 } 187 188 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 189 190 void TestParameters::SetBeamEnergy(G4double val) 191 { 192 fBeamEnergy = val; 193 } 194 195 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 196 197 G4double TestParameters::GetBeamEnergy() const 198 { 199 return fBeamEnergy; 200 } 201 202 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 203 204 void TestParameters::SetBeamParticle(const G4ParticleDefinition* ptr) 205 { 206 fParticle = ptr; 207 } 208 209 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 210 211 const G4ParticleDefinition* TestParameters::GetBeamParticle() const 212 { 213 return fParticle; 214 } 215 216 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... 217