]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliRun.h
ApplyDisplacements method renamed to ApplyAlignObjsToGeom. Automatic check of overlap...
[u/mrichter/AliRoot.git] / STEER / AliRun.h
index 9bbf6340a540b3d5a0b0430be82fd59ffe210901..b62c249375b6d24089b032a2474597adee08c177 100644 (file)
@@ -12,7 +12,7 @@
 //
 
 #include <TError.h>
-//#include <TStopwatch.h>
+#include <TSystem.h>
 
 class TGeometry;
 class TParticle;
@@ -58,7 +58,6 @@ public:
    Int_t          GetEventNrInRun() const {return fEventNrInRun;}
    Int_t          GetEventsPerRun() const {return fEventsPerRun;}
    Int_t          GetNdets() const {return fNdets;}
-   Int_t          GetDebug() const {return fDebug;}
    AliModule     *GetModule(const char *name) const;
    AliDetector   *GetDetector(const char *name) const;
    Int_t          GetModuleID(const char *name) const;
@@ -80,7 +79,10 @@ public:
    virtual  void  Init(const char *setup="Config.C") {InitMC(setup);}
    Bool_t         IsFolder() const {return kTRUE;}
    virtual AliLego* Lego() const {return fLego;}
-
+   Bool_t         IsRootGeometry() const {return fIsRootGeometry;}
+   void           SetRootGeometry(Bool_t flag=kTRUE);
+   const char*    GetGeometryFileName() const {return fGeometryFileName.Data();}
+   void           SetGeometryFileName(const char *name) {fGeometryFileName = name;}
    virtual  void  ResetDigits();
    virtual  void  ResetSDigits();
    virtual  void  ResetPoints();
@@ -92,7 +94,6 @@ public:
                           Float_t rmax=430,Float_t zmax=10000, AliLegoGenerator* gener=NULL);
    virtual  Bool_t IsLegoRun() const {return (fLego!=0);}
    virtual  void  RunReco(const char *detector=0, Int_t first = 0, Int_t last = 0);
-   virtual  void  SetDebug(Int_t level=0) {fDebug = level;}
    virtual  void  SetDisplay(AliDisplay *display) {fDisplay = display;}
    virtual  void  SetField(Int_t type=2, Int_t version=1, Float_t scale=1, Float_t maxField=10, const char* filename="$(ALICE_ROOT)/data/field01.dat");
    virtual  void  SetField(AliMagF* magField);
@@ -104,6 +105,14 @@ public:
    virtual  void  ResetHits();
    virtual  AliGenerator* Generator() const;
 
+
+
+// Added by Alberto Colla
+
+   Bool_t         IsFileAccessible(Char_t* name, EAccessMode mode = kFileExists);
+   static   Bool_t   IsFileAccessible(const char* fnam, EAccessMode mode = kFileExists);
+// Added by Alberto Colla
+
    //
    // End of MC Application
 
@@ -124,15 +133,15 @@ public:
    
   virtual  void  InitLoaders(); //prepares run (i.e. creates getters)
   static void Deprecated(TObject *obj, const char *method, const char *replace)
-    {
-      //
-      // Indicates deprecated method
-      //
+    {// Indicates deprecated method
       if (obj) ::Warning(Form("%s::%s", obj->ClassName(), method),
                  "method is depricated\nPlease use: %s", replace);
       else ::Warning(method, "method is depricated\nPlease use: %s", replace);
     }
 
+  // Method to introduce the detector misliagnment
+  // It is called by AliSimulation
+  static Bool_t  ApplyAlignObjsToGeom(TClonesArray* AlObjArray);
 
 protected:
   virtual  void  Tree2Tree(Option_t *option, const char *detector=0);
@@ -140,13 +149,11 @@ protected:
   Int_t          fEvent;             //! Current event number (from 1)
   Int_t          fEventNrInRun;      //! Current unique event number in run
   Int_t          fEventsPerRun;      //  Number of events per run
-  Int_t          fDebug;             //  Debug flag
   TObjArray     *fModules;           //  List of Detectors
   TGeometry     *fGeometry;          //  Pointer to geometry
   AliMC         *fMCApp;             //  Pointer to virtual MC Application
   AliDisplay    *fDisplay;           //! Pointer to event display
   AliMagF       *fField;             //  Magnetic Field Map
-  TVirtualMC    *fMC;                //! Pointer to MonteCarlo object
   Int_t          fNdets;             //  Number of detectors
   Bool_t         fInitDone;          //! True when initialisation done
   AliLego       *fLego;              //! Pointer to aliLego object if it exists
@@ -154,14 +161,15 @@ protected:
   TString        fConfigFunction;    //  Configuration file to be executed
   TRandom       *fRandom;            //  Pointer to the random number generator
   TString        fBaseFileName;      //  Name of the base root file
-
+  Bool_t         fIsRootGeometry;    //! Flag telling if the geometry is loaded from file
+  TString        fGeometryFileName;  //! Name of the geometry file
   AliRunLoader  *fRunLoader;         //!run getter - written as a separate object
 private:
   void Copy(TObject &arun) const;
 
-  ClassDef(AliRun,9)      //Supervisor class for all Alice detectors
+  ClassDef(AliRun,11)      //Supervisor class for all Alice detectors
 };
  
 R__EXTERN  AliRun *gAlice;
+  
 #endif