Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TMCVerbose.h
Go to the documentation of this file.
1// @(#)root/vmc:$Id$
2// Author: Ivana Hrivnacova; 24/02/2003
3
4/*************************************************************************
5 * Copyright (C) 2006, Rene Brun and Fons Rademakers. *
6 * Copyright (C) 2003, ALICE Experiment at CERN. *
7 * All rights reserved. *
8 * *
9 * For the licensing terms see $ROOTSYS/LICENSE. *
10 * For the list of contributors see $ROOTSYS/README/CREDITS. *
11 *************************************************************************/
12
13#ifndef ROOT_TMCVerbose
14#define ROOT_TMCVerbose
15
16//
17// Class TMCVerbose
18// ----------------
19// Class for printing a detailed infomation from MC application.
20// Defined levels:
21// 0 no output
22// 1 info up to event level
23// 2 info up to tracking level
24// 3 detailed info for each step
25
26#include <TObject.h>
27
28class TVirtualMCStack;
29
30class TMCVerbose : public TObject {
31public:
32 TMCVerbose(Int_t level);
33 TMCVerbose();
34 virtual ~TMCVerbose();
35
36 // methods
37 virtual void InitMC();
38 virtual void RunMC(Int_t nofEvents);
39 virtual void FinishRun();
40
41 virtual void ConstructGeometry();
42 virtual void ConstructOpGeometry();
43 virtual void InitGeometry();
44 virtual void AddParticles();
45 virtual void AddIons();
46 virtual void GeneratePrimaries();
47 virtual void BeginEvent();
48 virtual void BeginPrimary();
49 virtual void PreTrack();
50 virtual void Stepping();
51 virtual void PostTrack();
52 virtual void FinishPrimary();
53 virtual void EndOfEvent();
54 virtual void FinishEvent();
55
56 // set methods
57 void SetLevel(Int_t level);
58
59 // get methods
60 Int_t GetLevel() const;
61
62private:
63 // methods
64 void PrintBanner() const;
65 void PrintTrackInfo() const;
66 void PrintStepHeader() const;
67
68 // data members
69 Int_t fLevel; ///< Verbose level
70 Int_t fStepNumber; ///< Current step number
71
72 ClassDef(TMCVerbose, 1) // Verbose class for MC application
73};
74
75// inline functions
76
77inline void TMCVerbose::SetLevel(Int_t level)
78{
79 fLevel = level;
80}
81
83{
84 return fLevel;
85}
86
87#endif // ROOT_TMCVerbose
#define ClassDef(name, id)
Definition Rtypes.h:325
Class for printing a detailed information from MC application.
Definition TMCVerbose.h:30
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.
Definition TMCVerbose.h:69
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 GetLevel() const
Definition TMCVerbose.h:82
Int_t fStepNumber
Current step number.
Definition TMCVerbose.h:70
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.
void SetLevel(Int_t level)
Definition TMCVerbose.h:77
Mother of all ROOT objects.
Definition TObject.h:37
Interface to a user defined particles stack.