Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4NavigationHistory.cc File Reference
#include "G4ios.hh"
#include "G4NavigationHistory.hh"

Go to the source code of this file.

Functions

G4Allocator< G4NavigationHistory > *& aNavigHistoryAllocator ()
std::ostream & operator<< (std::ostream &os, const G4NavigationHistory &nav)

Function Documentation

◆ aNavigHistoryAllocator()

G4Allocator< G4NavigationHistory > *& aNavigHistoryAllocator ( )

Definition at line 34 of file G4NavigationHistory.cc.

35{
37 return _instance;
38}
#define G4ThreadLocalStatic
Definition tls.hh:76

◆ operator<<()

std::ostream & operator<< ( std::ostream & os,
const G4NavigationHistory & nav )

Streaming operator.

Definition at line 66 of file G4NavigationHistory.cc.

68{
69 os << "History depth=" << nav.GetDepth() << G4endl;
70 for ( G4int i=0; i<=(G4int)nav.GetDepth(); ++i )
71 {
72 os << "Level=["<<i<<"]: ";
73 if( nav.GetVolume(i) != nullptr )
74 {
75 os << "Phys Name=["<< nav.GetVolume(i)->GetName()
76 << "] Type=[";
77 switch(nav.GetVolumeType(i))
78 {
79 case kNormal:
80 os << "N";
81 break;
82 case kReplica:
83 os << "R" << nav.GetReplicaNo(i);
84 break;
85 case kParameterised:
86 os << "P" << nav.GetReplicaNo(i);
87 break;
88 case kExternal:
89 os << "E" << nav.GetReplicaNo(i);
90 break;
91 }
92 os << "]";
93 }
94 else
95 {
96 os << "Phys = <Null>";
97 }
98 os << G4endl;
99 }
100 return os;
101}
int G4int
Definition G4Types.hh:85
#define G4endl
Definition G4ios.hh:67
G4int GetReplicaNo(G4int n) const
G4VPhysicalVolume * GetVolume(G4int n) const
std::size_t GetDepth() const
EVolume GetVolumeType(G4int n) const
const G4String & GetName() const
@ kNormal
Definition geomdefs.hh:84
@ kParameterised
Definition geomdefs.hh:86
@ kExternal
Definition geomdefs.hh:87
@ kReplica
Definition geomdefs.hh:85