Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/tracking/src/G4SteppingVerbose.cc

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /tracking/src/G4SteppingVerbose.cc (Version 11.3.0) and /tracking/src/G4SteppingVerbose.cc (Version 10.3.p2)


  1 //                                                  1 //
  2 // *******************************************      2 // ********************************************************************
  3 // * License and Disclaimer                         3 // * License and Disclaimer                                           *
  4 // *                                                4 // *                                                                  *
  5 // * The  Geant4 software  is  copyright of th      5 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
  6 // * the Geant4 Collaboration.  It is provided      6 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
  7 // * conditions of the Geant4 Software License      7 // * conditions of the Geant4 Software License,  included in the file *
  8 // * LICENSE and available at  http://cern.ch/      8 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
  9 // * include a list of copyright holders.           9 // * include a list of copyright holders.                             *
 10 // *                                               10 // *                                                                  *
 11 // * Neither the authors of this software syst     11 // * Neither the authors of this software system, nor their employing *
 12 // * institutes,nor the agencies providing fin     12 // * institutes,nor the agencies providing financial support for this *
 13 // * work  make  any representation or  warran     13 // * work  make  any representation or  warranty, express or implied, *
 14 // * regarding  this  software system or assum     14 // * regarding  this  software system or assume any liability for its *
 15 // * use.  Please see the license in the file      15 // * use.  Please see the license in the file  LICENSE  and URL above *
 16 // * for the full disclaimer and the limitatio     16 // * for the full disclaimer and the limitation of liability.         *
 17 // *                                               17 // *                                                                  *
 18 // * This  code  implementation is the result      18 // * This  code  implementation is the result of  the  scientific and *
 19 // * technical work of the GEANT4 collaboratio     19 // * technical work of the GEANT4 collaboration.                      *
 20 // * By using,  copying,  modifying or  distri     20 // * By using,  copying,  modifying or  distributing the software (or *
 21 // * any work based  on the software)  you  ag     21 // * any work based  on the software)  you  agree  to acknowledge its *
 22 // * use  in  resulting  scientific  publicati     22 // * use  in  resulting  scientific  publications,  and indicate your *
 23 // * acceptance of all terms of the Geant4 Sof     23 // * acceptance of all terms of the Geant4 Software license.          *
 24 // *******************************************     24 // ********************************************************************
 25 //                                                 25 //
 26 // G4SteppingVerbose class implementation      << 
 27 //                                                 26 //
                                                   >>  27 // $Id: G4SteppingVerbose.cc 66241 2012-12-13 18:34:42Z gunter $
                                                   >>  28 //
                                                   >>  29 //---------------------------------------------------------------
                                                   >>  30 //
                                                   >>  31 // G4SteppingVerbose.cc
                                                   >>  32 //
                                                   >>  33 // Description:
                                                   >>  34 //    Implementation of  the G4SteppingVerbose class
 28 // Contact:                                        35 // Contact:
 29 //   Questions and comments to this code shoul     36 //   Questions and comments to this code should be sent to
 30 //     Katsuya Amako  (e-mail: Katsuya.Amako@k     37 //     Katsuya Amako  (e-mail: Katsuya.Amako@kek.jp)
 31 //     Takashi Sasaki (e-mail: Takashi.Sasaki@     38 //     Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp)
 32 // ------------------------------------------- <<  39 //
                                                   >>  40 //---------------------------------------------------------------
 33                                                    41 
 34 #include "G4SteppingVerbose.hh"                    42 #include "G4SteppingVerbose.hh"
 35                                                << 
 36 #include "G4StepStatus.hh"  // Include from 't << 
 37 #include "G4SteppingManager.hh"                    43 #include "G4SteppingManager.hh"
 38 #include "G4SystemOfUnits.hh"                      44 #include "G4SystemOfUnits.hh"
 39 #include "G4VSensitiveDetector.hh"  // Include <<  45 #include "G4VSensitiveDetector.hh"    // Include from 'hits/digi'
                                                   >>  46 #include "G4StepStatus.hh"    // Include from 'tracking'
 40                                                    47 
 41 // #define G4_USE_G4BESTUNIT_FOR_VERBOSE 1     <<  48 ///#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
 42                                                    49 
 43 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE               50 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
 44 #  include "G4UnitsTable.hh"                   <<  51 #include "G4UnitsTable.hh"
 45 #else                                              52 #else
 46 #  define G4BestUnit(a, b) a                   <<  53 #define G4BestUnit(a,b) a
 47 #endif                                             54 #endif
 48                                                    55 
 49 G4int G4SteppingVerbose::useBestUnitPrecision  << 
 50                                                << 
 51 //////////////////////////////////////////////     56 //////////////////////////////////////////////////
 52 void G4SteppingVerbose::NewStep()              <<  57 G4SteppingVerbose::G4SteppingVerbose()
 53 //////////////////////////////////////////////     58 //////////////////////////////////////////////////
 54 {}                                             <<  59 {
                                                   >>  60 #ifdef G4_TRACKING_DEBUG
                                                   >>  61    G4cout << "G4SteppingVerbose has instantiated" << G4endl;
                                                   >>  62 #endif
                                                   >>  63 }
 55                                                    64 
 56 //////////////////////////////////////////////     65 //////////////////////////////////////////////////
 57 void G4SteppingVerbose::AtRestDoItInvoked()    <<  66 G4SteppingVerbose::~G4SteppingVerbose()
 58 //////////////////////////////////////////////     67 //////////////////////////////////////////////////
 59 {                                                  68 {
 60   if (Silent == 1) {                           <<  69 }
 61     return;                                    << 
 62   }                                            << 
 63                                                << 
 64   G4VProcess* ptProcManager;                   << 
 65   CopyState();                                 << 
 66                                                    70 
 67   if (verboseLevel >= 3) {                     <<  71 //////////////////////////////////////////////////
 68     G4int npt = 0;                             <<  72 void G4SteppingVerbose::NewStep()
 69     G4cout << " **List of AtRestDoIt invoked:" <<  73 //////////////////////////////////////////////////
 70     for (std::size_t np = 0; np < MAXofAtRestL <<  74 {
 71       std::size_t npGPIL = MAXofAtRestLoops -  <<  75 }
 72       if ((*fSelectedAtRestDoItVector)[npGPIL] << 
 73         ++npt;                                 << 
 74         ptProcManager = (*fAtRestDoItVector)[( << 
 75         G4cout << "   # " << npt << " : " << p << 
 76                << G4endl;                      << 
 77       }                                        << 
 78       else if ((*fSelectedAtRestDoItVector)[np << 
 79         ++npt;                                 << 
 80         ptProcManager = (*fAtRestDoItVector)[( << 
 81         G4cout << "   # " << npt << " : " << p << 
 82       }                                        << 
 83     }                                          << 
 84                                                    76 
 85     G4cout << "   Generated secondries # : " < <<  77 //////////////////////////////////////////////////
                                                   >>  78 void G4SteppingVerbose::AtRestDoItInvoked()
                                                   >>  79 //////////////////////////////////////////////////
                                                   >>  80  {
                                                   >>  81    if(Silent==1){ return; }
 86                                                    82 
 87     if (fN2ndariesAtRestDoIt > 0) {            <<  83    G4VProcess* ptProcManager;
 88       G4cout << "   -- List of secondaries gen <<  84    CopyState();
 89              << "(x,y,z,kE,t,PID) --" << G4end << 
 90       for (std::size_t lp1 = (*fSecondary).siz << 
 91            lp1 < (*fSecondary).size(); ++lp1)  << 
 92       {                                        << 
 93         G4cout << "      " << std::setw(9)     << 
 94                << G4BestUnit((*fSecondary)[lp1 << 
 95                << G4BestUnit((*fSecondary)[lp1 << 
 96                << G4BestUnit((*fSecondary)[lp1 << 
 97                << G4BestUnit((*fSecondary)[lp1 << 
 98                << std::setw(9) << G4BestUnit(( << 
 99                << std::setw(18) << (*fSecondar << 
100       }                                        << 
101     }                                          << 
102   }                                            << 
103                                                    85 
104   if (verboseLevel >= 4) {                     <<  86    if(verboseLevel >= 3 ){     
105     ShowStep();                                <<  87      G4int npt=0;
106     G4cout << G4endl;                          <<  88      G4cout << " **List of AtRestDoIt invoked:" << G4endl;
107   }                                            <<  89      for(size_t np=0; np < MAXofAtRestLoops; np++){
                                                   >>  90        size_t npGPIL = MAXofAtRestLoops-np-1;
                                                   >>  91        if( (*fSelectedAtRestDoItVector)[npGPIL] == 2 ){
                                                   >>  92          npt++;                
                                                   >>  93          ptProcManager = (*fAtRestDoItVector)[np];
                                                   >>  94          G4cout << "   # " << npt << " : " 
                                                   >>  95                 << ptProcManager->GetProcessName() 
                                                   >>  96                 << " (Forced)" << G4endl;
                                                   >>  97        } else if ( (*fSelectedAtRestDoItVector)[npGPIL] == 1 ){
                                                   >>  98          npt++;                
                                                   >>  99          ptProcManager = (*fAtRestDoItVector)[np];
                                                   >> 100          G4cout << "   # " << npt << " : "  << ptProcManager->GetProcessName() << G4endl;
                                                   >> 101        }
                                                   >> 102      }
                                                   >> 103      
                                                   >> 104      G4cout << "   Generated secondries # : " << fN2ndariesAtRestDoIt << G4endl;
                                                   >> 105      
                                                   >> 106      if( fN2ndariesAtRestDoIt > 0 ){
                                                   >> 107        G4cout << "   -- List of secondaries generated : " << "(x,y,z,kE,t,PID) --" << G4endl; 
                                                   >> 108        for( size_t lp1=(*fSecondary).size()-fN2ndariesAtRestDoIt;
                                                   >> 109                    lp1<(*fSecondary).size(); lp1++) {
                                                   >> 110          G4cout << "      "
                                                   >> 111                 << std::setw( 9)
                                                   >> 112                 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(),"Length") << " "
                                                   >> 113                 << std::setw( 9)
                                                   >> 114                 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(),"Length") << " "
                                                   >> 115                 << std::setw( 9)
                                                   >> 116                 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(),"Length") << " "
                                                   >> 117                 << std::setw( 9)
                                                   >> 118                 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),"Energy") << " "
                                                   >> 119                 << std::setw( 9)
                                                   >> 120                 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(),"Time") << " "
                                                   >> 121                 << std::setw(18)
                                                   >> 122                 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
                                                   >> 123        }
                                                   >> 124      }
                                                   >> 125    }
                                                   >> 126    
                                                   >> 127    if( verboseLevel >= 4 ){ 
                                                   >> 128      ShowStep();
                                                   >> 129      G4cout << G4endl;
                                                   >> 130    }
108 }                                                 131 }
109                                                << 
110 //////////////////////////////////////////////    132 /////////////////////////////////////////////////////
111 void G4SteppingVerbose::AlongStepDoItAllDone()    133 void G4SteppingVerbose::AlongStepDoItAllDone()
112 //////////////////////////////////////////////    134 /////////////////////////////////////////////////////
113 {                                                 135 {
114   if (Silent == 1) {                           << 136    if(Silent==1){ return; }
115     return;                                    << 
116   }                                            << 
117                                                   137 
118   G4VProcess* ptProcManager;                   << 138    G4VProcess* ptProcManager;
119                                                   139 
120   CopyState();                                 << 140    CopyState();
121                                                   141 
122   if (verboseLevel >= 3) {                     << 142    if(verboseLevel >= 3){ 
123     G4cout << G4endl;                          << 143       G4cout << G4endl;
124     G4cout << " >>AlongStepDoIt (after all inv << 144       G4cout << " >>AlongStepDoIt (after all invocations):" << G4endl;
125     G4cout << "    ++List of invoked processes << 145       G4cout << "    ++List of invoked processes " << G4endl;
126                                                   146 
127     for (std::size_t ci = 0; ci < MAXofAlongSt << 147       for(size_t ci=0; ci<MAXofAlongStepLoops; ci++){
128       ptProcManager = (*fAlongStepDoItVector)( << 148           ptProcManager = (*fAlongStepDoItVector)(ci);
129       G4cout << "      " << ci + 1 << ") ";    << 149           G4cout << "      " << ci+1 << ") ";
130       if (ptProcManager != nullptr) {          << 150           if(ptProcManager != 0){
131         G4cout << ptProcManager->GetProcessNam << 151              G4cout << ptProcManager->GetProcessName() << G4endl;
                                                   >> 152           }
132       }                                           153       }
133     }                                          << 
134                                                   154 
135     ShowStep();                                << 155       ShowStep();
136     G4cout << G4endl;                          << 156       G4cout << G4endl;
137     G4cout << "    ++List of secondaries gener << 157       G4cout << "    ++List of secondaries generated " 
138            << "(x,y,z,kE,t,PID):"              << 158              << "(x,y,z,kE,t,PID):"
139            << "  No. of secondaries = " << (*f << 159              << "  No. of secodaries = " 
                                                   >> 160              << (*fSecondary).size() << G4endl;
140                                                   161 
141     if (! (*fSecondary).empty()) {             << 162       if((*fSecondary).size()>0){
142       for (auto& lp1 : *fSecondary) {          << 163          for(size_t lp1=0; lp1<(*fSecondary).size(); lp1++){
143         G4cout << "      " << std::setw(9) <<  << 164            G4cout << "      "
144                << std::setw(9) << G4BestUnit(l << 165                   << std::setw( 9)
145                << std::setw(9) << G4BestUnit(l << 166                   << G4BestUnit((*fSecondary)[lp1]->GetPosition().x(),"Length")  << " "
146                << std::setw(9) << G4BestUnit(l << 167                   << std::setw( 9)
147                << std::setw(9) << G4BestUnit(l << 168                   << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(),"Length")  << " "
148                << lp1->GetDefinition()->GetPar << 169                   << std::setw( 9)
149       }                                        << 170                   << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(),"Length")  << " "
150     }                                          << 171                   << std::setw( 9)
151   }                                            << 172                   << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(),"Energy") << " "
                                                   >> 173                   << std::setw( 9)
                                                   >> 174                   << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(),"Time")      << " "
                                                   >> 175                   << std::setw(18)
                                                   >> 176                   << (*fSecondary)[lp1]->GetDefinition()->GetParticleName()      << G4endl;
                                                   >> 177          }
                                                   >> 178       }
                                                   >> 179    }
152 }                                                 180 }
153                                                << 
154 //////////////////////////////////////////////    181 ////////////////////////////////////////////////////
155 void G4SteppingVerbose::PostStepDoItAllDone()     182 void G4SteppingVerbose::PostStepDoItAllDone()
156 //////////////////////////////////////////////    183 ////////////////////////////////////////////////////
157 {                                                 184 {
158   if (Silent == 1) {                           << 185    if(Silent==1){ return; }
159     return;                                    << 
160   }                                            << 
161                                                   186 
162   G4VProcess* ptProcManager;                   << 187    G4VProcess* ptProcManager;
163                                                   188 
164   CopyState();                                 << 189    CopyState();
165                                                   190 
166   if ((fStepStatus == fPostStepDoItProc) || (f << 191    if( (fStepStatus == fPostStepDoItProc) |
167       (fCondition == Conditionally) || (fCondi << 192        (fCondition  == Forced)            |
168       (fCondition == StronglyForced))          << 193        (fCondition  == Conditionally)     |
169   {                                            << 194        (fCondition  == ExclusivelyForced) |
170     if (verboseLevel >= 3) {                   << 195        (fCondition  == StronglyForced) ){
171       G4int npt = 0;                           << 196 
172       G4cout << G4endl;                        << 197      if(verboseLevel >= 3){
173       G4cout << " **PostStepDoIt (after all in << 198         G4int npt=0;
174       G4cout << "    ++List of invoked process << 199         G4cout << G4endl;
175                                                << 200         G4cout << " **PostStepDoIt (after all invocations):" << G4endl;
176       for (std::size_t np = 0; np < MAXofPostS << 201         G4cout << "    ++List of invoked processes " << G4endl;
177         std::size_t npGPIL = MAXofPostStepLoop << 202 
178         if ((*fSelectedPostStepDoItVector)[npG << 203         for(size_t np=0; np < MAXofPostStepLoops; np++){
179           ++npt;                               << 204            size_t npGPIL = MAXofPostStepLoops-np-1;
180           ptProcManager = (*fPostStepDoItVecto << 205            if( (*fSelectedPostStepDoItVector)[npGPIL] == 2){
181           G4cout << "      " << npt << ") " << << 206              npt++;
182                  << G4endl;                    << 207              ptProcManager = (*fPostStepDoItVector)[np];
                                                   >> 208              G4cout << "      " << npt << ") "
                                                   >> 209                     << ptProcManager->GetProcessName()
                                                   >> 210                     << " (Forced)" << G4endl;
                                                   >> 211            } else if ( (*fSelectedPostStepDoItVector)[npGPIL] == 1){
                                                   >> 212              npt++;
                                                   >> 213              ptProcManager = (*fPostStepDoItVector)[np];
                                                   >> 214              G4cout << "      " << npt << ") " << ptProcManager->GetProcessName() << G4endl;
                                                   >> 215            }
183         }                                         216         }
184         else if ((*fSelectedPostStepDoItVector << 
185           ++npt;                               << 
186           ptProcManager = (*fPostStepDoItVecto << 
187           G4cout << "      " << npt << ") " << << 
188         }                                      << 
189       }                                        << 
190                                                   217 
191       ShowStep();                              << 218         ShowStep();
192       G4cout << G4endl;                        << 219         G4cout << G4endl;
193       G4cout << "    ++List of secondaries gen << 220         G4cout << "    ++List of secondaries generated "
194              << "(x,y,z,kE,t,PID):"            << 221                << "(x,y,z,kE,t,PID):"
195              << "  No. of secodaries = " << (* << 222                << "  No. of secodaries = "
196       G4cout << "      [Note]Secondaries from  << 223                << (*fSecondary).size() << G4endl;
197                                                << 224         G4cout << "      [Note]Secondaries from AlongStepDoIt included." << G4endl;
198       if (! (*fSecondary).empty()) {           << 225 
199         for (auto& lp1 : *fSecondary) {        << 226         if((*fSecondary).size()>0){
200           G4cout << "      " << std::setw(9) < << 227           for(size_t lp1=0; lp1<(*fSecondary).size(); lp1++){
201                  << std::setw(9) << G4BestUnit << 228             G4cout  << "      "
202                  << std::setw(9) << G4BestUnit << 229                     << std::setw( 9)
203                  << std::setw(9) << G4BestUnit << 230                     << G4BestUnit((*fSecondary)[lp1]->GetPosition().x() , "Length") << " "
204                  << std::setw(9) << G4BestUnit << 231                     << std::setw( 9)
205                  << lp1->GetDefinition()->GetP << 232                     << G4BestUnit((*fSecondary)[lp1]->GetPosition().y() , "Length") << " "
                                                   >> 233                     << std::setw( 9)
                                                   >> 234                     << G4BestUnit((*fSecondary)[lp1]->GetPosition().z() , "Length") << " "
                                                   >> 235                     << std::setw( 9)
                                                   >> 236                     << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy() , "Energy") << " "
                                                   >> 237                     << std::setw( 9)
                                                   >> 238                     << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime() , "Time") << " "
                                                   >> 239                     << std::setw(18)
                                                   >> 240                     << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
                                                   >> 241           }
206         }                                         242         }
207       }                                        << 243      }
208     }                                          << 244    }
209   }                                            << 
210 }                                                 245 }
211                                                   246 
212 /////////////////////////////////////////         247 /////////////////////////////////////////
213 void G4SteppingVerbose::StepInfo()                248 void G4SteppingVerbose::StepInfo()
214 /////////////////////////////////////////         249 /////////////////////////////////////////
215 {                                                 250 {
216   if (Silent == 1) {                           << 251    if(Silent==1){ return; }
217     return;                                    << 252    if(SilentStepInfo==1){ return; }
218   }                                            << 
219   if (SilentStepInfo == 1) {                   << 
220     return;                                    << 
221   }                                            << 
222                                                   253 
223   CopyState();                                    254   CopyState();
224   G4cout.precision(16);                        << 255   G4cout.precision(16); 
225   G4long prec = G4cout.precision(3);           << 256   G4int prec = G4cout.precision(3);
226                                                   257 
227   if (verboseLevel >= 1) {                     << 258   if( verboseLevel >= 1 ){
228     if (verboseLevel >= 4) VerboseTrack();     << 259     if( verboseLevel >= 4 ) VerboseTrack();
229     if (verboseLevel >= 3) {                   << 260     if( verboseLevel >= 3 ){
230       G4cout << G4endl;                           261       G4cout << G4endl;
231 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE           << 262 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE      
232       G4cout << std::setw(5) << "#Step#"       << 263       G4cout << std::setw( 5) << "#Step#" << " "
233              << " " << std::setw(8) << "X"     << 264        << std::setw( 8) << "X"      << "     " << std::setw( 8) << "Y"      << "     "  
234              << "     " << std::setw(8) << "Y" << 265        << std::setw( 8) << "Z"      << "     "
235              << "     " << std::setw(8) << "Z" << 266        << std::setw( 9) << "KineE"  << "     " << std::setw( 8) << "dE"     << "     "  
236              << "     " << std::setw(9) << "Ki << 267        << std::setw(12) << "StepLeng"   << " " << std::setw(12) << "TrackLeng"  << " "
237              << "     " << std::setw(8) << "dE << 268        << std::setw(12) << "NextVolume" << " " << std::setw( 8) << "ProcName"   << G4endl;         
238              << "     " << std::setw(12) << "S << 
239              << " " << std::setw(12) << "Track << 
240              << " " << std::setw(12) << "NextV << 
241              << " " << std::setw(8) << "ProcNa << 
242 #else                                             269 #else
243       G4cout << std::setw(5) << "#Step#"       << 270       G4cout << std::setw( 5) << "#Step#"      << " "
244              << " " << std::setw(8) << "X(mm)" << 271        << std::setw( 8) << "X(mm)"      << " " << std::setw( 8) << "Y(mm)"      << " "  
245              << " " << std::setw(8) << "Y(mm)" << 272        << std::setw( 8) << "Z(mm)"      << " "
246              << " " << std::setw(8) << "Z(mm)" << 273        << std::setw( 9) << "KinE(MeV)"  << " " << std::setw( 8) << "dE(MeV)"    << " "  
247              << " " << std::setw(9) << "KinE(M << 274        << std::setw( 8) << "StepLeng"   << " " << std::setw( 9) << "TrackLeng"  << " "  
248              << " " << std::setw(8) << "dE(MeV << 275        << std::setw(11) << "NextVolume" << " " << std::setw( 8) << "ProcName"   << G4endl;
249              << " " << std::setw(8) << "StepLe << 276 #endif       
250              << " " << std::setw(9) << "TrackL << 277     }
251              << " " << std::setw(11) << "NextV << 278     G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
252              << " " << std::setw(8) << "ProcNa << 279            << std::setw( 8) << G4BestUnit(fTrack->GetPosition().x() , "Length") << " "
253 #endif                                         << 280            << std::setw( 8) << G4BestUnit(fTrack->GetPosition().y() , "Length") << " "
254     }                                          << 281            << std::setw( 8) << G4BestUnit(fTrack->GetPosition().z() , "Length") << " "
255     G4cout << std::setw(5) << fTrack->GetCurre << 282            << std::setw( 9) << G4BestUnit(fTrack->GetKineticEnergy() , "Energy") << " "
256            << G4BestUnit(fTrack->GetPosition() << 283            << std::setw( 8) << G4BestUnit(fStep->GetTotalEnergyDeposit(), "Energy") << " "
257            << G4BestUnit(fTrack->GetPosition() << 284            << std::setw( 8) << G4BestUnit(fStep->GetStepLength() , "Length") << " "
258            << G4BestUnit(fTrack->GetPosition() << 285            << std::setw( 9) << G4BestUnit(fTrack->GetTrackLength() , "Length") << " ";
259            << G4BestUnit(fTrack->GetKineticEne << 
260            << G4BestUnit(fStep->GetTotalEnergy << 
261            << G4BestUnit(fStep->GetStepLength( << 
262            << G4BestUnit(fTrack->GetTrackLengt << 
263                                                   286 
264     if (fTrack->GetNextVolume() != nullptr) {  << 287     // Put cut comment here
                                                   >> 288     if( fTrack->GetNextVolume() != 0 ) { 
265       G4cout << std::setw(11) << fTrack->GetNe    289       G4cout << std::setw(11) << fTrack->GetNextVolume()->GetName() << " ";
                                                   >> 290     } else {
                                                   >> 291       G4cout << std::setw(11) << "OutOfWorld" << " ";
266     }                                             292     }
267     else {                                     << 293     if(fStep->GetPostStepPoint()->GetProcessDefinedStep() != 0){
268       G4cout << std::setw(11) << "OutOfWorld"  << 
269              << " ";                           << 
270     }                                          << 
271     if (fStep->GetPostStepPoint()->GetProcessD << 
272       G4cout << fStep->GetPostStepPoint()->Get    294       G4cout << fStep->GetPostStepPoint()->GetProcessDefinedStep()->GetProcessName();
273     }                                          << 295     } else {
274     else {                                     << 
275       G4cout << "User Limit";                     296       G4cout << "User Limit";
276     }                                             297     }
277     G4cout << G4endl;                             298     G4cout << G4endl;
278     if (verboseLevel == 2) {                   << 299     if( verboseLevel == 2 )
                                                   >> 300     {
279       G4int tN2ndariesTot = fN2ndariesAtRestDo    301       G4int tN2ndariesTot = fN2ndariesAtRestDoIt + fN2ndariesAlongStepDoIt + fN2ndariesPostStepDoIt;
280       if (tN2ndariesTot > 0) {                 << 302       if(tN2ndariesTot>0){
281         G4cout << "    :----- List of 2ndaries    303         G4cout << "    :----- List of 2ndaries - "
282                << "#SpawnInStep=" << std::setw << 304                << "#SpawnInStep=" << std::setw(3) << tN2ndariesTot 
283                << fN2ndariesAtRestDoIt << ",Al << 305                << "(Rest=" << std::setw(2) << fN2ndariesAtRestDoIt
284                << ",Post=" << std::setw(2) <<  << 306                << ",Along=" << std::setw(2) << fN2ndariesAlongStepDoIt
285                << "#SpawnTotal=" << std::setw( << 307                << ",Post="  << std::setw(2) << fN2ndariesPostStepDoIt
286                << G4endl;                      << 308                << "), "
287                                                << 309                << "#SpawnTotal=" << std::setw(3) << (*fSecondary).size()
288         for (std::size_t lp1 = (*fSecondary).s << 310                << " ---------------"
289              ++lp1)                            << 311                << G4endl;
290         {                                      << 312 
291           G4cout << "    : " << std::setw(9)   << 313         for(size_t lp1=(*fSecondary).size()-tN2ndariesTot; lp1<(*fSecondary).size(); lp1++){
292                  << G4BestUnit((*fSecondary)[l << 314           G4cout << "    : "
293                  << std::setw(9) << G4BestUnit << 315                  << std::setw( 9)
294                  << " " << std::setw(9)        << 316                  << G4BestUnit((*fSecondary)[lp1]->GetPosition().x() , "Length")<< " "
295                  << G4BestUnit((*fSecondary)[l << 317                  << std::setw( 9)
296                  << std::setw(9) << G4BestUnit << 318                  << G4BestUnit((*fSecondary)[lp1]->GetPosition().y() , "Length")<< " "
297                  << " " << std::setw(18) << (* << 319                  << std::setw( 9)
298                  << G4endl;                    << 320                  << G4BestUnit((*fSecondary)[lp1]->GetPosition().z() , "Length") << " "
299         }                                      << 321                  << std::setw( 9)
300         G4cout << "    :---------------------- << 322                  << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy() , "Energy")<< " "
301                << "--------------------------- << 323                  << std::setw(18)
302                << "-- EndOf2ndaries Info ----- << 324                  << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
                                                   >> 325         }
                                                   >> 326         G4cout << "    :-----------------------------" << "----------------------------------"
                                                   >> 327                << "-- EndOf2ndaries Info ---------------"  << G4endl;
303       }                                           328       }
304     }                                             329     }
305   }                                               330   }
306   G4cout.precision(prec);                         331   G4cout.precision(prec);
307 }                                                 332 }
                                                   >> 333 // Put cut comment here if( fStepStatus != fWorldBoundary){ 
308                                                   334 
309 ////////////////////////////////////////////      335 ////////////////////////////////////////////
310 void G4SteppingVerbose::DPSLStarted()             336 void G4SteppingVerbose::DPSLStarted()
311 ////////////////////////////////////////////      337 ////////////////////////////////////////////
312 {                                                 338 {
313   if (Silent == 1) {                           << 339    if(Silent==1){ return; }
314     return;                                    << 
315   }                                            << 
316   CopyState();                                    340   CopyState();
317                                                   341 
318   if (verboseLevel > 5) {                      << 342   if( verboseLevel > 5 ){
319     G4cout << G4endl << " >>DefinePhysicalStep << 343     G4cout << G4endl << " >>DefinePhysicalStepLength (List of proposed StepLengths): "  << G4endl;
320   }                                               344   }
321 }                                                 345 }
322                                                << 
323 //////////////////////////////////////////////    346 //////////////////////////////////////////////
324 void G4SteppingVerbose::DPSLUserLimit()           347 void G4SteppingVerbose::DPSLUserLimit()
325 //////////////////////////////////////////////    348 //////////////////////////////////////////////
326 {                                                 349 {
327   if (Silent == 1) {                           << 350    if(Silent==1){ return; }
328     return;                                    << 
329   }                                            << 
330   CopyState();                                    351   CopyState();
331                                                   352 
332   if (verboseLevel > 5) {                      << 353   if( verboseLevel > 5 ){
333     G4cout << G4endl << G4endl;                   354     G4cout << G4endl << G4endl;
334     G4cout << "=== Defined Physical Step Lengt << 355     G4cout << "=== Defined Physical Step Length (DPSL)"             << G4endl;
335     G4cout << "    ++ProposedStep(UserLimit) = << 356     G4cout << "    ++ProposedStep(UserLimit) = " << std::setw( 9) << physIntLength
336            << " : ProcName = User defined maxi << 357            << " : ProcName = User defined maximum allowed Step"     << G4endl;
337   }                                               358   }
338 }                                                 359 }
339                                                << 
340 /////////////////////////////////////////////     360 /////////////////////////////////////////////
341 void G4SteppingVerbose::DPSLPostStep()            361 void G4SteppingVerbose::DPSLPostStep()
342 /////////////////////////////////////////////     362 /////////////////////////////////////////////
343 {                                                 363 {
344   if (Silent == 1) {                           << 364   if(Silent==1){ return; }
345     return;                                    << 
346   }                                            << 
347   CopyState();                                    365   CopyState();
348                                                   366 
349   if (verboseLevel > 5) {                      << 367   if( verboseLevel > 5 ){
350     G4cout << "    ++ProposedStep(PostStep ) = << 368     G4cout << "    ++ProposedStep(PostStep ) = " << std::setw( 9) << physIntLength
351            << " : ProcName = " << fCurrentProc    369            << " : ProcName = " << fCurrentProcess->GetProcessName() << " (";
352     if (fCondition == ExclusivelyForced) {     << 370     if(fCondition==ExclusivelyForced){
353       G4cout << "ExclusivelyForced)" << G4endl    371       G4cout << "ExclusivelyForced)" << G4endl;
354     }                                             372     }
355     else if (fCondition == StronglyForced) {   << 373     else if(fCondition==StronglyForced){
356       G4cout << "StronglyForced)" << G4endl;      374       G4cout << "StronglyForced)" << G4endl;
357     }                                             375     }
358     else if (fCondition == Conditionally) {    << 376     else if(fCondition==Conditionally){
359       G4cout << "Conditionally)" << G4endl;       377       G4cout << "Conditionally)" << G4endl;
360     }                                             378     }
361     else if (fCondition == Forced) {           << 379     else if(fCondition==Forced){
362       G4cout << "Forced)" << G4endl;              380       G4cout << "Forced)" << G4endl;
363     }                                             381     }
364     else {                                     << 382     else{
365       G4cout << "No ForceCondition)" << G4endl    383       G4cout << "No ForceCondition)" << G4endl;
366     }                                             384     }
367   }                                               385   }
368 }                                                 386 }
369                                                << 
370 /////////////////////////////////////////////     387 /////////////////////////////////////////////
371 void G4SteppingVerbose::DPSLAlongStep()           388 void G4SteppingVerbose::DPSLAlongStep()
372 /////////////////////////////////////////////     389 /////////////////////////////////////////////
373 {                                                 390 {
374   if (Silent == 1) {                           << 391   if(Silent==1){ return; }
375     return;                                    << 
376   }                                            << 
377   CopyState();                                    392   CopyState();
378                                                   393 
379   if (verboseLevel > 5) {                      << 394   if( verboseLevel > 5 ){
380     G4cout << "    ++ProposedStep(AlongStep) = << 395     G4cout << "    ++ProposedStep(AlongStep) = " 
381            << G4BestUnit(physIntLength, "Lengt << 396      << std::setw( 9) << G4BestUnit(physIntLength , "Length")
382            << " : ProcName = " << fCurrentProc << 397      << " : ProcName = "
383     if (fGPILSelection == CandidateForSelectio << 398      << fCurrentProcess->GetProcessName() 
                                                   >> 399      << " (";
                                                   >> 400     if(fGPILSelection==CandidateForSelection){
384       G4cout << "CandidateForSelection)" << G4    401       G4cout << "CandidateForSelection)" << G4endl;
385     }                                             402     }
386     else if (fGPILSelection == NotCandidateFor << 403     else if(fGPILSelection==NotCandidateForSelection){
387       G4cout << "NotCandidateForSelection)" <<    404       G4cout << "NotCandidateForSelection)" << G4endl;
388     }                                             405     }
389     else {                                     << 406     else{
390       G4cout << "?!?)" << G4endl;                 407       G4cout << "?!?)" << G4endl;
391     }                                             408     }
392   }                                               409   }
393 }                                                 410 }
394                                                   411 
                                                   >> 412 
395 //////////////////////////////////////////////    413 ////////////////////////////////////////////////
396 void G4SteppingVerbose::TrackingStarted()         414 void G4SteppingVerbose::TrackingStarted()
397 //////////////////////////////////////////////    415 ////////////////////////////////////////////////
398 {                                                 416 {
399   if (Silent == 1) {                           << 417   if(Silent==1){ return; }
400     return;                                    << 
401   }                                            << 
402                                                   418 
403   CopyState();                                    419   CopyState();
404                                                   420 
405   G4long prec = G4cout.precision(3);           << 421   G4int prec = G4cout.precision(3);
406   if (verboseLevel > 0) {                      << 422   if( verboseLevel > 0 ){
                                                   >> 423 
407 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE              424 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
408     G4cout << std::setw(5) << "Step#"          << 425     G4cout << std::setw( 5) << "Step#"  << " "
409            << " " << std::setw(8) << "X"       << 426            << std::setw( 8) << "X"      << "     "
410            << "     " << std::setw(8) << "Y"   << 427            << std::setw( 8) << "Y"      << "     "  
411            << "     " << std::setw(8) << "Z"   << 428            << std::setw( 8) << "Z"      << "     "
412            << "     " << std::setw(9) << "Kine << 429            << std::setw( 9) << "KineE"  << "     "
413            << "     " << std::setw(8) << "dE"  << 430            << std::setw( 8) << "dE"     << "     "  
414            << "     " << std::setw(12) << "Ste << 431            << std::setw(12) << "StepLeng"   << " "  
415            << " " << std::setw(12) << "TrackLe << 432            << std::setw(12) << "TrackLeng"  << " "
416            << " " << std::setw(12) << "NextVol << 433            << std::setw(12) << "NextVolume" << " "
417            << " " << std::setw(8) << "ProcName << 434            << std::setw( 8) << "ProcName"   << G4endl;       
418 #else                                             435 #else
419     G4cout << std::setw(5) << "Step#"          << 436     G4cout << std::setw( 5) << "Step#"      << " "
420            << " " << std::setw(8) << "X(mm)"   << 437            << std::setw( 8) << "X(mm)"      << " "
421            << " " << std::setw(8) << "Y(mm)"   << 438            << std::setw( 8) << "Y(mm)"      << " "  
422            << " " << std::setw(8) << "Z(mm)"   << 439            << std::setw( 8) << "Z(mm)"      << " "
423            << " " << std::setw(9) << "KinE(MeV << 440            << std::setw( 9) << "KinE(MeV)"  << " "
424            << " " << std::setw(8) << "dE(MeV)" << 441            << std::setw( 8) << "dE(MeV)"    << " "  
425            << " " << std::setw(8) << "StepLeng << 442            << std::setw( 8) << "StepLeng"   << " "  
426            << " " << std::setw(9) << "TrackLen << 443            << std::setw( 9) << "TrackLeng"  << " "
427            << " " << std::setw(11) << "NextVol << 444            << std::setw(11) << "NextVolume" << " "
428            << " " << std::setw(8) << "ProcName << 445            << std::setw( 8) << "ProcName"   << G4endl;       
429 #endif                                            446 #endif
430                                                   447 
431     G4cout << std::setw(5) << fTrack->GetCurre << 448     G4cout << std::setw( 5) << fTrack->GetCurrentStepNumber() << " "
432            << G4BestUnit(fTrack->GetPosition() << 449            << std::setw( 8) << G4BestUnit(fTrack->GetPosition().x(),"Length")<< " "
433            << G4BestUnit(fTrack->GetPosition() << 450            << std::setw( 8) << G4BestUnit(fTrack->GetPosition().y(),"Length") << " "
434            << G4BestUnit(fTrack->GetPosition() << 451            << std::setw( 8) << G4BestUnit(fTrack->GetPosition().z(),"Length")<< " "
435            << G4BestUnit(fTrack->GetKineticEne << 452            << std::setw( 9) << G4BestUnit(fTrack->GetKineticEnergy(),"Energy")<< " "
436            << G4BestUnit(fStep->GetTotalEnergy << 453            << std::setw( 8) << G4BestUnit(fStep->GetTotalEnergyDeposit(),"Energy") << " "
437            << G4BestUnit(fStep->GetStepLength( << 454            << std::setw( 8) << G4BestUnit(fStep->GetStepLength(),"Length")<< " "
438            << G4BestUnit(fTrack->GetTrackLengt << 455            << std::setw( 9) << G4BestUnit(fTrack->GetTrackLength(),"Length") << " ";
439                                                   456 
440     if (fTrack->GetNextVolume() != nullptr) {  << 457     if(fTrack->GetNextVolume()){
441       G4cout << std::setw(11) << fTrack->GetNe    458       G4cout << std::setw(11) << fTrack->GetNextVolume()->GetName() << " ";
442     }                                          << 459     } else {
443     else {                                     << 460       G4cout << std::setw(11) << "OutOfWorld" << " ";
444       G4cout << std::setw(11) << "OutOfWorld"  << 
445              << " ";                           << 
446     }                                             461     }
447     G4cout << "initStep" << G4endl;               462     G4cout << "initStep" << G4endl;
448   }                                               463   }
449   G4cout.precision(prec);                         464   G4cout.precision(prec);
450 }                                                 465 }
451                                                << 
452 //////////////////////////////////////////////    466 //////////////////////////////////////////////////////
453 void G4SteppingVerbose::AlongStepDoItOneByOne(    467 void G4SteppingVerbose::AlongStepDoItOneByOne()
454 //////////////////////////////////////////////    468 //////////////////////////////////////////////////////
455 {                                              << 469 { 
456   if (Silent == 1) {                           << 470   if(Silent==1){ return; }
457     return;                                    << 
458   }                                            << 
459                                                   471 
460   CopyState();                                    472   CopyState();
461                                                   473 
462   if (verboseLevel >= 4) {                     << 474   if(verboseLevel >= 4){ 
463     G4cout << G4endl;                             475     G4cout << G4endl;
464     G4cout << " >>AlongStepDoIt (process by pr    476     G4cout << " >>AlongStepDoIt (process by process): "
465            << "   Process Name = " << fCurrent << 477            << "   Process Name = " 
                                                   >> 478            << fCurrentProcess->GetProcessName() << G4endl;
466                                                   479 
467     ShowStep();                                   480     ShowStep();
468     G4cout << "          "                        481     G4cout << "          "
469            << "!Note! Safety of PostStep is on << 482            << "!Note! Safety of PostStep is only valid "
470            << "after all DoIt invocations." << << 483            << "after all DoIt invocations."
                                                   >> 484            << G4endl; 
471                                                   485 
472     VerboseParticleChange();                   << 486     VerboseParticleChange();    
473     G4cout << G4endl;                             487     G4cout << G4endl;
474                                                   488 
475     G4cout << "    ++List of secondaries gener << 489     G4cout << "    ++List of secondaries generated " 
476            << "(x,y,z,kE,t,PID):"              << 490            << "(x,y,z,kE,t,PID):"
477            << "  No. of secodaries = " << fN2n << 491            << "  No. of secodaries = " 
478                                                << 492            << fN2ndariesAlongStepDoIt << G4endl;
479     if (fN2ndariesAlongStepDoIt > 0) {         << 493 
480       for (std::size_t lp1 = (*fSecondary).siz << 494     if(fN2ndariesAlongStepDoIt>0){
481            lp1 < (*fSecondary).size(); ++lp1)  << 495        for(size_t lp1=(*fSecondary).size()-fN2ndariesAlongStepDoIt; lp1<(*fSecondary).size(); lp1++){
482       {                                        << 496           G4cout  << "      "
483         G4cout << "      " << std::setw(9)     << 497                   << std::setw( 9)
484                << G4BestUnit((*fSecondary)[lp1 << 498                   << G4BestUnit((*fSecondary)[lp1]->GetPosition().x() , "Length")<< " "
485                << G4BestUnit((*fSecondary)[lp1 << 499                   << std::setw( 9)
486                << G4BestUnit((*fSecondary)[lp1 << 500                   << G4BestUnit((*fSecondary)[lp1]->GetPosition().y() , "Length")<< " "
487                << G4BestUnit((*fSecondary)[lp1 << 501                   << std::setw( 9)
488                << std::setw(9) << G4BestUnit(( << 502                   << G4BestUnit((*fSecondary)[lp1]->GetPosition().z() , "Length")<< " "
489                << std::setw(18) << (*fSecondar << 503                   << std::setw( 9)
490       }                                        << 504                   << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy() , "Energy")<< " "
491     }                                          << 505                   << std::setw( 9)
                                                   >> 506                   << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime() , "Time")<< " "
                                                   >> 507                   << std::setw(18)
                                                   >> 508                   << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
                                                   >> 509        }
                                                   >> 510     }
492   }                                               511   }
493 }                                                 512 }
494                                                << 
495 //////////////////////////////////////////////    513 //////////////////////////////////////////////////////
496 void G4SteppingVerbose::PostStepDoItOneByOne()    514 void G4SteppingVerbose::PostStepDoItOneByOne()
497 //////////////////////////////////////////////    515 //////////////////////////////////////////////////////
498 {                                                 516 {
499   if (Silent == 1) {                           << 517   if(Silent==1){ return; }
500     return;                                    << 
501   }                                            << 
502                                                   518 
503   CopyState();                                    519   CopyState();
504                                                   520 
505   if (verboseLevel >= 4) {                     << 521   if(verboseLevel >= 4){ 
506     G4cout << G4endl;                             522     G4cout << G4endl;
507     G4cout << " >>PostStepDoIt (process by pro    523     G4cout << " >>PostStepDoIt (process by process): "
508            << "   Process Name = " << fCurrent << 524            << "   Process Name = " 
                                                   >> 525            << fCurrentProcess->GetProcessName() << G4endl;
509                                                   526 
510     ShowStep();                                   527     ShowStep();
511     G4cout << G4endl;                             528     G4cout << G4endl;
512     VerboseParticleChange();                   << 529     VerboseParticleChange();    
513     G4cout << G4endl;                             530     G4cout << G4endl;
514                                                   531 
515     G4cout << "    ++List of secondaries gener << 532     G4cout << "    ++List of secondaries generated " 
516            << "(x,y,z,kE,t,PID):"                 533            << "(x,y,z,kE,t,PID):"
517            << "  No. of secodaries = " << fN2n << 534            << "  No. of secodaries = " 
                                                   >> 535            << fN2ndariesPostStepDoIt << G4endl;
518                                                   536 
519     if (fN2ndariesPostStepDoIt > 0) {          << 537     if(fN2ndariesPostStepDoIt>0){
520       for (std::size_t lp1 = (*fSecondary).siz << 538       for(size_t lp1=(*fSecondary).size()-fN2ndariesPostStepDoIt; lp1<(*fSecondary).size(); lp1++){
521            lp1 < (*fSecondary).size(); ++lp1)  << 539          G4cout << "      "
522       {                                        << 540                 << std::setw( 9)
523         G4cout << "      " << std::setw(9)     << 541                 << G4BestUnit((*fSecondary)[lp1]->GetPosition().x() , "Length")<< " "
524                << G4BestUnit((*fSecondary)[lp1 << 542                 << std::setw( 9)
525                << G4BestUnit((*fSecondary)[lp1 << 543                 << G4BestUnit((*fSecondary)[lp1]->GetPosition().y(), "Length") << " "
526                << G4BestUnit((*fSecondary)[lp1 << 544                 << std::setw( 9)
527                << G4BestUnit((*fSecondary)[lp1 << 545                 << G4BestUnit((*fSecondary)[lp1]->GetPosition().z(), "Length") << " "
528                << std::setw(9) << G4BestUnit(( << 546                 << std::setw( 9)
529                << std::setw(18) << (*fSecondar << 547                 << G4BestUnit((*fSecondary)[lp1]->GetKineticEnergy(), "Energy") << " "
530       }                                        << 548                 << std::setw( 9)
                                                   >> 549                 << G4BestUnit((*fSecondary)[lp1]->GetGlobalTime(), "Time") << " "
                                                   >> 550                 << std::setw(18)
                                                   >> 551                 << (*fSecondary)[lp1]->GetDefinition()->GetParticleName() << G4endl;
                                                   >> 552       }
531     }                                             553     }
532   }                                               554   }
533 }                                                 555 }
534                                                   556 
                                                   >> 557 
535 //////////////////////////////////////            558 //////////////////////////////////////
536 void G4SteppingVerbose::VerboseTrack()            559 void G4SteppingVerbose::VerboseTrack()
537 //////////////////////////////////////            560 //////////////////////////////////////
538 {                                                 561 {
539   if (Silent == 1) {                           << 562   if(Silent==1){ return; }
540     return;                                    << 
541   }                                            << 
542                                                   563 
543   CopyState();                                    564   CopyState();
544                                                << 565 // Show header
545   G4cout << G4endl;                               566   G4cout << G4endl;
546   G4cout << "    ++G4Track Information " << G4    567   G4cout << "    ++G4Track Information " << G4endl;
547   G4long prec = G4cout.precision(3);           << 568   G4int prec = G4cout.precision(3);
548                                                   569 
549   G4cout << "      --------------------------- << 570 
                                                   >> 571   G4cout << "      -----------------------------------------------" 
                                                   >> 572        << G4endl;
550   G4cout << "        G4Track Information  " <<    573   G4cout << "        G4Track Information  " << std::setw(20) << G4endl;
551   G4cout << "      --------------------------- << 574   G4cout << "      -----------------------------------------------" 
                                                   >> 575        << G4endl;
552                                                   576 
553   G4cout << "        Step number         : " < << 577   G4cout << "        Step number         : " 
554          << G4endl;                            << 578        << std::setw(20) << fTrack->GetCurrentStepNumber()
                                                   >> 579        << G4endl; 
555 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE              580 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
556   G4cout << "        Position - x        : " < << 581   G4cout << "        Position - x        : " 
557          << G4BestUnit(fTrack->GetPosition().x << 582        << std::setw(20) << G4BestUnit(fTrack->GetPosition().x(), "Length")
558   G4cout << "        Position - y        : " < << 583        << G4endl; 
559          << G4BestUnit(fTrack->GetPosition().y << 584   G4cout << "        Position - y        : " 
560   G4cout << "        Position - z        : " < << 585        << std::setw(20) << G4BestUnit(fTrack->GetPosition().y(), "Length")
561          << G4BestUnit(fTrack->GetPosition().z << 586        << G4endl; 
562   G4cout << "        Global Time         : " < << 587   G4cout << "        Position - z        : " 
563          << G4BestUnit(fTrack->GetGlobalTime() << 588        << std::setw(20) << G4BestUnit(fTrack->GetPosition().z(), "Length")
564   G4cout << "        Local Time          : " < << 589        << G4endl;
565          << G4BestUnit(fTrack->GetLocalTime(), << 590   G4cout << "        Global Time         : " 
                                                   >> 591        << std::setw(20) << G4BestUnit(fTrack->GetGlobalTime(), "Time")
                                                   >> 592        << G4endl;
                                                   >> 593   G4cout << "        Local Time          : " 
                                                   >> 594        << std::setw(20) << G4BestUnit(fTrack->GetLocalTime(), "Time")
                                                   >> 595        << G4endl;
566 #else                                             596 #else
567   G4cout << "        Position - x (mm)   : " < << 597   G4cout << "        Position - x (mm)   : " 
568          << G4endl;                            << 598        << std::setw(20) << fTrack->GetPosition().x() /mm
569   G4cout << "        Position - y (mm)   : " < << 599        << G4endl; 
570          << G4endl;                            << 600   G4cout << "        Position - y (mm)   : " 
571   G4cout << "        Position - z (mm)   : " < << 601        << std::setw(20) << fTrack->GetPosition().y() /mm
572          << G4endl;                            << 602        << G4endl; 
573   G4cout << "        Global Time (ns)    : " < << 603   G4cout << "        Position - z (mm)   : " 
574          << G4endl;                            << 604        << std::setw(20) << fTrack->GetPosition().z() /mm
575   G4cout << "        Local Time (ns)     : " < << 605        << G4endl;
576          << G4endl;                            << 606   G4cout << "        Global Time (ns)    : " 
                                                   >> 607        << std::setw(20) << fTrack->GetGlobalTime() /ns
                                                   >> 608        << G4endl;
                                                   >> 609   G4cout << "        Local Time (ns)     : " 
                                                   >> 610        << std::setw(20) << fTrack->GetLocalTime() /ns
                                                   >> 611        << G4endl;
577 #endif                                            612 #endif
578   G4cout << "        Momentum Direct - x : " < << 613   G4cout << "        Momentum Direct - x : " 
579          << G4endl;                            << 614        << std::setw(20) << fTrack->GetMomentumDirection().x()
580   G4cout << "        Momentum Direct - y : " < << 615        << G4endl;
581          << G4endl;                            << 616   G4cout << "        Momentum Direct - y : " 
582   G4cout << "        Momentum Direct - z : " < << 617        << std::setw(20) << fTrack->GetMomentumDirection().y()
583          << G4endl;                            << 618        << G4endl;
                                                   >> 619   G4cout << "        Momentum Direct - z : " 
                                                   >> 620        << std::setw(20) << fTrack->GetMomentumDirection().z()
                                                   >> 621        << G4endl;
584 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE              622 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
585   G4cout << "        Kinetic Energy      : "   << 623   G4cout << "        Kinetic Energy      : " 
586 #else                                             624 #else
587   G4cout << "        Kinetic Energy (MeV): "   << 625   G4cout << "        Kinetic Energy (MeV): " 
588 #endif                                            626 #endif
589          << std::setw(20) << G4BestUnit(fTrack << 627        << std::setw(20) << G4BestUnit(fTrack->GetKineticEnergy(), "Energy")
590   G4cout << "        Polarization - x    : " < << 628        << G4endl;
591          << G4endl;                            << 629   G4cout << "        Polarization - x    : " 
592   G4cout << "        Polarization - y    : " < << 630        << std::setw(20) << fTrack->GetPolarization().x()
593          << G4endl;                            << 631        << G4endl;
594   G4cout << "        Polarization - z    : " < << 632   G4cout << "        Polarization - y    : " 
595          << G4endl;                            << 633        << std::setw(20) << fTrack->GetPolarization().y()
596   G4cout << "        Track Length        : " < << 634        << G4endl;
597          << G4BestUnit(fTrack->GetTrackLength( << 635   G4cout << "        Polarization - z    : " 
598   G4cout << "        Track ID #          : " < << 636        << std::setw(20) << fTrack->GetPolarization().z()
599   G4cout << "        Parent Track ID #   : " < << 637        << G4endl;
600   G4cout << "        Next Volume         : " < << 638   G4cout << "        Track Length        : " 
601   if (fTrack->GetNextVolume() != nullptr) {    << 639        << std::setw(20) << G4BestUnit(fTrack->GetTrackLength(), "Length")
602     G4cout << fTrack->GetNextVolume()->GetName << 640        << G4endl;
603   }                                            << 641   G4cout << "        Track ID #          : " 
604   else {                                       << 642        << std::setw(20) << fTrack->GetTrackID()
605     G4cout << "OutOfWorld"                     << 643        << G4endl;
606            << " ";                             << 644   G4cout << "        Parent Track ID #   : " 
607   }                                            << 645        << std::setw(20) << fTrack->GetParentID()
608   G4cout << G4endl;                            << 646        << G4endl;
609   G4cout << "        Track Status        : " < << 647   G4cout << "        Next Volume         : " 
610   if (fTrack->GetTrackStatus() == fAlive) {    << 648        << std::setw(20);
611     G4cout << " Alive";                        << 649        if( fTrack->GetNextVolume() != 0 ) { 
612   }                                            << 650          G4cout << fTrack->GetNextVolume()->GetName() << " ";
613   else if (fTrack->GetTrackStatus() == fStopBu << 651        } else {
614     G4cout << " StopButAlive";                 << 652          G4cout << "OutOfWorld" << " ";
615   }                                            << 653        }
616   else if (fTrack->GetTrackStatus() == fStopAn << 654        G4cout << G4endl;
617     G4cout << " StopAndKill";                  << 655   G4cout << "        Track Status        : " 
618   }                                            << 656        << std::setw(20);
619   else if (fTrack->GetTrackStatus() == fKillTr << 657        if( fTrack->GetTrackStatus() == fAlive ){
620     G4cout << " KillTrackAndSecondaries";      << 658          G4cout << " Alive";
621   }                                            << 659        } else if( fTrack->GetTrackStatus() == fStopButAlive ){
622   else if (fTrack->GetTrackStatus() == fSuspen << 660            G4cout << " StopButAlive";
623     G4cout << " Suspend";                      << 661        } else if( fTrack->GetTrackStatus() == fStopAndKill ){
624   }                                            << 662            G4cout << " StopAndKill";
625   else if (fTrack->GetTrackStatus() == fPostpo << 663        } else if( fTrack->GetTrackStatus() == fKillTrackAndSecondaries ){
626     G4cout << " PostponeToNextEvent";          << 664            G4cout << " KillTrackAndSecondaries";
627   }                                            << 665        } else if( fTrack->GetTrackStatus() == fSuspend ){
628   G4cout << G4endl;                            << 666            G4cout << " Suspend";
                                                   >> 667        } else if( fTrack->GetTrackStatus() == fPostponeToNextEvent ){
                                                   >> 668            G4cout << " PostponeToNextEvent";
                                                   >> 669        }
                                                   >> 670        G4cout << G4endl;
629 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE              671 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
630   G4cout << "        Vertex - x          : " < << 672   G4cout << "        Vertex - x          : " 
631          << G4BestUnit(fTrack->GetVertexPositi << 673        << std::setw(20) << G4BestUnit(fTrack->GetVertexPosition().x(),"Length")
632   G4cout << "        Vertex - y          : " < << 674        << G4endl; 
633          << G4BestUnit(fTrack->GetVertexPositi << 675   G4cout << "        Vertex - y          : " 
634   G4cout << "        Vertex - z          : " < << 676        << std::setw(20) << G4BestUnit(fTrack->GetVertexPosition().y(),"Length")
635          << G4BestUnit(fTrack->GetVertexPositi << 677        << G4endl; 
                                                   >> 678   G4cout << "        Vertex - z          : " 
                                                   >> 679        << std::setw(20) << G4BestUnit(fTrack->GetVertexPosition().z(),"Length")
                                                   >> 680        << G4endl;
636 #else                                             681 #else
637   G4cout << "        Vertex - x (mm)     : " < << 682   G4cout << "        Vertex - x (mm)     : " 
638          << fTrack->GetVertexPosition().x() /  << 683        << std::setw(20) << fTrack->GetVertexPosition().x()/mm
639   G4cout << "        Vertex - y (mm)     : " < << 684        << G4endl; 
640          << fTrack->GetVertexPosition().y() /  << 685   G4cout << "        Vertex - y (mm)     : " 
641   G4cout << "        Vertex - z (mm)     : " < << 686        << std::setw(20) << fTrack->GetVertexPosition().y()/mm
642          << fTrack->GetVertexPosition().z() /  << 687        << G4endl; 
                                                   >> 688   G4cout << "        Vertex - z (mm)     : " 
                                                   >> 689        << std::setw(20) << fTrack->GetVertexPosition().z()/mm
                                                   >> 690        << G4endl;
643 #endif                                            691 #endif
644   G4cout << "        Vertex - Px (MomDir): " < << 692   G4cout << "        Vertex - Px (MomDir): " 
645          << fTrack->GetVertexMomentumDirection << 693        << std::setw(20) << fTrack->GetVertexMomentumDirection().x()
646   G4cout << "        Vertex - Py (MomDir): " < << 694        << G4endl;
647          << fTrack->GetVertexMomentumDirection << 695   G4cout << "        Vertex - Py (MomDir): " 
648   G4cout << "        Vertex - Pz (MomDir): " < << 696        << std::setw(20) << fTrack->GetVertexMomentumDirection().y()
649          << fTrack->GetVertexMomentumDirection << 697        << G4endl;
                                                   >> 698   G4cout << "        Vertex - Pz (MomDir): " 
                                                   >> 699        << std::setw(20) << fTrack->GetVertexMomentumDirection().z()
                                                   >> 700        << G4endl;
650 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE              701 #ifdef G4_USE_G4BESTUNIT_FOR_VERBOSE
651   G4cout << "        Vertex - KineE      : "   << 702   G4cout << "        Vertex - KineE      : " 
652 #else                                             703 #else
653   G4cout << "        Vertex - KineE (MeV): "   << 704   G4cout << "        Vertex - KineE (MeV): " 
654 #endif                                            705 #endif
655          << std::setw(20) << G4BestUnit(fTrack << 706        << std::setw(20) << G4BestUnit(fTrack->GetVertexKineticEnergy(),"Energy")
656                                                << 707        << G4endl;
657   G4cout << "        Creator Process     : " < << 708   
658   if (fTrack->GetCreatorProcess() == nullptr)  << 709   G4cout << "        Creator Process     : " 
                                                   >> 710        << std::setw(20);
                                                   >> 711   if( fTrack->GetCreatorProcess() == 0){
659     G4cout << " Event Generator" << G4endl;       712     G4cout << " Event Generator" << G4endl;
660   }                                            << 713   } else {
661   else {                                       << 
662     G4cout << fTrack->GetCreatorProcess()->Get    714     G4cout << fTrack->GetCreatorProcess()->GetProcessName() << G4endl;
663   }                                               715   }
664                                                   716 
665   G4cout << "      --------------------------- << 717   G4cout << "      -----------------------------------------------" 
666   G4cout.precision(prec);                      << 718        << G4endl;
                                                   >> 719        
                                                   >> 720  G4cout.precision(prec);      
667 }                                                 721 }
668                                                   722 
                                                   >> 723 
669 //////////////////////////////////////////////    724 ///////////////////////////////////////////////
670 void G4SteppingVerbose::VerboseParticleChange(    725 void G4SteppingVerbose::VerboseParticleChange()
671 //////////////////////////////////////////////    726 ///////////////////////////////////////////////
672 {                                                 727 {
673   if (Silent == 1) {                           << 728   if(Silent==1){ return; }
674     return;                                    << 729 // Show header
675   }                                            << 
676                                                << 
677   G4cout << G4endl;                               730   G4cout << G4endl;
678   G4cout << "    ++G4ParticleChange Informatio    731   G4cout << "    ++G4ParticleChange Information " << G4endl;
679   fParticleChange->DumpInfo();                    732   fParticleChange->DumpInfo();
680 }                                                 733 }
681                                                << 
682 /////////////////////////////////////////         734 /////////////////////////////////////////
683 void G4SteppingVerbose::ShowStep() const          735 void G4SteppingVerbose::ShowStep() const
684 ////////////////////////////////////////          736 ////////////////////////////////////////
685 {                                                 737 {
686   if (Silent == 1) {                           << 738   if(Silent==1){ return; }
687     return;                                    << 739    G4String volName;
688   }                                            << 740    G4int oldprc;
689   G4String volName;                            << 741 
690   G4long oldprc;                               << 742 // Show header
691                                                << 743    G4cout << G4endl;
692   // Show header                               << 744    G4cout << "    ++G4Step Information " << G4endl;
693   G4cout << G4endl;                            << 745    oldprc = G4cout.precision(16);
694   G4cout << "    ++G4Step Information " << G4e << 746 
695   oldprc = G4cout.precision(16);               << 747 // Show G4Step specific information
696                                                << 748    G4cout << "      Address of G4Track    : " << fStep->GetTrack() << G4endl;
697   // Show G4Step specific information          << 749    G4cout << "      Step Length (mm)      : " << fStep->GetTrack()->GetStepLength() << G4endl;
698   G4cout << "      Address of G4Track    : " < << 750    G4cout << "      Energy Deposit (MeV)  : " << fStep->GetTotalEnergyDeposit() << G4endl;
699   G4cout << "      Step Length (mm)      : " < << 751 
700   G4cout << "      Energy Deposit (MeV)  : " < << 752 // Show G4StepPoint specific information
701                                                << 753    G4cout << "      -------------------------------------------------------" 
702   // Show G4StepPoint specific information     << 754         << "----------------" <<  G4endl;
703   G4cout << "      --------------------------- << 755    G4cout << "        StepPoint Information  " << std::setw(20) << "PreStep" 
704          << "----------------" << G4endl;      << 756                                              << std::setw(20) << "PostStep" << G4endl;
705   G4cout << "        StepPoint Information  "  << 757    G4cout << "      -------------------------------------------------------" 
706          << "PostStep" << G4endl;              << 758         << "----------------" <<  G4endl;
707   G4cout << "      --------------------------- << 759    G4cout << "         Position - x (mm)   : " 
708          << "----------------" << G4endl;      << 760         << std::setw(20) << fStep->GetPreStepPoint()->GetPosition().x() 
709   G4cout << "         Position - x (mm)   : "  << 761         << std::setw(20) << fStep->GetPostStepPoint()->GetPosition().x() << G4endl;
710          << fStep->GetPreStepPoint()->GetPosit << 762    G4cout << "         Position - y (mm)   : " 
711          << fStep->GetPostStepPoint()->GetPosi << 763         << std::setw(20) << fStep->GetPreStepPoint()->GetPosition().y() 
712   G4cout << "         Position - y (mm)   : "  << 764         << std::setw(20) << fStep->GetPostStepPoint()->GetPosition().y() << G4endl;
713          << fStep->GetPreStepPoint()->GetPosit << 765    G4cout << "         Position - z (mm)   : " 
714          << fStep->GetPostStepPoint()->GetPosi << 766         << std::setw(20) << fStep->GetPreStepPoint()->GetPosition().z() 
715   G4cout << "         Position - z (mm)   : "  << 767         << std::setw(20) << fStep->GetPostStepPoint()->GetPosition().z() << G4endl;
716          << fStep->GetPreStepPoint()->GetPosit << 768    G4cout << "         Global Time (ns)    : " 
717          << fStep->GetPostStepPoint()->GetPosi << 769         << std::setw(20) << fStep->GetPreStepPoint()->GetGlobalTime()
718   G4cout << "         Global Time (ns)    : "  << 770         << std::setw(20) << fStep->GetPostStepPoint()->GetGlobalTime() << G4endl;
719          << fStep->GetPreStepPoint()->GetGloba << 771    G4cout << "         Local Time (ns)     : " 
720          << fStep->GetPostStepPoint()->GetGlob << 772         << std::setw(20) << fStep->GetPreStepPoint()->GetLocalTime() 
721   G4cout << "         Local Time (ns)     : "  << 773         << std::setw(20) << fStep->GetPostStepPoint()->GetLocalTime() << G4endl;
722          << fStep->GetPreStepPoint()->GetLocal << 774    G4cout << "         Proper Time (ns)    : " 
723          << fStep->GetPostStepPoint()->GetLoca << 775         << std::setw(20) << fStep->GetPreStepPoint()->GetProperTime()
724   G4cout << "         Proper Time (ns)    : "  << 776         << std::setw(20) << fStep->GetPostStepPoint()->GetProperTime() << G4endl;
725          << fStep->GetPreStepPoint()->GetPrope << 777    G4cout << "         Momentum Direct - x : " 
726          << fStep->GetPostStepPoint()->GetProp << 778         << std::setw(20) << fStep->GetPreStepPoint()->GetMomentumDirection().x()
727   G4cout << "         Momentum Direct - x : "  << 779         << std::setw(20) << fStep->GetPostStepPoint()->GetMomentumDirection().x() << G4endl;
728          << fStep->GetPreStepPoint()->GetMomen << 780    G4cout << "         Momentum Direct - y : " 
729          << fStep->GetPostStepPoint()->GetMome << 781         << std::setw(20) << fStep->GetPreStepPoint()->GetMomentumDirection().y()
730   G4cout << "         Momentum Direct - y : "  << 782         << std::setw(20) << fStep->GetPostStepPoint()->GetMomentumDirection().y() << G4endl;
731          << fStep->GetPreStepPoint()->GetMomen << 783    G4cout << "         Momentum Direct - z : " 
732          << fStep->GetPostStepPoint()->GetMome << 784         << std::setw(20) << fStep->GetPreStepPoint()->GetMomentumDirection().z()
733   G4cout << "         Momentum Direct - z : "  << 785         << std::setw(20) << fStep->GetPostStepPoint()->GetMomentumDirection().z() << G4endl;
734          << fStep->GetPreStepPoint()->GetMomen << 786    G4cout << "         Momentum - x (MeV/c): " 
735          << fStep->GetPostStepPoint()->GetMome << 787         << std::setw(20) << fStep->GetPreStepPoint()->GetMomentum().x()
736   G4cout << "         Momentum - x (MeV/c): "  << 788         << std::setw(20) << fStep->GetPostStepPoint()->GetMomentum().x() << G4endl;
737          << fStep->GetPreStepPoint()->GetMomen << 789    G4cout << "         Momentum - y (MeV/c): " 
738          << fStep->GetPostStepPoint()->GetMome << 790         << std::setw(20) << fStep->GetPreStepPoint()->GetMomentum().y()
739   G4cout << "         Momentum - y (MeV/c): "  << 791         << std::setw(20) << fStep->GetPostStepPoint()->GetMomentum().y() << G4endl;
740          << fStep->GetPreStepPoint()->GetMomen << 792    G4cout << "         Momentum - z (MeV/c): " 
741          << fStep->GetPostStepPoint()->GetMome << 793         << std::setw(20) << fStep->GetPreStepPoint()->GetMomentum().z()
742   G4cout << "         Momentum - z (MeV/c): "  << 794         << std::setw(20) << fStep->GetPostStepPoint()->GetMomentum().z() << G4endl;
743          << fStep->GetPreStepPoint()->GetMomen << 795    G4cout << "         Total Energy (MeV)  : " 
744          << fStep->GetPostStepPoint()->GetMome << 796         << std::setw(20) << fStep->GetPreStepPoint()->GetTotalEnergy()
745   G4cout << "         Total Energy (MeV)  : "  << 797         << std::setw(20) << fStep->GetPostStepPoint()->GetTotalEnergy() << G4endl;
746          << fStep->GetPreStepPoint()->GetTotal << 798    G4cout << "         Kinetic Energy (MeV): " 
747          << fStep->GetPostStepPoint()->GetTota << 799         << std::setw(20) << fStep->GetPreStepPoint()->GetKineticEnergy()
748   G4cout << "         Kinetic Energy (MeV): "  << 800         << std::setw(20) << fStep->GetPostStepPoint()->GetKineticEnergy() << G4endl;
749          << fStep->GetPreStepPoint()->GetKinet << 801    G4cout << "         Velocity (mm/ns)    : " 
750          << fStep->GetPostStepPoint()->GetKine << 802         << std::setw(20) << fStep->GetPreStepPoint()->GetVelocity()
751   G4cout << "         Velocity (mm/ns)    : "  << 803         << std::setw(20) << fStep->GetPostStepPoint()->GetVelocity() << G4endl;
752          << fStep->GetPreStepPoint()->GetVeloc << 804    G4cout << "         Volume Name         : "
753          << fStep->GetPostStepPoint()->GetVelo << 805         << std::setw(20) << fStep->GetPreStepPoint()->GetPhysicalVolume()->GetName();
754   G4cout << "         Volume Name         : "  << 806    if (fStep->GetPostStepPoint()->GetPhysicalVolume())
755          << fStep->GetPreStepPoint()->GetPhysi << 807    {
756   if (fStep->GetPostStepPoint()->GetPhysicalVo << 808       volName = fStep->GetPostStepPoint()->GetPhysicalVolume()->GetName();
757     volName = fStep->GetPostStepPoint()->GetPh << 809    }
758   }                                            << 810    else
759   else {                                       << 811    {
760     volName = "OutOfWorld";                    << 812       volName = "OutOfWorld";
761   }                                            << 813    }
762   G4cout << std::setw(20) << volName << G4endl << 814    G4cout << std::setw(20) << volName << G4endl;
763   G4cout << "         Safety (mm)         : "  << 815    G4cout << "         Safety (mm)         : " 
764          << fStep->GetPreStepPoint()->GetSafet << 816         << std::setw(20) << fStep->GetPreStepPoint()->GetSafety()
765          << fStep->GetPostStepPoint()->GetSafe << 817         << std::setw(20) << fStep->GetPostStepPoint()->GetSafety() << G4endl;
766   G4cout << "         Polarization - x    : "  << 818    G4cout << "         Polarization - x    : " 
767          << fStep->GetPreStepPoint()->GetPolar << 819         << std::setw(20) << fStep->GetPreStepPoint()->GetPolarization().x()
768          << fStep->GetPostStepPoint()->GetPola << 820         << std::setw(20) << fStep->GetPostStepPoint()->GetPolarization().x() << G4endl;
769   G4cout << "         Polarization - y    : "  << 821    G4cout << "         Polarization - y    : " 
770          << fStep->GetPreStepPoint()->GetPolar << 822         << std::setw(20) << fStep->GetPreStepPoint()->GetPolarization().y()
771          << fStep->GetPostStepPoint()->GetPola << 823         << std::setw(20) << fStep->GetPostStepPoint()->GetPolarization().y() << G4endl;
772   G4cout << "         Polarization - Z    : "  << 824    G4cout << "         Polarization - Z    : " 
773          << fStep->GetPreStepPoint()->GetPolar << 825         << std::setw(20) << fStep->GetPreStepPoint()->GetPolarization().z()
774          << fStep->GetPostStepPoint()->GetPola << 826         << std::setw(20) << fStep->GetPostStepPoint()->GetPolarization().z() << G4endl;
775   G4cout << "         Weight              : "  << 827    G4cout << "         Weight              : " 
776          << fStep->GetPreStepPoint()->GetWeigh << 828         << std::setw(20) << fStep->GetPreStepPoint()->GetWeight()
777          << fStep->GetPostStepPoint()->GetWeig << 829         << std::setw(20) << fStep->GetPostStepPoint()->GetWeight() << G4endl;
778   G4cout << "         Step Status         : "; << 830    G4cout << "         Step Status         : " ;
779   G4StepStatus tStepStatus = fStep->GetPreStep << 831         G4StepStatus  tStepStatus = fStep->GetPreStepPoint()->GetStepStatus();
780   if (tStepStatus == fGeomBoundary) {          << 832         if( tStepStatus == fGeomBoundary ){
781     G4cout << std::setw(20) << "Geom Limit";   << 833            G4cout << std::setw(20) << "Geom Limit";
782   }                                            << 834         } else if ( tStepStatus == fAlongStepDoItProc ){
783   else if (tStepStatus == fAlongStepDoItProc)  << 835           G4cout << std::setw(20) << "AlongStep Proc.";
784     G4cout << std::setw(20) << "AlongStep Proc << 836         } else if ( tStepStatus == fPostStepDoItProc ){
785   }                                            << 837            G4cout << std::setw(20) << "PostStep Proc";
786   else if (tStepStatus == fPostStepDoItProc) { << 838         } else if ( tStepStatus == fAtRestDoItProc ){
787     G4cout << std::setw(20) << "PostStep Proc" << 839            G4cout << std::setw(20) << "AtRest Proc";
788   }                                            << 840         } else if ( tStepStatus == fUndefined ){
789   else if (tStepStatus == fAtRestDoItProc) {   << 841            G4cout << std::setw(20) << "Undefined";
790     G4cout << std::setw(20) << "AtRest Proc";  << 842         }
791   }                                            << 
792   else if (tStepStatus == fUndefined) {        << 
793     G4cout << std::setw(20) << "Undefined";    << 
794   }                                            << 
795                                                   843 
796   tStepStatus = fStep->GetPostStepPoint()->Get << 844         tStepStatus = fStep->GetPostStepPoint()->GetStepStatus();
797   if (tStepStatus == fGeomBoundary) {          << 845         if( tStepStatus == fGeomBoundary ){
798     G4cout << std::setw(20) << "Geom Limit";   << 846            G4cout << std::setw(20) << "Geom Limit";
799   }                                            << 847         } else if ( tStepStatus == fAlongStepDoItProc ){
800   else if (tStepStatus == fAlongStepDoItProc)  << 848            G4cout << std::setw(20) << "AlongStep Proc.";
801     G4cout << std::setw(20) << "AlongStep Proc << 849         } else if ( tStepStatus == fPostStepDoItProc ){
802   }                                            << 850            G4cout << std::setw(20) << "PostStep Proc";
803   else if (tStepStatus == fPostStepDoItProc) { << 851         } else if ( tStepStatus == fAtRestDoItProc ){
804     G4cout << std::setw(20) << "PostStep Proc" << 852            G4cout << std::setw(20) << "AtRest Proc";
805   }                                            << 853         } else if ( tStepStatus == fUndefined ){
806   else if (tStepStatus == fAtRestDoItProc) {   << 854            G4cout << std::setw(20) << "Undefined";
807     G4cout << std::setw(20) << "AtRest Proc";  << 855         }
808   }                                            << 
809   else if (tStepStatus == fUndefined) {        << 
810     G4cout << std::setw(20) << "Undefined";    << 
811   }                                            << 
812                                                   856 
813   G4cout << G4endl;                            << 857         G4cout << G4endl;
814   G4cout << "         Process defined Step: "; << 858         G4cout << "         Process defined Step: " ;
815   if (fStep->GetPreStepPoint()->GetProcessDefi << 859         if( fStep->GetPreStepPoint()->GetProcessDefinedStep() == 0 ){
816     G4cout << std::setw(20) << "Undefined";    << 860      G4cout << std::setw(20) << "Undefined";
817   }                                            << 861         } else {
818   else {                                       << 862        G4cout << std::setw(20) << fStep->GetPreStepPoint()->GetProcessDefinedStep()->GetProcessName();
819     G4cout << std::setw(20) << fStep->GetPreSt << 863         }
820   }                                            << 864         if( fStep->GetPostStepPoint()->GetProcessDefinedStep() == 0){
821   if (fStep->GetPostStepPoint()->GetProcessDef << 865        G4cout << std::setw(20) << "Undefined";
822     G4cout << std::setw(20) << "Undefined";    << 866         } else {
823   }                                            << 867      G4cout << std::setw(20) << fStep->GetPostStepPoint()->GetProcessDefinedStep()->GetProcessName(); 
824   else {                                       << 868         }
825     G4cout << std::setw(20) << fStep->GetPostS << 869    G4cout.precision(oldprc);
826   }                                            << 
827   G4cout.precision(oldprc);                    << 
828                                                   870 
829   G4cout << G4endl;                            << 871    G4cout << G4endl;
830   G4cout << "      --------------------------- << 872    G4cout << "      -------------------------------------------------------" 
831          << "----------------" << G4endl;      << 873         << "----------------" << G4endl;
832 }                                                 874 }
833                                                   875 
834 ////////////////////////////////////////////// << 
835 void G4SteppingVerbose::UseBestUnit(G4int prec << 
836 ////////////////////////////////////////////// << 
837 {                                              << 
838   useBestUnitPrecision = prec;                 << 
839 }                                              << 
840                                                   876 
841 ////////////////////////////////////////////// << 
842 G4int G4SteppingVerbose::BestUnitPrecision()   << 
843 ////////////////////////////////////////////// << 
844 {                                              << 
845   return useBestUnitPrecision;                 << 
846 }                                              << 
847                                                   877