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 medical/dna/range/src/SteppingVerbos 27 /// \brief Implementation of the SteppingVerbo 28 // 29 // 30 // $Id: SteppingVerbose.cc 71676 2013-06-20 13 31 // 32 //....oooOO0OOooo........oooOO0OOooo........oo 33 //....oooOO0OOooo........oooOO0OOooo........oo 34 35 #include "SteppingVerbose.hh" 36 37 #include "G4ParticleTypes.hh" 38 #include "G4SteppingManager.hh" 39 #include "G4UnitsTable.hh" 40 41 //....oooOO0OOooo........oooOO0OOooo........oo 42 43 SteppingVerbose::SteppingVerbose() : G4Steppin 44 45 //....oooOO0OOooo........oooOO0OOooo........oo 46 47 SteppingVerbose::~SteppingVerbose() {} 48 49 //....oooOO0OOooo........oooOO0OOooo........oo 50 51 void SteppingVerbose::TrackingStarted() 52 { 53 CopyState(); 54 55 G4int prec = G4cout.precision(3); 56 57 // Step zero 58 // 59 if (verboseLevel > 0) { 60 G4cout << std::setw(5) << "Step#" 61 << " " << std::setw(6) << "X" 62 << " " << std::setw(6) << "Y" 63 << " " << std::setw(6) << "Z" 64 << " " << std::setw(9) << "KineE 65 << " " << std::setw(9) << "dEStep" 66 << " " << std::setw(10) << "StepLen 67 << "Volume" 68 << " " << std::setw(10) << "Proces 69 70 G4cout << std::setw(5) << fTrack->GetCurre 71 << G4BestUnit(fTrack->GetPosition() 72 << G4BestUnit(fTrack->GetPosition() 73 << G4BestUnit(fTrack->GetPosition() 74 << G4BestUnit(fTrack->GetKineticEne 75 << G4BestUnit(fStep->GetTotalEnergy 76 << G4BestUnit(fStep->GetStepLength( 77 << G4BestUnit(fTrack->GetTrackLengt 78 << fTrack->GetVolume()->GetName() < 79 } 80 G4cout.precision(prec); 81 } 82 83 //....oooOO0OOooo........oooOO0OOooo........oo 84 85 void SteppingVerbose::StepInfo() 86 { 87 CopyState(); 88 89 G4int prec = G4cout.precision(3); 90 91 if (verboseLevel >= 1) { 92 if (verboseLevel >= 4) VerboseTrack(); 93 if (verboseLevel >= 3) { 94 G4cout << G4endl; 95 G4cout << std::setw(5) << "#Step#" 96 << " " << std::setw(6) << "X" 97 << " " << std::setw(6) << "Y" 98 << " " << std::setw(6) << "Z" 99 << " " << std::setw(9) << "Kin 100 << " " << std::setw(9) << "dEStep 101 << " " << std::setw(10) << "StepL 102 << "Volume" 103 << " " << std::setw(10) << "Proc 104 } 105 106 G4cout << std::setw(5) << fTrack->GetCurre 107 << G4BestUnit(fTrack->GetPosition() 108 << G4BestUnit(fTrack->GetPosition() 109 << G4BestUnit(fTrack->GetPosition() 110 << G4BestUnit(fTrack->GetKineticEne 111 << G4BestUnit(fStep->GetTotalEnergy 112 << G4BestUnit(fStep->GetStepLength( 113 << G4BestUnit(fTrack->GetTrackLengt 114 << fTrack->GetVolume()->GetName(); 115 116 const G4VProcess* process = fStep->GetPost 117 G4String procName = " UserLimit"; 118 if (process) procName = process->GetProces 119 if (fStepStatus == fWorldBoundary) procNam 120 G4cout << " " << std::setw(10) << procNa 121 G4cout << G4endl; 122 123 if (verboseLevel == 2) { 124 const std::vector<const G4Track*>* secon 125 G4int nbtrk = (G4int)(*secondary).size() 126 if (nbtrk) { 127 G4cout << "\n :----- List of second 128 G4cout.precision(4); 129 for (G4int lp = 0; lp < nbtrk; lp++) { 130 G4cout << " " << std::setw(13) << 131 << ": energy =" << std::setw 132 << G4BestUnit((*secondary)[lp 133 << " time =" << std::setw(6) 134 << G4BestUnit((*secondary)[lp 135 G4cout << G4endl; 136 } 137 138 G4cout << " :---------------------- 139 } 140 } 141 } 142 G4cout.precision(prec); 143 } 144 145 //....oooOO0OOooo........oooOO0OOooo........oo 146