]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - AliGeant4/AliTrackingAction.cxx
Added class iostreamer funcionality and Print and Read functions. cleaned
[u/mrichter/AliRoot.git] / AliGeant4 / AliTrackingAction.cxx
index 8fbdfc89d97f4eea0d77b0c49b17ed2c4ab2995a..b625592c8fa34ab53c10269f1e0b23b90a7dab45 100644 (file)
@@ -13,6 +13,7 @@
 #include "AliGlobals.h"  
 #include "TG4StepManager.h"
 #include "TG4PhysicsManager.h"
+#include "TG4ParticlesManager.h"
 
 #include <G4Track.hh>
 #include <G4TrackVector.hh>
@@ -26,8 +27,8 @@ AliTrackingAction* AliTrackingAction::fgInstance = 0;
 
 //_____________________________________________________________________________
 AliTrackingAction::AliTrackingAction()
-  : fPrimaryTrackID(0),
-    fVerboseLevel(2),
+  : AliVerbose("trackingAction",2),
+    fPrimaryTrackID(0),
     fNewVerboseLevel(0),
     fNewVerboseTrackID(-1),
     fSavePrimaries(true),
@@ -44,7 +45,8 @@ AliTrackingAction::AliTrackingAction()
 
 //_____________________________________________________________________________
 AliTrackingAction::AliTrackingAction(const AliTrackingAction& right) 
-  : fMessenger(this) {
+  : AliVerbose("trackingAction"),
+    fMessenger(this) {
 //
   AliGlobals::Exception("AliTrackingAction is protected from copying.");
 }
@@ -224,13 +226,13 @@ void AliTrackingAction::FinishPrimaryTrack()
   if (fPrimaryTrackID>0) {
 
     // verbose
-    if (fVerboseLevel == 3) { 
+    if (VerboseLevel() == 3) { 
       G4cout << "$$$ Primary track " << fPrimaryTrackID << G4endl;
     } 
-    else if ( fVerboseLevel == 2 &&  fPrimaryTrackID % 10 == 0 ) {
+    else if (VerboseLevel() == 2 &&  fPrimaryTrackID % 10 == 0 ) {
       G4cout << "$$$ Primary track " << fPrimaryTrackID  << G4endl;
     } 
-    else if ( fVerboseLevel == 1 &&  fPrimaryTrackID % 100 == 0 ) {
+    else if (VerboseLevel() == 1 &&  fPrimaryTrackID % 100 == 0 ) {
       G4cout << "$$$ Primary track " << fPrimaryTrackID  << G4endl;
     } 
 
@@ -266,7 +268,9 @@ void AliTrackingAction::SaveTrack(const G4Track* track)
   //       << G4endl;
 
   // PDG code
-  G4int pdg = track->GetDefinition()->GetPDGEncoding();
+  G4int pdg 
+    = TG4ParticlesManager::Instance()
+      ->GetPDGEncodingFast(track->GetDefinition());
 
   // track kinematics  
   G4ThreeVector momentum = track->GetMomentum(); 
@@ -295,8 +299,7 @@ void AliTrackingAction::SaveTrack(const G4Track* track)
     mcProcess = kPPrimary;
   }
   else {  
-    TG4PhysicsManager* pPhysicsManager = TG4PhysicsManager::Instance();
-    mcProcess = pPhysicsManager->GetMCProcess(kpProcess);  
+    mcProcess = TG4PhysicsManager::Instance()->GetMCProcess(kpProcess);  
     // distinguish kPDeltaRay from kPEnergyLoss  
     if (mcProcess == kPEnergyLoss) mcProcess = kPDeltaRay;
   }