G4CollisionInitialState Class Reference

#include <G4CollisionInitialState.hh>


Public Member Functions

 G4CollisionInitialState ()
 G4CollisionInitialState (G4double time, G4KineticTrack *aPrimary, G4KineticTrack *aTarget)
 G4CollisionInitialState (G4double time, G4KineticTrack *aPrimary, const G4KineticTrackVector &aTarget, G4BCAction *aFSGenerator)
 ~G4CollisionInitialState ()
 G4CollisionInitialState (const G4CollisionInitialState &right)
G4CollisionInitialStateoperator= (const G4CollisionInitialState &right)
int operator< (const G4CollisionInitialState &right) const
int operator== (const G4CollisionInitialState &right) const
G4KineticTrackGetPrimary (void)
void SetPrimary (G4KineticTrack *aPrimary)
G4KineticTrackGetTarget (void)
void SetTarget (G4KineticTrack *aTarget)
void AddTarget (G4KineticTrack *aTarget)
G4KineticTrackVectorGetTargetCollection (void)
G4KineticTrackVectorGetFinalState ()
G4int GetTargetBaryonNumber ()
G4int GetTargetCharge ()
G4double GetCollisionTime (void)
void SetCollisionTime (G4double value)
G4BCActionGetGenerator ()
void Print () const


Detailed Description

Definition at line 47 of file G4CollisionInitialState.hh.


Constructor & Destructor Documentation

G4CollisionInitialState::G4CollisionInitialState (  ) 

Definition at line 38 of file G4CollisionInitialState.cc.

00038                                                  :
00039    theCollisionTime(DBL_MAX), thePrimary(0), theTarget(0), theFSGenerator(0)
00040 {
00041 }

G4CollisionInitialState::G4CollisionInitialState ( G4double  time,
G4KineticTrack aPrimary,
G4KineticTrack aTarget 
)

Definition at line 44 of file G4CollisionInitialState.cc.

00046 {
00047    theCollisionTime = time;
00048    thePrimary       = aPrimary;
00049    theTarget        = aTarget;
00050    theTs.clear();
00051    theFSGenerator = 0;
00052 }

G4CollisionInitialState::G4CollisionInitialState ( G4double  time,
G4KineticTrack aPrimary,
const G4KineticTrackVector aTarget,
G4BCAction aFSGenerator 
)

Definition at line 55 of file G4CollisionInitialState.cc.

00058 {
00059    theCollisionTime = time;
00060    thePrimary       = aPrimary;
00061    theTarget = 0;
00062    for (size_t i=0; i<aTarget.size(); i++) theTs.push_back(aTarget[i]);
00063    theFSGenerator = aFSGenerator;
00064 }

G4CollisionInitialState::~G4CollisionInitialState (  )  [inline]

Definition at line 58 of file G4CollisionInitialState.hh.

00058 { }

G4CollisionInitialState::G4CollisionInitialState ( const G4CollisionInitialState right  ) 

Definition at line 68 of file G4CollisionInitialState.cc.

References theCollisionTime, theFSGenerator, thePrimary, theTarget, and theTs.

00069 {
00070      theCollisionTime = right.theCollisionTime;
00071      thePrimary       = right.thePrimary;
00072      theTarget        = right.theTarget;
00073      for (size_t i=0; i<right.theTs.size(); i++) theTs.push_back(right.theTs[i]);
00074      theFSGenerator   = right.theFSGenerator;
00075 }


Member Function Documentation

void G4CollisionInitialState::AddTarget ( G4KineticTrack aTarget  )  [inline]

Definition at line 80 of file G4CollisionInitialState.hh.

00081     {theTs.push_back(aTarget);}

G4double G4CollisionInitialState::GetCollisionTime ( void   )  [inline]

Definition at line 106 of file G4CollisionInitialState.hh.

Referenced by G4CollisionManager::Print().

00107     {return theCollisionTime;}

G4KineticTrackVector * G4CollisionInitialState::GetFinalState (  ) 

Definition at line 95 of file G4CollisionInitialState.cc.

References G4BCAction::GetFinalState().

00096   {
00097 //    G4cerr << "what is the FS generator? "
00098 //           << typeid(*theFSGenerator).name()
00099 //         <<G4endl;
00100     return theFSGenerator->GetFinalState(thePrimary, theTs);
00101   }

G4BCAction* G4CollisionInitialState::GetGenerator (  )  [inline]

Definition at line 112 of file G4CollisionInitialState.hh.

Referenced by G4CollisionManager::Print().

00113   {
00114     return theFSGenerator;
00115   }

G4KineticTrack* G4CollisionInitialState::GetPrimary ( void   )  [inline]

Definition at line 70 of file G4CollisionInitialState.hh.

Referenced by G4CollisionManager::Print(), and G4CollisionManager::RemoveTracksCollisions().

00071     {return thePrimary;}

G4KineticTrack* G4CollisionInitialState::GetTarget ( void   )  [inline]

Definition at line 75 of file G4CollisionInitialState.hh.

Referenced by G4CollisionManager::Print(), and G4CollisionManager::RemoveTracksCollisions().

00076     {return theTarget;}

G4int G4CollisionInitialState::GetTargetBaryonNumber (  )  [inline]

Definition at line 85 of file G4CollisionInitialState.hh.

References G4lrint().

00086   {
00087     G4double result=0;
00088     for(size_t i=0; i<theTs.size(); i++)
00089     {
00090       result += theTs[i]->GetDefinition()->GetBaryonNumber();
00091     }
00092     return G4lrint(result);
00093   }

G4int G4CollisionInitialState::GetTargetCharge (  )  [inline]

Definition at line 94 of file G4CollisionInitialState.hh.

References G4lrint().

00095   {
00096     G4double result=0;
00097     for(size_t i=0; i<theTs.size(); i++)
00098     {
00099       result += theTs[i]->GetDefinition()->GetPDGCharge();
00100     }
00101     return G4lrint(result);
00102   }

G4KineticTrackVector& G4CollisionInitialState::GetTargetCollection ( void   )  [inline]

Definition at line 82 of file G4CollisionInitialState.hh.

Referenced by G4CollisionManager::RemoveTracksCollisions().

00083     {return theTs;}

int G4CollisionInitialState::operator< ( const G4CollisionInitialState right  )  const [inline]

Definition at line 63 of file G4CollisionInitialState.hh.

References theCollisionTime.

00064     {return (theCollisionTime < right.theCollisionTime);}

G4CollisionInitialState & G4CollisionInitialState::operator= ( const G4CollisionInitialState right  ) 

Definition at line 77 of file G4CollisionInitialState.cc.

References theCollisionTime, theFSGenerator, thePrimary, theTarget, and theTs.

00078 {
00079    if (this != &right)
00080    {
00081       theCollisionTime = right.theCollisionTime;
00082       thePrimary       = right.thePrimary;
00083       theTarget        = right.theTarget;
00084       for (size_t i=0; i<right.theTs.size(); i++)
00085           theTs.push_back(right.theTs[i]);
00086       theFSGenerator   = right.theFSGenerator;
00087    }
00088 
00089    return *this;
00090 }

int G4CollisionInitialState::operator== ( const G4CollisionInitialState right  )  const [inline]

Definition at line 66 of file G4CollisionInitialState.hh.

References theCollisionTime.

00067     {return (theCollisionTime == right.theCollisionTime);}

void G4CollisionInitialState::Print (  )  const

Definition at line 105 of file G4CollisionInitialState.cc.

References G4cout, G4KineticTrack::GetDefinition(), and G4ParticleDefinition::GetPDGEncoding().

00106 {
00107    G4int tgtPdg=theTarget ?
00108      theTarget->GetDefinition()->GetPDGEncoding() : 0;
00109    G4cout << "  collision " << this << " time: "
00110      << theCollisionTime/second << " proj: "
00111      << thePrimary << "/pdg=" << thePrimary->GetDefinition()->GetPDGEncoding()
00112      << " tgt: " << theTarget << "/pdg=" << tgtPdg
00113      << " Collision type: "<< typeid(*theFSGenerator).name();
00114 
00115 }

void G4CollisionInitialState::SetCollisionTime ( G4double  value  )  [inline]

Definition at line 108 of file G4CollisionInitialState.hh.

00109     {theCollisionTime = value;}

void G4CollisionInitialState::SetPrimary ( G4KineticTrack aPrimary  )  [inline]

Definition at line 72 of file G4CollisionInitialState.hh.

00073     {thePrimary = aPrimary;}

void G4CollisionInitialState::SetTarget ( G4KineticTrack aTarget  )  [inline]

Definition at line 77 of file G4CollisionInitialState.hh.

00078     {theTarget = aTarget;}


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:51:39 2013 for Geant4 by  doxygen 1.4.7