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)
G4CollisionInitialState & operator= (const G4CollisionInitialState &right)
int operator< (const G4CollisionInitialState &right) const
int operator== (const G4CollisionInitialState &right) const
G4KineticTrack * GetPrimary (void)
void SetPrimary (G4KineticTrack *aPrimary)
G4KineticTrack * GetTarget (void)
void SetTarget (G4KineticTrack *aTarget)
void AddTarget (G4KineticTrack *aTarget)
G4KineticTrackVector & GetTargetCollection (void)
G4KineticTrackVector * GetFinalState ()
G4int GetTargetBaryonNumber ()
G4int GetTargetCharge ()
G4double GetCollisionTime (void)
void SetCollisionTime (G4double value)
G4BCAction * GetGenerator ()
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