Improved common vertex handling.
[u/mrichter/AliRoot.git] / STEER / AliConfig.h
CommitLineData
9e1a0ddb 1#ifndef ALICONFIG_H
2#define ALICONFIG_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
9e1a0ddb 7
b16a1b1e 8
9class TDatabasePDG;
10class TFolder;
11class TString;
98490ea9 12class TVirtualMC;
b16a1b1e 13
14class AliConfig;
15class AliDetector;
9e1a0ddb 16class AliGenerator;
17class AliModule;
9e1a0ddb 18class AliTasks;
19
116cbefd 20#include <TNamed.h>
21
9e1a0ddb 22class AliConfig : public TNamed {
7e90ff59 23
24public:
b16a1b1e 25
26 AliConfig();
7e90ff59 27 virtual ~ AliConfig ();
28
29 void Add (AliGenerator *generator);
98490ea9 30 void Add (TVirtualMC *mc);
7e90ff59 31 void Add (TDatabasePDG *pdg);
32 void Add (AliModule *module);
33 void Add (AliDetector *detector);
34
35 void Add (char *list);
36
37 static AliConfig* Instance();
38
39private:
b16a1b1e 40
41 enum {kFolders=8, kTasks=5};
42 AliConfig(const char * name, const char * title);
116cbefd 43 AliConfig(const AliConfig& conf);
e2afb3b6 44 void AddInFolder (const char * dir, TObject *obj);
ef92dd70 45 void AddSubFolder(const char * dir[], TObject *obj);
46 void AddSubTask(const char * dir[], TObject *obj);
e2afb3b6 47 TObject* FindInFolder (const char *dir, const char *name);
b16a1b1e 48 AliConfig& operator = (const AliConfig&) {return *this;}
7e90ff59 49
116cbefd 50 TFolder *fTopFolder; // Pointer of the top folder
51 AliTasks *fTasks; // Pointer for the tasks
7e90ff59 52 // folders
116cbefd 53 const char* fPDGFolder ; // Names of the PDG folders
54 const char* fGeneratorFolder ; // Names of the Generator folders
55 const char* fMCFolder ; // Names of MC folders
56 const char* fModuleFolder ; // Names of Module folders
57 const char** fDetectorFolder ; // Names of Detector folders
58 const char** fDetectorTask ; // Names of Detector Task folders
59
60 static AliConfig* fgInstance; // Instance of the singleton
9e1a0ddb 61
682a4a95 62 ClassDef(AliConfig,1) //Configuration class for AliRun
9e1a0ddb 63}; // end class AliConfig
64
65#endif