23#include "TDatabasePDG.h"
24#include "TParticlePDG.h"
65 std::cout << std::endl;
66 for (Int_t i = 0; i < 10; i++)
67 std::cout <<
"**********";
68 std::cout << std::endl;
78 std::cout <<
" Particle = ";
79 TParticlePDG *particle = TDatabasePDG::Instance()->GetParticle(
gMC->TrackPid());
81 std::cout << particle->GetName() <<
" ";
83 std::cout <<
"unknown"
88 std::cout <<
" Track ID = " <<
gMC->GetStack()->GetCurrentTrackNumber() <<
" ";
92 std::cout <<
" Parent ID = " <<
gMC->GetStack()->GetCurrentParentTrackNumber();
100 std::cout <<
"Step# "
109 <<
"Process " << std::endl;
122 std::cout <<
"--- Init MC " << std::endl;
131 std::cout <<
"--- Run MC for " << nofEvents <<
" events" << std::endl;
140 std::cout <<
"--- Finish Run MC " << std::endl;
149 std::cout <<
"--- Construct geometry " << std::endl;
158 std::cout <<
"--- Construct geometry for optical processes" << std::endl;
167 std::cout <<
"--- Init geometry " << std::endl;
176 std::cout <<
"--- Add particles " << std::endl;
185 std::cout <<
"--- Add ions " << std::endl;
194 std::cout <<
"--- Generate primaries " << std::endl;
203 std::cout <<
"--- Begin event " << std::endl;
212 std::cout <<
"--- Begin primary " << std::endl;
232 std::cout <<
"--- Pre track " << std::endl;
243 std::cout << std::fixed;
249 std::cout <<
"#" << std::setw(4) <<
fStepNumber++ <<
" ";
254 gMC->TrackPosition(x, y, z);
255 std::cout << std::setw(8) << std::setprecision(3) << x <<
" " << std::setw(8) << std::setprecision(3) << y <<
" "
256 << std::setw(8) << std::setprecision(3) << z <<
" ";
260 Double_t px, py, pz, etot;
261 gMC->TrackMomentum(px, py, pz, etot);
262 Double_t ekin = etot -
gMC->TrackMass();
263 std::cout << std::setw(9) << std::setprecision(4) << ekin * 1e03 <<
" ";
267 std::cout << std::setw(9) << std::setprecision(4) <<
gMC->Edep() * 1e03 <<
" ";
271 std::cout << std::setw(8) << std::setprecision(3) <<
gMC->TrackStep() <<
" ";
275 std::cout << std::setw(8) << std::setprecision(3) <<
gMC->TrackLength() <<
" ";
279 if (
gMC->CurrentVolName() != 0)
280 std::cout << std::setw(4) <<
gMC->CurrentVolName() <<
" ";
282 std::cout << std::setw(4) <<
"None"
288 Int_t nofProcesses =
gMC->StepProcesses(processes);
289 if (nofProcesses > 0)
292 std::cout << std::endl;
302 std::cout <<
"--- Post track " << std::endl;
311 std::cout <<
"--- Finish primary " << std::endl;
320 std::cout <<
"--- End of event " << std::endl;
329 std::cout <<
"--- Finish event " << std::endl;
static const char *const TMCProcessName[kMaxMCProcess]
virtual void InitMC()
Initialize MC info.
virtual void AddIons()
Add ions info.
virtual void FinishEvent()
Finish of an event info.
void PrintTrackInfo() const
Prints track information.
virtual void AddParticles()
Add particles info.
virtual void BeginPrimary()
Begin of a primary track info.
virtual void GeneratePrimaries()
Generate primaries info.
virtual void RunMC(Int_t nofEvents)
MC run info.
virtual void ConstructGeometry()
Construct geometry info.
Int_t fLevel
Verbose level.
virtual void EndOfEvent()
End of event info.
virtual void FinishRun()
Finish MC run info.
void PrintStepHeader() const
Prints the header for stepping information.
virtual void InitGeometry()
Initialize geometry info.
Int_t fStepNumber
Current step number.
virtual void FinishPrimary()
Finish of a primary track info.
TMCVerbose()
Default constructor.
virtual void BeginEvent()
Begin event info.
virtual ~TMCVerbose()
Destructor.
virtual void ConstructOpGeometry()
Construct geometry for optical physics info.
void PrintBanner() const
Prints banner for track information.
virtual void Stepping()
Stepping info.
virtual void PreTrack()
Begin of each track info.
virtual void PostTrack()
Finish of each track info.