Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 /// \file DetectorConstructionMessenger.cc 27 /// \brief Implementation of the DetectorConst 28 // 29 // 30 // 31 //....oooOO0OOooo........oooOO0OOooo........oo 32 33 #include "DetectorConstructionMessenger.hh" 34 #include "DetectorConstruction.hh" 35 36 #include "G4UIdirectory.hh" 37 #include "G4UIcmdWithADoubleAndUnit.hh" 38 #include "G4UIcmdWithADouble.hh" 39 #include "G4UIcmdWithAnInteger.hh" 40 #include "G4UIcmdWith3VectorAndUnit.hh" 41 #include "G4UIcmdWithABool.hh" 42 #include "G4UIcmdWithAString.hh" 43 44 #include "G4RunManager.hh" 45 #include "G4ios.hh" 46 47 //....oooOO0OOooo........oooOO0OOooo........oo 48 49 DetectorConstructionMessenger::DetectorConstru 50 fDetector(det) 51 { 52 fCmdDir = new G4UIdirectory("/crystal/"); 53 fCmdDir->SetGuidance("crystal Control"); 54 55 fCrystalMaterialCmd = new G4UIcmdWithAStri 56 fCrystalMaterialCmd->SetGuidance("Set Crys 57 fCrystalMaterialCmd->SetParameterName("mat 58 fCrystalMaterialCmd->SetDefaultValue("G4_S 59 60 fCrystalSizeCmd = new G4UIcmdWith3VectorAn 61 fCrystalSizeCmd->SetGuidance("Set Crystal 62 fCrystalSizeCmd->SetParameterName("dimCrX" 63 fCrystalSizeCmd->SetUnitCategory("Length") 64 fCrystalSizeCmd->AvailableForStates(G4Stat 65 66 fCrystalLatticeCmd = new G4UIcmdWithAStrin 67 fCrystalLatticeCmd-> 68 SetGuidance("Set Crystal Lattice, use bra 69 fCrystalLatticeCmd->SetParameterName("latt 70 fCrystalLatticeCmd->SetDefaultValue("(111) 71 72 fCrystalAngleXCmd = new G4UIcmdWithADouble 73 fCrystalAngleXCmd->SetGuidance("Set crysta 74 fCrystalAngleXCmd->SetUnitCategory("Angle" 75 fCrystalAngleXCmd->SetParameterName("angX" 76 fCrystalAngleXCmd->AvailableForStates(G4St 77 78 fCrystalAngleYCmd = new G4UIcmdWithADouble 79 fCrystalAngleYCmd->SetGuidance("Set crysta 80 fCrystalAngleYCmd->SetUnitCategory("Angle" 81 fCrystalAngleYCmd->SetParameterName("angY" 82 fCrystalAngleYCmd->AvailableForStates(G4St 83 84 fCrystalBendingAngleCmd = 85 new G4UIcmdWithADoubleAndUnit("/cr 86 fCrystalBendingAngleCmd->SetGuidance("Set 87 fCrystalBendingAngleCmd->SetParameterName( 88 fCrystalBendingAngleCmd->SetUnitCategory(" 89 fCrystalBendingAngleCmd->SetRange("bending 90 fCrystalBendingAngleCmd->AvailableForState 91 92 fCrystallineUndulatorAmplitudeCmd = 93 new G4UIcmdWithADoubleAndUnit 94 ("/crystal/setCrystallineUndulator 95 fCrystallineUndulatorAmplitudeCmd-> 96 SetGuidance("Set crystalline undul 97 fCrystallineUndulatorAmplitudeCmd->SetUnit 98 fCrystallineUndulatorAmplitudeCmd-> 99 SetParameterName("CrystallineUndul 100 fCrystallineUndulatorAmplitudeCmd-> 101 SetRange("CrystallineUndulatorAmpl 102 fCrystallineUndulatorAmplitudeCmd->Availab 103 104 fCrystallineUndulatorPeriodCmd = 105 new G4UIcmdWithADoubleAndUnit("/cr 106 fCrystallineUndulatorPeriodCmd-> 107 SetGuidance("Set crystalline undul 108 fCrystallineUndulatorPeriodCmd->SetUnitCat 109 fCrystallineUndulatorPeriodCmd-> 110 SetParameterName("CrystallineUndul 111 fCrystallineUndulatorPeriodCmd-> 112 SetRange("CrystallineUndulatorPeri 113 fCrystallineUndulatorPeriodCmd->AvailableF 114 115 fCrystallineUndulatorPhaseCmd = 116 new G4UIcmdWithADouble("/crystal/s 117 fCrystallineUndulatorPhaseCmd-> 118 SetGuidance("Set crystalline undul 119 fCrystallineUndulatorPhaseCmd-> 120 SetParameterName("CrystallineUndul 121 fCrystallineUndulatorPhaseCmd->AvailableFo 122 123 fDetectorSizeCmd = new G4UIcmdWith3VectorA 124 fDetectorSizeCmd->SetGuidance("Set detecto 125 fDetectorSizeCmd->SetParameterName("dimDet 126 fDetectorSizeCmd->SetUnitCategory("Length" 127 fDetectorSizeCmd->AvailableForStates(G4Sta 128 129 fDetectorFrontPosZCmd = 130 new G4UIcmdWithADoubleAndUnit("/cr 131 fDetectorFrontPosZCmd->SetGuidance("Set de 132 fDetectorFrontPosZCmd->SetParameterName("f 133 fDetectorFrontPosZCmd->SetUnitCategory("Le 134 fDetectorFrontPosZCmd->AvailableForStates( 135 136 fPotentialPathCmd = new G4UIcmdWithAString 137 fPotentialPathCmd-> 138 SetGuidance("Set the path where to 139 "for the G4ChannelingF 140 "if different from G4C 141 fPotentialPathCmd->SetParameterName("chann 142 fPotentialPathCmd->SetDefaultValue(""); 143 144 fChannelingModelCmd = new G4UIcmdWithABool 145 fChannelingModelCmd->SetGuidance("Activate 146 fChannelingModelCmd->SetParameterName("Cha 147 fChannelingModelCmd->SetDefaultValue(false 148 149 fRadModelCmd = new G4UIcmdWithABool("/crys 150 fRadModelCmd->SetGuidance("Activate/deacti 151 fRadModelCmd->SetParameterName("ActivateRa 152 fRadModelCmd->SetDefaultValue(false); 153 154 fMinPhotonEnergyCmd = 155 new G4UIcmdWithADoubleAndUnit("/cr 156 fMinPhotonEnergyCmd-> 157 SetGuidance("Set the low energy th 158 "the photons emitted i 159 fMinPhotonEnergyCmd->SetParameterName("Min 160 fMinPhotonEnergyCmd->SetUnitCategory("Ener 161 fMinPhotonEnergyCmd->SetRange("MinPhotonEn 162 fMinPhotonEnergyCmd->AvailableForStates(G4 163 164 fSamplingPhotonsNumberCmd = 165 new G4UIcmdWithAnInteger("/crystal 166 fSamplingPhotonsNumberCmd-> 167 SetGuidance("Set SamplingPhotonsNu 168 fSamplingPhotonsNumberCmd->SetParameterNam 169 fSamplingPhotonsNumberCmd->SetRange("Sampl 170 fSamplingPhotonsNumberCmd->AvailableForSta 171 172 fNSmallTrajectoryStepsCmd = 173 new G4UIcmdWithAnInteger("/crystal 174 fNSmallTrajectoryStepsCmd-> 175 SetGuidance("Set NSmallTrajectoryS 176 fNSmallTrajectoryStepsCmd->SetParameterNam 177 fNSmallTrajectoryStepsCmd->SetRange("NSmal 178 fNSmallTrajectoryStepsCmd->AvailableForSta 179 180 fRadiationAngleFactorCmd = 181 new G4UIcmdWithADouble("/crystal/s 182 fRadiationAngleFactorCmd->SetGuidance("Set 183 fRadiationAngleFactorCmd->SetParameterName 184 fRadiationAngleFactorCmd->SetRange("Radiat 185 fRadiationAngleFactorCmd->AvailableForStat 186 187 fMinPhotonEnergyAddStatCmd = 188 new G4UIcmdWithADoubleAndUnit("/crystal/Ad 189 fMinPhotonEnergyAddStatCmd-> 190 SetGuidance("Set the min energy in 191 "the sampling photon s 192 fMinPhotonEnergyAddStatCmd->SetParameterNa 193 fMinPhotonEnergyAddStatCmd->SetUnitCategor 194 fMinPhotonEnergyAddStatCmd->SetRange("addS 195 fMinPhotonEnergyAddStatCmd->AvailableForSt 196 197 fMaxPhotonEnergyAddStatCmd = 198 new G4UIcmdWithADoubleAndUnit("/crystal/Ad 199 fMaxPhotonEnergyAddStatCmd-> 200 SetGuidance("Set the max energy in 201 "the sampling photon s 202 fMaxPhotonEnergyAddStatCmd->SetParameterNa 203 fMaxPhotonEnergyAddStatCmd->SetUnitCategor 204 fMaxPhotonEnergyAddStatCmd->SetRange("addS 205 fMaxPhotonEnergyAddStatCmd->AvailableForSt 206 207 fTimesPhotonStatisticsCmd = 208 new G4UIcmdWithAnInteger("/crystal/AddPhot 209 this); 210 fTimesPhotonStatisticsCmd-> 211 SetGuidance("Set multiple of the sa 212 fTimesPhotonStatisticsCmd->SetParameterNam 213 fTimesPhotonStatisticsCmd->SetRange("times 214 fTimesPhotonStatisticsCmd->AvailableForSta 215 216 fParticleMinKinEnergyCmd = 217 new G4UIcmdWithADoubleAndUnit("/cr 218 fParticleMinKinEnergyCmd-> 219 SetGuidance("Set the low energy th 220 "to enter the G4Channe 221 fParticleMinKinEnergyCmd->SetParameterName 222 fParticleMinKinEnergyCmd->SetUnitCategory( 223 fParticleMinKinEnergyCmd->SetRange("partLE 224 fParticleMinKinEnergyCmd->AvailableForStat 225 226 fProtonMinKinEnergyCmd = 227 new G4UIcmdWithADoubleAndUnit("/cr 228 fProtonMinKinEnergyCmd-> 229 SetGuidance("Set the low energy th 230 "to enter the G4Channe 231 fProtonMinKinEnergyCmd->SetParameterName(" 232 fProtonMinKinEnergyCmd->SetUnitCategory("E 233 fProtonMinKinEnergyCmd->SetRange("protonLE 234 fProtonMinKinEnergyCmd->AvailableForStates 235 236 fAntiprotonMinKinEnergyCmd = 237 new G4UIcmdWithADoubleAndUnit("/crystal 238 fAntiprotonMinKinEnergyCmd->SetGuidance("S 239 " 240 fAntiprotonMinKinEnergyCmd->SetParameterNa 241 fAntiprotonMinKinEnergyCmd->SetUnitCategor 242 fAntiprotonMinKinEnergyCmd->SetRange("anti 243 fAntiprotonMinKinEnergyCmd->AvailableForSt 244 245 fPiPlusMinKinEnergyCmd = 246 new G4UIcmdWithADoubleAndUnit("/cr 247 fPiPlusMinKinEnergyCmd-> 248 SetGuidance("Set the low energy th 249 "to enter the G4Channe 250 fPiPlusMinKinEnergyCmd->SetParameterName(" 251 fPiPlusMinKinEnergyCmd->SetUnitCategory("E 252 fPiPlusMinKinEnergyCmd->SetRange("piPlusLE 253 fPiPlusMinKinEnergyCmd->AvailableForStates 254 255 fPiMinusMinKinEnergyCmd = 256 new G4UIcmdWithADoubleAndUnit("/cr 257 fPiMinusMinKinEnergyCmd->SetGuidance("Set 258 "to e 259 fPiMinusMinKinEnergyCmd->SetParameterName( 260 fPiMinusMinKinEnergyCmd->SetUnitCategory(" 261 fPiMinusMinKinEnergyCmd->SetRange("piMinus 262 fPiMinusMinKinEnergyCmd->AvailableForState 263 264 fPositronMinKinEnergyCmd = 265 new G4UIcmdWithADoubleAndUnit("/cr 266 fPositronMinKinEnergyCmd->SetGuidance("Set 267 "to 268 fPositronMinKinEnergyCmd->SetParameterName 269 fPositronMinKinEnergyCmd->SetUnitCategory( 270 fPositronMinKinEnergyCmd->SetRange("ePlusL 271 fPositronMinKinEnergyCmd->AvailableForStat 272 273 fElectronMinKinEnergyCmd = 274 new G4UIcmdWithADoubleAndUnit("/cr 275 fElectronMinKinEnergyCmd->SetGuidance("Set 276 "to 277 fElectronMinKinEnergyCmd->SetParameterName 278 fElectronMinKinEnergyCmd->SetUnitCategory( 279 fElectronMinKinEnergyCmd->SetRange("eMinus 280 fElectronMinKinEnergyCmd->AvailableForStat 281 282 fMuPlusMinKinEnergyCmd = 283 new G4UIcmdWithADoubleAndUnit("/cr 284 fMuPlusMinKinEnergyCmd->SetGuidance("Set t 285 "to en 286 fMuPlusMinKinEnergyCmd->SetParameterName(" 287 fMuPlusMinKinEnergyCmd->SetUnitCategory("E 288 fMuPlusMinKinEnergyCmd->SetRange("muPlusLE 289 fMuPlusMinKinEnergyCmd->AvailableForStates 290 291 fMuMinusMinKinEnergyCmd = 292 new G4UIcmdWithADoubleAndUnit("/cr 293 fMuMinusMinKinEnergyCmd->SetGuidance("Set 294 "to e 295 fMuMinusMinKinEnergyCmd->SetParameterName( 296 fMuMinusMinKinEnergyCmd->SetUnitCategory(" 297 fMuMinusMinKinEnergyCmd->SetRange("muMinus 298 fMuMinusMinKinEnergyCmd->AvailableForState 299 300 fLindhardAnglesCmd = new G4UIcmdWithADoubl 301 fLindhardAnglesCmd-> 302 SetGuidance("Set high angular thre 303 "the G4ChannelingFastS 304 fLindhardAnglesCmd->SetParameterName("Lind 305 fLindhardAnglesCmd->SetRange("LindhardAngl 306 fLindhardAnglesCmd->AvailableForStates(G4S 307 308 fLindhardAnglesProtonCmd = 309 new G4UIcmdWithADouble("/crystal/s 310 fLindhardAnglesProtonCmd-> 311 SetGuidance("Set high angular thre 312 "the G4ChannelingFastS 313 fLindhardAnglesProtonCmd->SetParameterName 314 fLindhardAnglesProtonCmd->SetRange("Lindha 315 fLindhardAnglesProtonCmd->AvailableForStat 316 317 fLindhardAnglesAntiprotonCmd = 318 new G4UIcmdWithADouble("/crystal/s 319 fLindhardAnglesAntiprotonCmd-> 320 SetGuidance("Set high angular thre 321 "the G4ChannelingFastS 322 fLindhardAnglesAntiprotonCmd->SetParameter 323 fLindhardAnglesAntiprotonCmd->SetRange("Li 324 fLindhardAnglesAntiprotonCmd->AvailableFor 325 326 fLindhardAnglesPiPlusCmd = 327 new G4UIcmdWithADouble("/crystal/s 328 fLindhardAnglesPiPlusCmd-> 329 SetGuidance("Set high angular thre 330 "the G4ChannelingFastS 331 fLindhardAnglesPiPlusCmd->SetParameterName 332 fLindhardAnglesPiPlusCmd->SetRange("Lindha 333 fLindhardAnglesPiPlusCmd->AvailableForStat 334 335 fLindhardAnglesPiMinusCmd = 336 new G4UIcmdWithADouble("/crystal/s 337 fLindhardAnglesPiMinusCmd-> 338 SetGuidance("Set high angular thre 339 "the G4ChannelingFastS 340 fLindhardAnglesPiMinusCmd->SetParameterNam 341 fLindhardAnglesPiMinusCmd->SetRange("Lindh 342 fLindhardAnglesPiMinusCmd->AvailableForSta 343 344 fLindhardAnglesPositronCmd = 345 new G4UIcmdWithADouble("/crystal/s 346 fLindhardAnglesPositronCmd-> 347 SetGuidance("Set high angular thre 348 "the G4ChannelingFastS 349 fLindhardAnglesPositronCmd->SetParameterNa 350 fLindhardAnglesPositronCmd->SetRange("Lind 351 fLindhardAnglesPositronCmd->AvailableForSt 352 353 fLindhardAnglesElectronCmd = 354 new G4UIcmdWithADouble("/crystal/s 355 fLindhardAnglesElectronCmd-> 356 SetGuidance("Set high angular thre 357 "the G4ChannelingFastS 358 fLindhardAnglesElectronCmd->SetParameterNa 359 fLindhardAnglesElectronCmd->SetRange("Lind 360 fLindhardAnglesElectronCmd->AvailableForSt 361 362 fLindhardAnglesMuPlusCmd = 363 new G4UIcmdWithADouble("/crystal/s 364 fLindhardAnglesMuPlusCmd-> 365 SetGuidance("Set high angular thre 366 "the G4ChannelingFastS 367 fLindhardAnglesMuPlusCmd->SetParameterName 368 fLindhardAnglesMuPlusCmd->SetRange("Lindha 369 fLindhardAnglesMuPlusCmd->AvailableForStat 370 371 fLindhardAnglesMuMinusCmd = 372 new G4UIcmdWithADouble("/crystal/s 373 fLindhardAnglesMuMinusCmd-> 374 SetGuidance("Set high angular thre 375 "the G4ChannelingFastS 376 fLindhardAnglesMuMinusCmd->SetParameterNam 377 fLindhardAnglesMuMinusCmd->SetRange("Lindh 378 fLindhardAnglesMuMinusCmd->AvailableForSta 379 380 } 381 382 //....oooOO0OOooo........oooOO0OOooo........oo 383 384 DetectorConstructionMessenger::~DetectorConstr 385 { 386 delete fCmdDir; 387 delete fCrystalMaterialCmd; 388 delete fCrystalSizeCmd; 389 delete fCrystalLatticeCmd; 390 delete fCrystalAngleXCmd; 391 delete fCrystalAngleYCmd; 392 delete fCrystalBendingAngleCmd; 393 delete fRadModelCmd; 394 delete fChannelingModelCmd; 395 396 delete fCrystallineUndulatorAmplitudeCmd; 397 delete fCrystallineUndulatorPeriodCmd; 398 delete fCrystallineUndulatorPhaseCmd; 399 400 delete fDetectorSizeCmd; 401 delete fDetectorFrontPosZCmd; 402 403 delete fPotentialPathCmd; 404 405 delete fMinPhotonEnergyCmd; 406 delete fSamplingPhotonsNumberCmd; 407 delete fNSmallTrajectoryStepsCmd; 408 delete fRadiationAngleFactorCmd; 409 delete fMinPhotonEnergyAddStatCmd; 410 delete fMaxPhotonEnergyAddStatCmd; 411 delete fTimesPhotonStatisticsCmd; 412 413 delete fParticleMinKinEnergyCmd; 414 delete fProtonMinKinEnergyCmd; 415 delete fAntiprotonMinKinEnergyCmd; 416 delete fPiPlusMinKinEnergyCmd; 417 delete fPiMinusMinKinEnergyCmd; 418 delete fElectronMinKinEnergyCmd; 419 delete fPositronMinKinEnergyCmd; 420 delete fMuPlusMinKinEnergyCmd; 421 delete fMuMinusMinKinEnergyCmd; 422 423 delete fLindhardAnglesCmd; 424 delete fLindhardAnglesProtonCmd; 425 delete fLindhardAnglesAntiprotonCmd; 426 delete fLindhardAnglesPiPlusCmd; 427 delete fLindhardAnglesPiMinusCmd; 428 delete fLindhardAnglesElectronCmd; 429 delete fLindhardAnglesPositronCmd; 430 delete fLindhardAnglesMuPlusCmd; 431 delete fLindhardAnglesMuMinusCmd; 432 } 433 434 //....oooOO0OOooo........oooOO0OOooo........oo 435 436 void DetectorConstructionMessenger::SetNewValu 437 { 438 if (command == fCrystalMaterialCmd) 439 {fDetector->SetCrystalMaterial(newValu 440 if (command == fCrystalSizeCmd) 441 {fDetector->SetCrystalSize(fCrystalSiz 442 if (command == fCrystalLatticeCmd) 443 {fDetector->SetCrystalLattice(newValue 444 if (command == fCrystalAngleXCmd) 445 {fDetector->SetCrystalAngleX(fCrystalA 446 if (command == fCrystalAngleYCmd) 447 {fDetector->SetCrystalAngleY(fCrystalA 448 if (command == fCrystalBendingAngleCmd) 449 {fDetector->SetCrystalBendingAngle( 450 fCrystalBendingAngleCmd->G 451 if (command == fRadModelCmd) 452 {fDetector->SetRadiationModel(fRadMode 453 if (command == fChannelingModelCmd) 454 {fDetector->SetChannelingModel(fChanne 455 456 if (command == fCrystallineUndulatorAmplit 457 {fDetector->SetCrystallineUndulatorAmp 458 (fCrystallineUndulatorAmplitud 459 if (command == fCrystallineUndulatorPeriod 460 {fDetector->SetCrystallineUndulatorPer 461 (fCrystallineUndulatorPeriodCm 462 if (command == fCrystallineUndulatorPhaseC 463 {fDetector->SetCrystallineUndulatorPha 464 (fCrystallineUndulatorPhaseCmd 465 466 if (command == fDetectorSizeCmd) 467 {fDetector->SetDetectorSize(fDetectorS 468 if (command == fDetectorFrontPosZCmd) 469 {fDetector->SetDetectorFrontPositionZ( 470 fDetectorFrontPosZCmd->Get 471 472 if (command == fPotentialPathCmd) 473 {fDetector->SetPotentialPath(newValue) 474 475 if (command == fMinPhotonEnergyCmd) 476 {fDetector->SetMinPhotonEnergy( 477 fMinPhotonEnergyCmd->GetNe 478 if (command == fSamplingPhotonsNumberCmd) 479 {fDetector->SetSamplingPhotonsNumber( 480 fSamplingPhotonsNumberCmd- 481 if (command == fNSmallTrajectoryStepsCmd) 482 {fDetector->SetNSmallTrajectorySteps( 483 fNSmallTrajectoryStepsCmd- 484 if (command == fRadiationAngleFactorCmd) 485 {fDetector->SetRadiationAngleFactor( 486 fRadiationAngleFactorCmd-> 487 488 if (command == fMinPhotonEnergyAddStatCmd) 489 {fDetector->SetMinPhotonEnergyAddStat( 490 fMinPhotonEnergyAddStatCmd 491 if (command == fMaxPhotonEnergyAddStatCmd) 492 {fDetector->SetMaxPhotonEnergyAddStat( 493 fMaxPhotonEnergyAddStatCmd 494 if (command == fTimesPhotonStatisticsCmd) 495 {fDetector->SetMultiplePhotonStatistic 496 fTimesPhotonStatisticsCmd- 497 498 if (command == fParticleMinKinEnergyCmd) 499 {fDetector->SetParticleMinKinEnergy( 500 fParticleMinKinEnergyCmd-> 501 if (command == fProtonMinKinEnergyCmd) 502 {fDetector->SetProtonMinKinEnergy( 503 fProtonMinKinEnergyCmd->Ge 504 if (command == fAntiprotonMinKinEnergyCmd) 505 {fDetector->SetAntiprotonMinKinEnergy( 506 fAntiprotonMinKinEnergyCmd 507 if (command == fPiPlusMinKinEnergyCmd) 508 {fDetector->SetPiPlusMinKinEnergy( 509 fPiPlusMinKinEnergyCmd->Ge 510 if (command == fPiMinusMinKinEnergyCmd) 511 {fDetector->SetPiMinusMinKinEnergy( 512 fPiMinusMinKinEnergyCmd->G 513 if (command == fElectronMinKinEnergyCmd) 514 {fDetector->SetElectronMinKinEnergy( 515 fElectronMinKinEnergyCmd-> 516 if (command == fPositronMinKinEnergyCmd) 517 {fDetector->SetPositronMinKinEnergy( 518 fPositronMinKinEnergyCmd-> 519 if (command == fMuPlusMinKinEnergyCmd) 520 {fDetector->SetMuPlusMinKinEnergy( 521 fMuPlusMinKinEnergyCmd->Ge 522 if (command == fMuMinusMinKinEnergyCmd) 523 {fDetector->SetMuMinusMinKinEnergy( 524 fMuMinusMinKinEnergyCmd->G 525 526 if (command == fLindhardAnglesCmd) 527 {fDetector->SetLindhardAngles( 528 fLindhardAnglesCmd->GetNew 529 if (command == fLindhardAnglesProtonCmd) 530 {fDetector->SetLindhardAnglesProton( 531 fLindhardAnglesProtonCmd-> 532 if (command == fLindhardAnglesAntiprotonCm 533 {fDetector->SetLindhardAnglesAntiproto 534 fLindhardAnglesAntiprotonC 535 if (command == fLindhardAnglesPiPlusCmd) 536 {fDetector->SetLindhardAnglesPiPlus( 537 fLindhardAnglesPiPlusCmd-> 538 if (command == fLindhardAnglesPiMinusCmd) 539 {fDetector->SetLindhardAnglesPiMinus( 540 fLindhardAnglesPiMinusCmd- 541 if (command == fLindhardAnglesElectronCmd) 542 {fDetector->SetLindhardAnglesElectron( 543 fLindhardAnglesElectronCmd 544 if (command == fLindhardAnglesPositronCmd) 545 {fDetector->SetLindhardAnglesPositron( 546 fLindhardAnglesPositronCmd 547 if (command == fLindhardAnglesMuPlusCmd) 548 {fDetector->SetLindhardAnglesMuPlus( 549 fLindhardAnglesMuPlusCmd-> 550 if (command == fLindhardAnglesMuMinusCmd) 551 {fDetector->SetLindhardAnglesMuMinus( 552 fLindhardAnglesMuMinusCmd- 553 } 554 555 //....oooOO0OOooo........oooOO0OOooo........oo 556