]>
Commit | Line | Data |
---|---|---|
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$ */ | |
7 | /* | |
682a4a95 | 8 | * $Log$ |
931e9fdb | 9 | * Revision 1.3 2001/10/04 15:30:56 hristov |
10 | * Changes to accommodate the set of PHOS folders and tasks (Y.Schutz) | |
11 | * | |
7e90ff59 | 12 | * Revision 1.2 2001/05/21 17:22:51 buncic |
13 | * Fixed problem with missing AliConfig while reading galice.root | |
14 | * | |
682a4a95 | 15 | * Revision 1.1 2001/05/16 14:57:22 alibrary |
16 | * New files for folders and Stack | |
17 | * | |
9e1a0ddb | 18 | */ |
19 | ||
931e9fdb | 20 | #include <iostream.h> |
9e1a0ddb | 21 | #include <TFolder.h> |
22 | #include <TList.h> | |
23 | #include <TInterpreter.h> | |
24 | #include <TROOT.h> | |
25 | #include <TSystem.h> | |
26 | #include <TDatabasePDG.h> | |
7e90ff59 | 27 | class TString ; |
9e1a0ddb | 28 | class AliGenerator; |
29 | class AliModule; | |
30 | class AliDetector; | |
31 | class AliMC; | |
32 | class AliConfig; | |
33 | class AliTasks; | |
34 | ||
35 | class AliConfig : public TNamed { | |
7e90ff59 | 36 | |
37 | public: | |
38 | ||
39 | AliConfig(){ | |
40 | // ctor: this is a singleton, the ctor should never be called but cint needs it as public | |
41 | cerr << "ERROR: AliConfig is a singleton default ctor not callable" << endl ; | |
42 | abort() ; | |
43 | } | |
44 | ||
45 | virtual ~ AliConfig (); | |
46 | ||
47 | void Add (AliGenerator *generator); | |
48 | void Add (AliMC *mc); | |
49 | void Add (TDatabasePDG *pdg); | |
50 | void Add (AliModule *module); | |
51 | void Add (AliDetector *detector); | |
52 | ||
53 | void Add (char *list); | |
54 | ||
55 | static AliConfig* Instance(); | |
56 | ||
57 | private: | |
58 | AliConfig(const char * name, const char * title ); | |
59 | void AddInFolder (char * dir, TObject *obj); | |
60 | void AddSubFolder(char * dir[], TObject *obj); | |
61 | void AddSubTask(char * dir[], TObject *obj); | |
62 | TObject* FindInFolder (char *dir, const char *name); | |
63 | ||
64 | TFolder *fTopFolder; | |
65 | AliTasks *fTasks; | |
66 | // folders | |
67 | char* fPDGFolder ; | |
68 | char* fGeneratorFolder ; | |
69 | char* fMCFolder ; | |
70 | char* fModuleFolder ; | |
71 | char** fDetectorFolder ; | |
72 | char** fDetectorTask ; | |
9e1a0ddb | 73 | |
9e1a0ddb | 74 | |
7e90ff59 | 75 | static AliConfig* fInstance; |
9e1a0ddb | 76 | |
682a4a95 | 77 | ClassDef(AliConfig,1) //Configuration class for AliRun |
9e1a0ddb | 78 | }; // end class AliConfig |
79 | ||
80 | #endif |