Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
RE06SteppingVerbose Class Reference

#include <Doxymodules_runAndEvent.h>

Inheritance diagram for RE06SteppingVerbose:
G4VSteppingVerbose

Public Member Functions

 RE06SteppingVerbose ()
 
virtual ~RE06SteppingVerbose ()
 
virtual G4VSteppingVerboseClone ()
 
void InitializeTimers ()
 
void Report ()
 
virtual void NewStep ()
 
virtual void StepInfo ()
 
virtual void TrackBanner ()
 
virtual void AtRestDoItInvoked ()
 
virtual void AlongStepDoItAllDone ()
 
virtual void PostStepDoItAllDone ()
 
virtual void AlongStepDoItOneByOne ()
 
virtual void PostStepDoItOneByOne ()
 
virtual void TrackingStarted ()
 
virtual void DPSLStarted ()
 
virtual void DPSLUserLimit ()
 
virtual void DPSLPostStep ()
 
virtual void DPSLAlongStep ()
 
virtual void VerboseTrack ()
 
virtual void VerboseParticleChange ()
 

Private Member Functions

G4int FindRegion (G4Region *)
 

Private Attributes

std::vector< G4SliceTimer * > fTimers
 
G4int fNofRegions
 
G4int fNofTimers
 
G4int fRegIdx
 
G4bool fEp
 

Detailed Description

Definition at line 143 of file Doxymodules_runAndEvent.h.

Constructor & Destructor Documentation

◆ RE06SteppingVerbose()

RE06SteppingVerbose::RE06SteppingVerbose ( )

Definition at line 44 of file RE06SteppingVerbose.cc.

◆ ~RE06SteppingVerbose()

RE06SteppingVerbose::~RE06SteppingVerbose ( )
virtual

Definition at line 54 of file RE06SteppingVerbose.cc.

55{
56 for(G4int j=0;j<fNofTimers;j++)
57 { delete fTimers[j]; }
58 fTimers.clear();
59}

Member Function Documentation

◆ Clone()

virtual G4VSteppingVerbose * RE06SteppingVerbose::Clone ( )
inlinevirtual

Definition at line 48 of file RE06SteppingVerbose.hh.

◆ InitializeTimers()

void RE06SteppingVerbose::InitializeTimers ( )

Definition at line 63 of file RE06SteppingVerbose.cc.

64{
65 G4RegionStore* regionStore = G4RegionStore::GetInstance();
66 fNofRegions = regionStore->size();
68 G4int nEnt = fTimers.size();
69 if(nEnt<fNofTimers)
70 {
71 for(G4int i=nEnt;i<fNofTimers;i++)
72 { fTimers.push_back(new G4SliceTimer); }
73 }
74 for(G4int j=0;j<fNofTimers;j++)
75 { fTimers[j]->Clear(); }
76 fRegIdx = -1;
77 fEp = false;
78
79 // Set verbosity for timing
80 G4RunManagerKernel::GetRunManagerKernel()->GetTrackingManager()->SetVerboseLevel(0);
81#ifdef G4VERBOSE
82 fManager->SetVerboseLevel(1);
83#endif
84}

◆ Report()

void RE06SteppingVerbose::Report ( )

Definition at line 88 of file RE06SteppingVerbose.cc.

89{
90 for(G4int i=0;i<fNofRegions;i++)
91 {
92 G4cout << G4endl;
93 G4cout << "Region <"
94 << (*G4RegionStore::GetInstance())[i]->GetName() << ">" << G4endl;
95 G4cout << " All particles : User=" << fTimers[i]->GetUserElapsed()
96 << " Real=" << fTimers[i]->GetRealElapsed()
97 << " Sys=" << fTimers[i]->GetSystemElapsed() << G4endl;
98 G4cout << " e+ / e- : User=" << fTimers[fNofRegions+i]->GetUserElapsed()
99 << " Real=" << fTimers[fNofRegions+i]->GetRealElapsed()
100 << " Sys=" << fTimers[fNofRegions+i]->GetSystemElapsed() << G4endl;
101 }
102 G4cout << G4endl;
103}

◆ NewStep()

void RE06SteppingVerbose::NewStep ( )
virtual

Definition at line 107 of file RE06SteppingVerbose.cc.

108{
109 CopyState();
110 G4Region* reg = fTrack->GetStep()->GetPreStepPoint()
111 ->GetPhysicalVolume()->GetLogicalVolume()->GetRegion();
112 fRegIdx = FindRegion(reg);
113 fTimers[fRegIdx]->Start();
114 G4ParticleDefinition* pd = fTrack->GetDefinition();
115 if(pd==G4Electron::ElectronDefinition() ||
116 pd==G4Positron::PositronDefinition()) fEp = true;
117 if(fEp) fTimers[fNofRegions+fRegIdx]->Start();
118}
G4int FindRegion(G4Region *)

◆ StepInfo()

void RE06SteppingVerbose::StepInfo ( )
virtual

Definition at line 122 of file RE06SteppingVerbose.cc.

123{
124 fTimers[fRegIdx]->Stop();
125 if(fEp)
126 {
127 fTimers[fNofRegions+fRegIdx]->Stop();
128 fEp = false;
129 }
130 fRegIdx = -1;
131}

◆ TrackBanner()

virtual void RE06SteppingVerbose::TrackBanner ( )
inlinevirtual

Definition at line 58 of file RE06SteppingVerbose.hh.

58{}

◆ AtRestDoItInvoked()

virtual void RE06SteppingVerbose::AtRestDoItInvoked ( )
inlinevirtual

Definition at line 59 of file RE06SteppingVerbose.hh.

59{}

◆ AlongStepDoItAllDone()

virtual void RE06SteppingVerbose::AlongStepDoItAllDone ( )
inlinevirtual

Definition at line 60 of file RE06SteppingVerbose.hh.

60{}

◆ PostStepDoItAllDone()

virtual void RE06SteppingVerbose::PostStepDoItAllDone ( )
inlinevirtual

Definition at line 61 of file RE06SteppingVerbose.hh.

61{}

◆ AlongStepDoItOneByOne()

virtual void RE06SteppingVerbose::AlongStepDoItOneByOne ( )
inlinevirtual

Definition at line 62 of file RE06SteppingVerbose.hh.

62{}

◆ PostStepDoItOneByOne()

virtual void RE06SteppingVerbose::PostStepDoItOneByOne ( )
inlinevirtual

Definition at line 63 of file RE06SteppingVerbose.hh.

63{}

◆ TrackingStarted()

virtual void RE06SteppingVerbose::TrackingStarted ( )
inlinevirtual

Definition at line 64 of file RE06SteppingVerbose.hh.

64{}

◆ DPSLStarted()

virtual void RE06SteppingVerbose::DPSLStarted ( )
inlinevirtual

Definition at line 65 of file RE06SteppingVerbose.hh.

65{}

◆ DPSLUserLimit()

virtual void RE06SteppingVerbose::DPSLUserLimit ( )
inlinevirtual

Definition at line 66 of file RE06SteppingVerbose.hh.

66{}

◆ DPSLPostStep()

virtual void RE06SteppingVerbose::DPSLPostStep ( )
inlinevirtual

Definition at line 67 of file RE06SteppingVerbose.hh.

67{}

◆ DPSLAlongStep()

virtual void RE06SteppingVerbose::DPSLAlongStep ( )
inlinevirtual

Definition at line 68 of file RE06SteppingVerbose.hh.

68{}

◆ VerboseTrack()

virtual void RE06SteppingVerbose::VerboseTrack ( )
inlinevirtual

Definition at line 69 of file RE06SteppingVerbose.hh.

69{}

◆ VerboseParticleChange()

virtual void RE06SteppingVerbose::VerboseParticleChange ( )
inlinevirtual

Definition at line 70 of file RE06SteppingVerbose.hh.

70{}

◆ FindRegion()

G4int RE06SteppingVerbose::FindRegion ( G4Region rgn)
private

Definition at line 135 of file RE06SteppingVerbose.cc.

136{
137 G4RegionStore* regionStore = G4RegionStore::GetInstance();
138 G4int sz = regionStore->size();
139 for(G4int i=0;i<sz;i++)
140 { if(rgn==(*regionStore)[i]) return i; }
141 return -1;
142}

Member Data Documentation

◆ fTimers

std::vector<G4SliceTimer*> RE06SteppingVerbose::fTimers
private

Definition at line 75 of file RE06SteppingVerbose.hh.

◆ fNofRegions

G4int RE06SteppingVerbose::fNofRegions
private

Definition at line 76 of file RE06SteppingVerbose.hh.

◆ fNofTimers

G4int RE06SteppingVerbose::fNofTimers
private

Definition at line 77 of file RE06SteppingVerbose.hh.

◆ fRegIdx

G4int RE06SteppingVerbose::fRegIdx
private

Definition at line 78 of file RE06SteppingVerbose.hh.

◆ fEp

G4bool RE06SteppingVerbose::fEp
private

Definition at line 79 of file RE06SteppingVerbose.hh.


The documentation for this class was generated from the following files:

Applications | User Support | Publications | Collaboration