Geant4  10.03
G4IT Class Referenceabstract

G4IT is a interface which allows the inheriting object to be tracked using G4ITStepProcessor The inheriting class must implement the operator < , == and != in order to enable the sorting out. More...

#include <G4IT.hh>

+ Inheritance diagram for G4IT:
+ Collaboration diagram for G4IT:

Public Types

enum  ELimited {
  kDoNot, kUnique, kSharedTransport, kSharedOther,
  kUndefLimited
}
 

Public Member Functions

 G4IT ()
 
 G4IT (G4Track *)
 
virtual ~G4IT ()
 
virtual void Print () const
 
virtual const G4StringGetName () const =0
 
virtual G4bool diff (const G4IT &right) const =0
 
virtual G4bool equal (const G4IT &right) const =0
 
G4bool operator< (const G4IT &right) const
 
G4bool operator== (const G4IT &right) const
 
G4bool operator!= (const G4IT &right) const
 
void SetTrack (G4Track *)
 
G4TrackGetTrack ()
 
const G4TrackGetTrack () const
 
void RecordCurrentPositionNTime ()
 
const G4ThreeVectorGetPosition () const
 
double operator[] (int i) const
 
const G4ThreeVectorGetPreStepPosition () const
 
G4double GetPreStepLocalTime () const
 
G4double GetPreStepGlobalTime () const
 
void SetPrevious (G4IT *)
 
void SetNext (G4IT *)
 
G4ITGetPrevious ()
 
G4ITGetNext ()
 
const G4ITGetPrevious () const
 
const G4ITGetNext () const
 
void SetITBox (G4ITBox *)
 
const G4ITBoxGetITBox () const
 
void TakeOutBox ()
 
void SetNode (G4KDNode_Base *)
 
G4KDNode_BaseGetNode () const
 
void SetParentID (int, int)
 
void GetParentID (int &, int &)
 
G4TrackingInformationGetTrackingInfo ()
 
G4TrackListNodeGetListNode ()
 
void SetListNode (G4TrackListNode *node)
 
virtual const G4ITType GetITType () const =0
 
virtual G4ITType GetITSubType () const
 
- Public Member Functions inherited from G4VUserTrackInformation
 G4VUserTrackInformation ()
 
 G4VUserTrackInformation (const G4String &infoType)
 
 G4VUserTrackInformation (const G4VUserTrackInformation &)
 
G4VUserTrackInformationoperator= (const G4VUserTrackInformation &)
 
virtual ~G4VUserTrackInformation ()
 
const G4StringGetType () const
 

Protected Member Functions

 G4IT (const G4IT &)
 
G4IToperator= (const G4IT &)
 

Protected Attributes

G4TrackfpTrack
 
- Protected Attributes inherited from G4VUserTrackInformation
G4StringpType
 

Private Attributes

G4ITBoxfpITBox
 
G4ITfpPreviousIT
 
G4ITfpNextIT
 
G4KDNode_BasefpKDNode
 
int fParentID_A
 
int fParentID_B
 
G4TrackingInformationfpTrackingInformation
 
G4TrackListNodefpTrackNode
 

Detailed Description

G4IT is a interface which allows the inheriting object to be tracked using G4ITStepProcessor The inheriting class must implement the operator < , == and != in order to enable the sorting out.

also the concrete header of MyIT ("MyIt.hh") should contain : ITDef(MyIT) and the source of MyIT.cc : ITImp(MyIT)

Definition at line 84 of file G4IT.hh.

Member Enumeration Documentation

Enumerator
kDoNot 
kUnique 
kSharedTransport 
kSharedOther 
kUndefLimited 

Definition at line 67 of file G4ITMultiNavigator.hh.

Constructor & Destructor Documentation

G4IT::G4IT ( )

Definition at line 63 of file G4IT.cc.

References fParentID_A, fParentID_B, fpITBox, fpKDNode, and fpTrackNode.

G4IT::G4IT ( G4Track aTrack)

Definition at line 120 of file G4IT.cc.

References fParentID_A, fParentID_B, fpITBox, fpKDNode, fpTrack, fpTrackNode, and RecordCurrentPositionNTime().

+ Here is the call graph for this function:

G4IT::~G4IT ( )
virtual

Definition at line 155 of file G4IT.cc.

References fpTrackingInformation, and TakeOutBox().

+ Here is the call graph for this function:

G4IT::G4IT ( const G4IT )
protected

Definition at line 78 of file G4IT.cc.

References fParentID_A, fParentID_B, fpITBox, fpKDNode, and fpTrackNode.

Member Function Documentation

virtual G4bool G4IT::diff ( const G4IT right) const
pure virtual

Referenced by operator<().

+ Here is the caller graph for this function:

virtual G4bool G4IT::equal ( const G4IT right) const
pure virtual

Referenced by operator==().

+ Here is the caller graph for this function:

const G4ITBox * G4IT::GetITBox ( ) const
inline

Definition at line 180 of file G4IT.hh.

References fpITBox.

virtual G4ITType G4IT::GetITSubType ( ) const
inlinevirtual

Reimplemented in G4Molecule.

Definition at line 156 of file G4IT.hh.

Referenced by G4ITTrackHolder::PushDelayed(), and G4ITTrackHolder::PushTo().

+ Here is the caller graph for this function:

virtual const G4ITType G4IT::GetITType ( ) const
pure virtual

Referenced by G4ITModelProcessor::DoCalculateStep(), G4ITModelProcessor::FindReaction(), operator<(), operator==(), and G4AllITFinder::Push().

+ Here is the caller graph for this function:

G4TrackListNode* G4IT::GetListNode ( )
inline

Definition at line 145 of file G4IT.hh.

References fpTrackNode.

Referenced by G4FastList< G4Track >::__GetNode(), G4FastList< G4Track >::Flag(), and G4FastList< G4Track >::GetNode().

+ Here is the caller graph for this function:

G4IT * G4IT::GetNext ( )
inline

Definition at line 205 of file G4IT.hh.

References fpNextIT.

Referenced by G4ITBox::Extract(), G4ITBox::TransferTo(), and G4ITBox::~G4ITBox().

+ Here is the caller graph for this function:

const G4IT * G4IT::GetNext ( ) const
inline

Definition at line 242 of file G4IT.hh.

References fpNextIT.

G4KDNode_Base * G4IT::GetNode ( ) const
inline

Definition at line 252 of file G4IT.hh.

References fpKDNode.

void G4IT::GetParentID ( int &  p_a,
int &  p_b 
)
inline

Definition at line 231 of file G4IT.hh.

References fParentID_A, and fParentID_B.

const G4ThreeVector & G4IT::GetPosition ( ) const

Definition at line 211 of file G4IT.cc.

References fpTrack, G4Track::GetPosition(), and GetTrack().

+ Here is the call graph for this function:

G4double G4IT::GetPreStepGlobalTime ( ) const

Definition at line 225 of file G4IT.cc.

References fpTrackingInformation, and G4TrackingInformation::GetPreStepGlobalTime().

+ Here is the call graph for this function:

G4double G4IT::GetPreStepLocalTime ( ) const

Definition at line 230 of file G4IT.cc.

References fpTrackingInformation, and G4TrackingInformation::GetPreStepLocalTime().

+ Here is the call graph for this function:

const G4ThreeVector & G4IT::GetPreStepPosition ( ) const

Definition at line 235 of file G4IT.cc.

References fpTrackingInformation, and G4TrackingInformation::GetPreStepPosition().

+ Here is the call graph for this function:

G4IT * G4IT::GetPrevious ( )
inline

Definition at line 200 of file G4IT.hh.

References fpPreviousIT.

Referenced by G4ITBox::Extract(), and G4ITBox::FindIT().

+ Here is the caller graph for this function:

const G4IT * G4IT::GetPrevious ( ) const
inline

Definition at line 237 of file G4IT.hh.

References fpPreviousIT.

G4Track * G4IT::GetTrack ( )
inline

Definition at line 215 of file G4IT.hh.

References fpTrack.

Referenced by G4DNAMoleculeEncounterStepper::CheckAndRecordResults(), and GetPosition().

+ Here is the caller graph for this function:

const G4Track * G4IT::GetTrack ( ) const
inline

Definition at line 220 of file G4IT.hh.

References fpTrack.

G4bool G4IT::operator!= ( const G4IT right) const

Definition at line 197 of file G4IT.cc.

References operator==().

+ Here is the call graph for this function:

G4bool G4IT::operator< ( const G4IT right) const

Definition at line 175 of file G4IT.cc.

References diff(), and GetITType().

+ Here is the call graph for this function:

G4IT & G4IT::operator= ( const G4IT right)
protected

Definition at line 93 of file G4IT.cc.

References FatalException, fParentID_A, fParentID_B, fpITBox, fpKDNode, fpNextIT, fpPreviousIT, fpTrack, fpTrackingInformation, fpTrackNode, and G4Exception().

+ Here is the call graph for this function:

G4bool G4IT::operator== ( const G4IT right) const

Definition at line 188 of file G4IT.cc.

References equal(), and GetITType().

Referenced by operator!=().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double G4IT::operator[] ( int  i) const

Definition at line 204 of file G4IT.cc.

References fpTrack, and G4Track::GetPosition().

+ Here is the call graph for this function:

virtual void G4IT::Print ( void  ) const
inlinevirtual

Reimplemented from G4VUserTrackInformation.

Definition at line 94 of file G4IT.hh.

void G4IT::RecordCurrentPositionNTime ( )

Definition at line 217 of file G4IT.cc.

References fpTrack, fpTrackingInformation, and G4TrackingInformation::RecordCurrentPositionNTime().

Referenced by G4IT().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4IT::SetITBox ( G4ITBox aITBox)
inline

Definition at line 185 of file G4IT.hh.

References fpITBox.

Referenced by G4ITBox::Extract(), and G4ITBox::Push().

+ Here is the caller graph for this function:

void G4IT::SetListNode ( G4TrackListNode node)
inline

Definition at line 149 of file G4IT.hh.

References fpTrackNode.

Referenced by G4FastListNode< G4Track >::DetachYourSelf(), and G4FastList< G4Track >::Flag().

+ Here is the caller graph for this function:

void G4IT::SetNext ( G4IT aIT)
inline

Definition at line 195 of file G4IT.hh.

References fpNextIT.

Referenced by G4ITBox::Extract(), and G4ITBox::Push().

+ Here is the caller graph for this function:

void G4IT::SetNode ( G4KDNode_Base aNode)
inline

Definition at line 247 of file G4IT.hh.

References fpKDNode.

void G4IT::SetParentID ( int  p_a,
int  p_b 
)
inline

Definition at line 225 of file G4IT.hh.

References fParentID_A, and fParentID_B.

Referenced by G4ITModelProcessor::ComputeTrackReaction().

+ Here is the caller graph for this function:

void G4IT::SetPrevious ( G4IT aIT)
inline

Definition at line 190 of file G4IT.hh.

References fpPreviousIT.

Referenced by G4ITBox::Extract(), and G4ITBox::Push().

+ Here is the caller graph for this function:

void G4IT::SetTrack ( G4Track track)
inline

Definition at line 210 of file G4IT.hh.

References fpTrack.

void G4IT::TakeOutBox ( )

Definition at line 135 of file G4IT.cc.

References G4ITBox::Extract(), fpITBox, fpKDNode, fpTrackNode, and InactiveNode().

Referenced by ~G4IT().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

int G4IT::fParentID_A
private

Definition at line 172 of file G4IT.hh.

Referenced by G4IT(), GetParentID(), operator=(), and SetParentID().

int G4IT::fParentID_B
private

Definition at line 173 of file G4IT.hh.

Referenced by G4IT(), GetParentID(), operator=(), and SetParentID().

G4ITBox* G4IT::fpITBox
private

Definition at line 167 of file G4IT.hh.

Referenced by G4IT(), GetITBox(), operator=(), SetITBox(), and TakeOutBox().

G4KDNode_Base* G4IT::fpKDNode
private

Definition at line 170 of file G4IT.hh.

Referenced by G4IT(), GetNode(), operator=(), SetNode(), and TakeOutBox().

G4IT* G4IT::fpNextIT
private

Definition at line 169 of file G4IT.hh.

Referenced by GetNext(), operator=(), and SetNext().

G4IT* G4IT::fpPreviousIT
private

Definition at line 168 of file G4IT.hh.

Referenced by GetPrevious(), operator=(), and SetPrevious().

G4TrackListNode* G4IT::fpTrackNode
private

Definition at line 176 of file G4IT.hh.

Referenced by G4IT(), GetListNode(), operator=(), SetListNode(), and TakeOutBox().


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