]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONv1.cxx
Updated AddTask for pPb
[u/mrichter/AliRoot.git] / MUON / AliMUONv1.cxx
index fb0dde761f947a1ebe54ef7d45432013f9c2d433..d25249e171405fa90f5cc8d0ea6be370f8fad68e 100644 (file)
@@ -56,6 +56,9 @@
 
 #include "AliMUONVHitStore.h"
 
+using std::endl;
+using std::cout;
+using std::setw;
 /// \cond CLASSIMP
 ClassImp(AliMUONv1)
 /// \endcond
@@ -169,6 +172,19 @@ void AliMUONv1::CreateMaterials()
   fGeometryBuilder->CreateMaterials();
 }
 
+//________________________________________________________________
+void AliMUONv1::UpdateInternalGeometry()
+{
+/// Update geometry after applying mis-alignment
+
+  // Load mapping
+  if ( ! AliMpCDB::LoadMpSegmentation() ) {
+    AliFatal("Could not access mapping from OCDB !");
+  }
+
+  fGeometryBuilder->UpdateInternalGeometry();
+}
+
 //________________________________________________________________
 void AliMUONv1::AddAlignableVolumes() const
 {
@@ -308,7 +324,9 @@ void AliMUONv1::StepManager()
   
   if( gMC->IsTrackEntering() ) {
      Float_t theta = fTrackMomentum.Theta();
-     if ((TMath::Pi()-theta)*kRaddeg>=15.) gMC->SetMaxStep(fStepMaxInActiveGas); // We use Pi-theta because z is negative
+     if ( fIsMaxStep && (TMath::Pi()-theta)*kRaddeg>=15. ) {
+       gMC->SetMaxStep(fStepMaxInActiveGas); // We use Pi-theta because z is negative
+     }  
      iEnter = 1;
      gMC->TrackPosition(xyzEnter[0], xyzEnter[1], xyzEnter[2]); // save coordinates of entrance point
   }
@@ -342,9 +360,10 @@ void AliMUONv1::StepManager()
        gMC->IsTrackDisappeared()||
        (fStepSum[idvol]>fStepMaxInActiveGas) ) {
     
-    if   ( gMC->IsTrackExiting() || 
-           gMC->IsTrackStop() || 
-           gMC->IsTrackDisappeared() ) gMC->SetMaxStep(kBig);
+    if   ( fIsMaxStep && 
+           ( gMC->IsTrackExiting() || 
+             gMC->IsTrackStop() || 
+             gMC->IsTrackDisappeared() ) ) gMC->SetMaxStep(kBig);
     if (fDestepSum[idvol] == 0) {
       // AZ - no energy release
       fStepSum[idvol] = 0; // Reset for the next event