]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliConfig.h
Changes to accommodate the set of PHOS folders and tasks (Y.Schutz)
[u/mrichter/AliRoot.git] / STEER / AliConfig.h
index a6dd5001ec72c6ce6c456e1fd3257fa96ef4e4d6..4a17084aa844120cbe9dd45288f432ec3c0e0889 100644 (file)
@@ -5,16 +5,23 @@
 
 /* $Id$ */
 /* 
- * $Log$ 
+ * $Log$
+ * Revision 1.2  2001/05/21 17:22:51  buncic
+ * Fixed problem with missing AliConfig while reading galice.root
+ *
+ * Revision 1.1  2001/05/16 14:57:22  alibrary
+ * New files for folders and Stack
+ * 
  */
 
+#include <iostream>
 #include <TFolder.h>
 #include <TList.h>
 #include <TInterpreter.h>
 #include <TROOT.h>
 #include <TSystem.h>
 #include <TDatabasePDG.h>
-
+class TString ; 
 class AliGenerator;
 class AliModule;
 class AliDetector;
@@ -23,35 +30,48 @@ class AliConfig;
 class AliTasks;
 
 class AliConfig : public TNamed {
+  
+public:
+  
+  AliConfig(){ 
+    // ctor: this is a singleton, the ctor should never be called but cint needs it as public
+    cerr << "ERROR: AliConfig is a singleton default ctor not callable" << endl ;
+    abort() ; 
+  } 
+  
+  virtual ~ AliConfig ();
+  
+  void  Add (AliGenerator *generator);
+  void  Add (AliMC *mc);
+  void  Add (TDatabasePDG *pdg);
+  void  Add (AliModule *module);
+  void  Add (AliDetector *detector);
+  
+  void  Add (char *list);
+  
+  static AliConfig* Instance();
+  
+private:
+  AliConfig(const char * name, const char * title );
+  void  AddInFolder (char * dir, TObject *obj);
+  void  AddSubFolder(char * dir[], TObject *obj);
+  void  AddSubTask(char * dir[], TObject *obj);
+ TObject* FindInFolder (char *dir, const char *name);
+  
+  TFolder  *fTopFolder;
+  AliTasks *fTasks;
+  // folders
+  char*  fPDGFolder ; 
+  char*  fGeneratorFolder ; 
+  char*  fMCFolder ; 
+  char*  fModuleFolder ; 
+  char** fDetectorFolder ; 
+  char** fDetectorTask ; 
 
-  public:
-
-    AliConfig(const char *name="gAlice", 
-                 const char *title = "Alice simulation and reconstruction framework");
-    virtual ~ AliConfig ();
 
-    void  Add (AliGenerator *generator);
-    void  Add (AliMC *mc);
-    void  Add (TDatabasePDG *pdg);
-    void  Add (AliModule *module);
-    void  Add (AliDetector *detector);
-   
-    void  Add (const char *list);
+  static AliConfig*  fInstance;
     
-    static AliConfig* Instance();
-
-  private:
-     void  AddInFolder (char *dir, TObject *obj);
-     void  AddSubFolder(char *dir[], TObject *obj);
-     TObject* FindInFolder (char *dir, const char *name);
-
-    TFolder  *fTopFolder;
-    AliTasks *fTasks;
-
-    static AliConfig*  fInstance;
-    
-    ClassDef(AliConfig,1) 
-
+    ClassDef(AliConfig,1) //Configuration class for AliRun
 };                             // end class AliConfig
 
 #endif