Geant4  10.02.p03
G4NavigationHistory Class Reference

#include <G4NavigationHistory.hh>

Collaboration diagram for G4NavigationHistory:

Public Member Functions

 G4NavigationHistory ()
 
 ~G4NavigationHistory ()
 
 G4NavigationHistory (const G4NavigationHistory &h)
 
G4NavigationHistory & operator= (const G4NavigationHistory &h)
 
void Reset ()
 
void Clear ()
 
void SetFirstEntry (G4VPhysicalVolume *pVol)
 
const G4AffineTransform & GetTopTransform () const
 
const G4AffineTransform * GetPtrTopTransform () const
 
G4int GetTopReplicaNo () const
 
EVolume GetTopVolumeType () const
 
G4VPhysicalVolume * GetTopVolume () const
 
G4int GetDepth () const
 
G4int GetMaxDepth () const
 
const G4AffineTransform & GetTransform (G4int n) const
 
G4int GetReplicaNo (G4int n) const
 
EVolume GetVolumeType (G4int n) const
 
G4VPhysicalVolume * GetVolume (G4int n) const
 
void NewLevel (G4VPhysicalVolume *pNewMother, EVolume vType=kNormal, G4int nReplica=-1)
 
void BackLevel ()
 
void BackLevel (G4int n)
 
void * operator new (size_t)
 
void operator delete (void *aHistory)
 

Private Member Functions

void EnlargeHistory ()
 

Private Attributes

std::vector< G4NavigationLevel > * fNavHistory
 
G4int fStackDepth
 

Friends

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

Detailed Description

Definition at line 57 of file G4NavigationHistory.hh.

Constructor & Destructor Documentation

◆ G4NavigationHistory() [1/2]

G4NavigationHistory::G4NavigationHistory ( )

Definition at line 41 of file G4NavigationHistory.cc.

42  : fStackDepth(0)
43 {
45  Clear();
46 }
std::vector< G4NavigationLevel > * GetLevels()
std::vector< G4NavigationLevel > * fNavHistory
static G4NavigationHistoryPool * GetInstance()
Here is the call graph for this function:

◆ ~G4NavigationHistory()

G4NavigationHistory::~G4NavigationHistory ( )

Definition at line 63 of file G4NavigationHistory.cc.

64 {
66 }
void DeRegister(std::vector< G4NavigationLevel > *pLevels)
std::vector< G4NavigationLevel > * fNavHistory
static G4NavigationHistoryPool * GetInstance()
Here is the call graph for this function:

◆ G4NavigationHistory() [2/2]

G4NavigationHistory::G4NavigationHistory ( const G4NavigationHistory &  h)

Definition at line 48 of file G4NavigationHistory.cc.

49 {
51  if( GetMaxDepth() != h.GetMaxDepth() )
52  {
53  fNavHistory->resize( h.GetMaxDepth() );
54  }
55 
56  for ( G4int ilev=h.fStackDepth; ilev>=0; --ilev )
57  {
58  (*fNavHistory)[ilev] = (*h.fNavHistory)[ilev];
59  }
61 }
int G4int
Definition: G4Types.hh:78
std::vector< G4NavigationLevel > * GetLevels()
std::vector< G4NavigationLevel > * fNavHistory
G4int GetMaxDepth() const
static G4NavigationHistoryPool * GetInstance()
Here is the call graph for this function:

Member Function Documentation

◆ BackLevel() [1/2]

void G4NavigationHistory::BackLevel ( )
inline
Here is the caller graph for this function:

◆ BackLevel() [2/2]

void G4NavigationHistory::BackLevel ( G4int  n)
inline

◆ Clear()

void G4NavigationHistory::Clear ( )
inline
Here is the caller graph for this function:

◆ EnlargeHistory()

void G4NavigationHistory::EnlargeHistory ( )
inlineprivate

◆ GetDepth()

G4int G4NavigationHistory::GetDepth ( ) const
inline
Here is the caller graph for this function:

◆ GetMaxDepth()

G4int G4NavigationHistory::GetMaxDepth ( ) const
inline
Here is the caller graph for this function:

◆ GetPtrTopTransform()

const G4AffineTransform* G4NavigationHistory::GetPtrTopTransform ( ) const
inline

◆ GetReplicaNo()

G4int G4NavigationHistory::GetReplicaNo ( G4int  n) const
inline
Here is the caller graph for this function:

◆ GetTopReplicaNo()

G4int G4NavigationHistory::GetTopReplicaNo ( ) const
inline
Here is the caller graph for this function:

◆ GetTopTransform()

const G4AffineTransform& G4NavigationHistory::GetTopTransform ( ) const
inline
Here is the caller graph for this function:

◆ GetTopVolume()

G4VPhysicalVolume* G4NavigationHistory::GetTopVolume ( ) const
inline
Here is the caller graph for this function:

◆ GetTopVolumeType()

EVolume G4NavigationHistory::GetTopVolumeType ( ) const
inline
Here is the caller graph for this function:

◆ GetTransform()

const G4AffineTransform& G4NavigationHistory::GetTransform ( G4int  n) const
inline
Here is the caller graph for this function:

◆ GetVolume()

G4VPhysicalVolume* G4NavigationHistory::GetVolume ( G4int  n) const
inline
Here is the caller graph for this function:

◆ GetVolumeType()

EVolume G4NavigationHistory::GetVolumeType ( G4int  n) const
inline
Here is the caller graph for this function:

◆ NewLevel()

void G4NavigationHistory::NewLevel ( G4VPhysicalVolume *  pNewMother,
EVolume  vType = kNormal,
G4int  nReplica = -1 
)
inline
Here is the caller graph for this function:

◆ operator delete()

void G4NavigationHistory::operator delete ( void *  aHistory)
inline

◆ operator new()

void* G4NavigationHistory::operator new ( size_t  )
inline

◆ operator=()

G4NavigationHistory& G4NavigationHistory::operator= ( const G4NavigationHistory &  h)
inline

◆ Reset()

void G4NavigationHistory::Reset ( )
inline
Here is the caller graph for this function:

◆ SetFirstEntry()

void G4NavigationHistory::SetFirstEntry ( G4VPhysicalVolume *  pVol)
inline
Here is the caller graph for this function:

Friends And Related Function Documentation

◆ operator<<

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

Definition at line 69 of file G4NavigationHistory.cc.

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

Member Data Documentation

◆ fNavHistory

std::vector<G4NavigationLevel>* G4NavigationHistory::fNavHistory
private

Definition at line 149 of file G4NavigationHistory.hh.

◆ fStackDepth

G4int G4NavigationHistory::fStackDepth
private

Definition at line 152 of file G4NavigationHistory.hh.


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