Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4TrackingInformation Class Reference

#include <G4TrackingInformation.hh>

Collaboration diagram for G4TrackingInformation:

Public Member Functions

 G4TrackingInformation ()
 
 ~G4TrackingInformation ()
 
bool IsLeadingStep ()
 
void SetLeadingStep (bool value)
 
G4shared_ptr< G4ProcessState_LockGetProcessState (size_t index)
 
void RecordProcessState (G4shared_ptr< G4ProcessState_Lock >, size_t index)
 
void SetStepProcessorState (G4ITStepProcessorState_Lock *)
 
G4ITStepProcessorState_LockGetStepProcessorState ()
 
G4TrackStateManagerGetTrackStateManager ()
 
G4Trajectory_Lock * GetTrajectory_Lock ()
 
void SetTrajectory_Lock (G4Trajectory_Lock *trajLock)
 
void RecordCurrentPositionNTime (G4Track *)
 
const G4ThreeVectorGetPreStepPosition () const
 
G4double GetPreStepLocalTime () const
 
G4double GetPreStepGlobalTime () const
 
void SetNavigatorState (G4ITNavigatorState_Lock *)
 
G4ITNavigatorState_Lock * GetNavigatorState () const
 

Protected Member Functions

 G4TrackingInformation (const G4TrackingInformation &other)
 
G4TrackingInformationoperator= (const G4TrackingInformation &other)
 

Protected Attributes

G4bool fStepLeader
 
G4Trajectory_Lock * fpTrajectory_Lock
 
G4TrackStateManager fTrackStateManager
 
G4ThreeVector fRecordedTrackPosition
 
G4double fRecordedTrackLocalTime
 
G4double fRecordedTrackGlobalTime
 
G4ITNavigatorState_Lock * fNavigatorState
 
std::vector< G4shared_ptr
< G4ProcessState_Lock > > 
fProcessState
 
G4ITStepProcessorState_LockfpStepProcessorState
 

Friends

class G4ITStepProcessor
 

Detailed Description

The class G4TrackingInformation (hold by G4IT) emcompasses processes informations computed at the PS/AS/AtRest/InteractionLength stage, and also, the selection of processes for the given step.

Definition at line 80 of file G4TrackingInformation.hh.

Constructor & Destructor Documentation

G4TrackingInformation::G4TrackingInformation ( )

Definition at line 41 of file G4TrackingInformation.cc.

41  :
42  fStepLeader (false),
44 {
45  //ctor
50  fNavigatorState = 0;
51 }
G4Trajectory_Lock * fpTrajectory_Lock
static const size_t & GetMaxProcessIndex()
G4ITNavigatorState_Lock * fNavigatorState
G4ITStepProcessorState_Lock * fpStepProcessorState
std::vector< G4shared_ptr< G4ProcessState_Lock > > fProcessState
G4TrackingInformation::~G4TrackingInformation ( )

Definition at line 53 of file G4TrackingInformation.cc.

54 {
55  //dtor
56  /*
57  for(int i = 0 ; i < (int) fProcessState.size() - 1 ; i++)
58  {
59  if(fProcessState[i])
60  {
61  delete fProcessState[i];
62  fProcessState[i] = 0;
63  }
64  }
65  */
66  fProcessState.clear();
70  fNavigatorState = 0;
71 }
G4ITNavigatorState_Lock * fNavigatorState
G4ITStepProcessorState_Lock * fpStepProcessorState
std::vector< G4shared_ptr< G4ProcessState_Lock > > fProcessState
G4TrackingInformation::G4TrackingInformation ( const G4TrackingInformation other)
protected

Copy constructor

Parameters
otherObject to copy from

Definition at line 74 of file G4TrackingInformation.cc.

74  :
75  fStepLeader (false),
77 {
78  //copy ctor
82  fNavigatorState = 0;
83 }
G4Trajectory_Lock * fpTrajectory_Lock
G4ITNavigatorState_Lock * fNavigatorState
G4ITStepProcessorState_Lock * fpStepProcessorState

Member Function Documentation

G4ITNavigatorState_Lock * G4TrackingInformation::GetNavigatorState ( ) const
inline

Definition at line 257 of file G4TrackingInformation.hh.

258 {
259  return fNavigatorState;
260 }
G4ITNavigatorState_Lock * fNavigatorState

Here is the caller graph for this function:

G4double G4TrackingInformation::GetPreStepGlobalTime ( ) const
inline

Definition at line 236 of file G4TrackingInformation.hh.

237 {
239 }

Here is the caller graph for this function:

G4double G4TrackingInformation::GetPreStepLocalTime ( ) const
inline

Definition at line 241 of file G4TrackingInformation.hh.

242 {
244 }

Here is the caller graph for this function:

const G4ThreeVector & G4TrackingInformation::GetPreStepPosition ( ) const
inline

Definition at line 246 of file G4TrackingInformation.hh.

247 {
248  return fRecordedTrackPosition;
249 }

Here is the caller graph for this function:

G4shared_ptr< G4ProcessState_Lock > G4TrackingInformation::GetProcessState ( size_t  index)

Every process should store the information computed at the InteractionLegth stage in the track.

Definition at line 107 of file G4TrackingInformation.cc.

108 {
110  {
111  G4ExceptionDescription exceptionDescription ;
112  exceptionDescription << "G4TrackingInformation::GetProcInfo : Wrong process subType : " ;
113  exceptionDescription << index ;
114  G4Exception("G4TrackingInformation::GetProcessState","G4TrackingInformation003",
115  FatalErrorInArgument,exceptionDescription);
116  }
117 
118  return fProcessState[index];
119 }
std::ostringstream G4ExceptionDescription
Definition: globals.hh:76
static const size_t & GetMaxProcessIndex()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41
std::vector< G4shared_ptr< G4ProcessState_Lock > > fProcessState

Here is the call graph for this function:

Here is the caller graph for this function:

G4ITStepProcessorState_Lock * G4TrackingInformation::GetStepProcessorState ( )
inline

Definition at line 216 of file G4TrackingInformation.hh.

217 {
218  return fpStepProcessorState;
219 }
G4ITStepProcessorState_Lock * fpStepProcessorState

Here is the caller graph for this function:

G4TrackStateManager& G4TrackingInformation::GetTrackStateManager ( )
inline

Definition at line 138 of file G4TrackingInformation.hh.

139  {
140  return fTrackStateManager;
141  }
G4TrackStateManager fTrackStateManager

Here is the caller graph for this function:

G4Trajectory_Lock* G4TrackingInformation::GetTrajectory_Lock ( )
inline

Definition at line 148 of file G4TrackingInformation.hh.

149  {
150  return fpTrajectory_Lock;
151  }
G4Trajectory_Lock * fpTrajectory_Lock
bool G4TrackingInformation::IsLeadingStep ( )
inline

If the track is the one having the minimum step time, then it "leads" the step. It will interact will all the other tracks will be transported.

Definition at line 91 of file G4TrackingInformation.hh.

92  {
93  return fStepLeader;
94  }
G4TrackingInformation & G4TrackingInformation::operator= ( const G4TrackingInformation other)
protected

Assignment operator

Parameters
otherObject to assign from
Returns
A reference to this

Definition at line 86 of file G4TrackingInformation.cc.

87 {
88  if (this == &rhs) return *this; // handle self assignment
89  //assignment operator
90  return *this;
91 }
void G4TrackingInformation::RecordCurrentPositionNTime ( G4Track track)

Definition at line 121 of file G4TrackingInformation.cc.

122 {
123  if(track)
124  {
128  }
129 }
G4double GetLocalTime() const
const G4ThreeVector & GetPosition() const
G4double GetGlobalTime() const

Here is the call graph for this function:

Here is the caller graph for this function:

void G4TrackingInformation::RecordProcessState ( G4shared_ptr< G4ProcessState_Lock state,
size_t  index 
)
inline

Definition at line 229 of file G4TrackingInformation.hh.

231 {
232  // G4cout << "G4TrackingInformation::RecordProcessState" << G4endl;
233  fProcessState[index] = state;
234 }
std::vector< G4shared_ptr< G4ProcessState_Lock > > fProcessState

Here is the caller graph for this function:

void G4TrackingInformation::SetLeadingStep ( bool  value)
inline

Definition at line 95 of file G4TrackingInformation.hh.

96  {
98  }
const XML_Char int const XML_Char * value
Definition: expat.h:331

Here is the caller graph for this function:

void G4TrackingInformation::SetNavigatorState ( G4ITNavigatorState_Lock *  state)
inline

Definition at line 251 of file G4TrackingInformation.hh.

252 {
253  // G4cout << "Set Navigator state : " << state << G4endl;
254  fNavigatorState = state;
255 }
G4ITNavigatorState_Lock * fNavigatorState

Here is the caller graph for this function:

void G4TrackingInformation::SetStepProcessorState ( G4ITStepProcessorState_Lock state)
inline

Definition at line 211 of file G4TrackingInformation.hh.

212 {
213  fpStepProcessorState = state;
214 }
G4ITStepProcessorState_Lock * fpStepProcessorState

Here is the caller graph for this function:

void G4TrackingInformation::SetTrajectory_Lock ( G4Trajectory_Lock *  trajLock)
inline

Definition at line 153 of file G4TrackingInformation.hh.

154  {
155  fpTrajectory_Lock = trajLock;
156  }
G4Trajectory_Lock * fpTrajectory_Lock

Friends And Related Function Documentation

friend class G4ITStepProcessor
friend

Definition at line 169 of file G4TrackingInformation.hh.

Member Data Documentation

G4ITNavigatorState_Lock* G4TrackingInformation::fNavigatorState
protected

Definition at line 183 of file G4TrackingInformation.hh.

std::vector<G4shared_ptr<G4ProcessState_Lock> > G4TrackingInformation::fProcessState
protected

Holds the information related to processes Indexed on GetPhysIntVector (cf. G4ITStepProcessor header)

Definition at line 192 of file G4TrackingInformation.hh.

G4ITStepProcessorState_Lock* G4TrackingInformation::fpStepProcessorState
protected

Definition at line 195 of file G4TrackingInformation.hh.

G4Trajectory_Lock* G4TrackingInformation::fpTrajectory_Lock
protected

Definition at line 173 of file G4TrackingInformation.hh.

G4double G4TrackingInformation::fRecordedTrackGlobalTime
protected

Definition at line 180 of file G4TrackingInformation.hh.

G4double G4TrackingInformation::fRecordedTrackLocalTime
protected

Definition at line 179 of file G4TrackingInformation.hh.

G4ThreeVector G4TrackingInformation::fRecordedTrackPosition
protected

Definition at line 178 of file G4TrackingInformation.hh.

G4bool G4TrackingInformation::fStepLeader
protected

Definition at line 171 of file G4TrackingInformation.hh.

G4TrackStateManager G4TrackingInformation::fTrackStateManager
protected

Definition at line 175 of file G4TrackingInformation.hh.


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