]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliRun.cxx
Added method to calculate absID from position in PHOS local coordinate system
[u/mrichter/AliRoot.git] / STEER / AliRun.cxx
index 7efd9b61be27470cacb72746ea3e78967d2f813b..c915d254f1ed80bf21145f74d4cfe724d3a4ac52 100644 (file)
@@ -48,7 +48,6 @@
 #include <TROOT.h>
 #include <TRandom3.h>
 #include <TSystem.h>
-#include <TVector.h>
 #include <TVirtualMC.h>
 // 
 #include "AliDetector.h"
@@ -80,7 +79,6 @@ AliRun::AliRun():
   fGeometry(0),
   fMCApp(0),
   fDisplay(0),
-  fTimer(),
   fField(0),
   fMC(0),
   fNdets(0),
@@ -110,7 +108,6 @@ AliRun::AliRun(const AliRun& arun):
   fGeometry(0),
   fMCApp(0),
   fDisplay(0),
-  fTimer(),
   fField(0),
   fMC(0),
   fNdets(0),
@@ -139,7 +136,6 @@ AliRun::AliRun(const char *name, const char *title):
   fGeometry(0),
   fMCApp(0),
   fDisplay(0),
-  fTimer(),
   fField(0),
   fMC(gMC),
   fNdets(0),
@@ -269,9 +265,11 @@ AliGenerator* AliRun::Generator() const
 //_______________________________________________________________________
 void  AliRun::SetField(AliMagF* magField)
 {
-    // Set Magnetic Field Map
-    fField = magField;
-    fField->ReadField();
+  //
+  // Set Magnetic Field Map
+  //
+  fField = magField;
+  fField->ReadField();
 }
 
 //_______________________________________________________________________
@@ -311,6 +309,7 @@ void AliRun::InitLoaders()
   AliModule *mod;
   while((mod = (AliModule*)next()))
    { 
+     mod->SetRunLoader(fRunLoader);
      AliDetector *det = dynamic_cast<AliDetector*>(mod);
      if (det) 
       {
@@ -820,19 +819,21 @@ void AliRun::SetConfigFunction(const char * config)
 //_______________________________________________________________________
 void AliRun::Field(const Double_t* x, Double_t *b) const
 {
-   Float_t xfloat[3];
-   for (Int_t i=0; i<3; i++) xfloat[i] = x[i]; 
-
-   if (Field()) {
-         Float_t bfloat[3];
-         Field()->Field(xfloat,bfloat);
-         for (Int_t j=0; j<3; j++) b[j] = bfloat[j]; 
-   } 
-   else {
-         printf("No mag field defined!\n");
-         b[0]=b[1]=b[2]=0.;
-   }
-
+  //
+  // Return the value of the magnetic field
+  //
+  Float_t xfloat[3];
+  for (Int_t i=0; i<3; i++) xfloat[i] = x[i]; 
+  
+  if (Field()) {
+    Float_t bfloat[3];
+    Field()->Field(xfloat,bfloat);
+    for (Int_t j=0; j<3; j++) b[j] = bfloat[j]; 
+  } 
+  else {
+    printf("No mag field defined!\n");
+    b[0]=b[1]=b[2]=0.;
+  }
 }      
 
 // 
@@ -877,6 +878,9 @@ Int_t AliRun::GetEvNumber() const
 
 void AliRun::SetRunLoader(AliRunLoader* rloader)
 {
+  //
+  // Set the loader of the run
+  //
   fRunLoader = rloader;
   if (fRunLoader == 0x0) return;
   
@@ -903,6 +907,7 @@ void AliRun::SetRunLoader(AliRunLoader* rloader)
   while((module = (AliModule*)next())) 
    {
      if (evfold) AliConfig::Instance()->Add(module,evfoldname);
+     module->SetRunLoader(fRunLoader);
      AliDetector* detector = dynamic_cast<AliDetector*>(module);
      if (detector)
       {
@@ -922,6 +927,9 @@ void AliRun::SetRunLoader(AliRunLoader* rloader)
 
 void AliRun::AddModule(AliModule* mod)
 {
+  //
+  // Add a module to the module list
+  //
   if (mod == 0x0) return;
   if (strlen(mod->GetName()) == 0) return;
   if (GetModuleID(mod->GetName()) >= 0) return;