]>
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$ */ | |
9e1a0ddb | 7 | |
88cb7938 | 8 | #include <TNamed.h> |
b16a1b1e | 9 | class TDatabasePDG; |
10 | class TFolder; | |
11 | class TString; | |
98490ea9 | 12 | class TVirtualMC; |
b16a1b1e | 13 | |
14 | class AliConfig; | |
15 | class AliDetector; | |
9e1a0ddb | 16 | class AliGenerator; |
17 | class AliModule; | |
9e1a0ddb | 18 | class AliTasks; |
19 | ||
20 | class AliConfig : public TNamed { | |
7e90ff59 | 21 | |
22 | public: | |
88cb7938 | 23 | |
b16a1b1e | 24 | AliConfig(); |
7e90ff59 | 25 | |
88cb7938 | 26 | virtual ~ AliConfig (); |
27 | ||
28 | void Add(TDatabasePDG *pdg); | |
29 | void Add(char *list); | |
30 | ||
31 | void Add(AliGenerator *generator,const char* eventfolder = fgkDefaultEventFolderName); | |
32 | void Add (TVirtualMC *mc,const char* eventfolder = fgkDefaultEventFolderName); | |
33 | void Add (AliModule *module,const char* eventfolder = fgkDefaultEventFolderName); | |
34 | void Add (AliDetector *detector,const char* eventfolder = fgkDefaultEventFolderName); | |
35 | ||
36 | Int_t AddDetector(const char* evntfoldername,const char *name, const char* title); | |
37 | Int_t AddDetector(TFolder* evntfolder,const char *name, const char* title); | |
7e90ff59 | 38 | |
88cb7938 | 39 | Int_t CreateDetectorFolders(const char* evntfoldername,const char *name, const char* title);//Used by AliRunGetter |
40 | Int_t CreateDetectorFolders(TFolder* evntfolder,const char *name, const char* title);//Used by AliRunGetter | |
41 | Int_t CreateDetectorTasks(const char *name, const char* title); | |
7e90ff59 | 42 | |
88cb7938 | 43 | static AliConfig* Instance(); |
7e90ff59 | 44 | |
88cb7938 | 45 | TFolder* BuildEventFolder(const char* name,const char* tilte); |
46 | ||
47 | TFolder* GetTopFolder(){return fTopFolder;} | |
48 | TFolder* GetTaskFolder(){return fTaskFolder;} | |
49 | TFolder* GetConstFolder(){return fConstFolder;} | |
50 | ||
51 | static const TString& GetModulesFolderName(){return fgkModuleFolderName;} | |
52 | ||
53 | TString GetQATaskName() const; //returns path to QA tasks | |
54 | TString GetDigitizerTaskName () const; | |
55 | TString GetSDigitizerTaskName () const; | |
56 | TString GetReconstructionerTaskName () const; | |
57 | TString GetTrackerTaskName () const; | |
58 | TString GetPIDTaskName () const; | |
59 | ||
60 | ||
61 | const TString& GetQAFolderName() const; //returns path to folder with QA output | |
62 | ||
d0d4a6b3 | 63 | const TString& GetDataFolderName() const;//returns name of data folder |
88cb7938 | 64 | |
65 | static const TString fgkTopFolderName; //name of top AliRoot folder | |
66 | ||
d0d4a6b3 | 67 | static const TString fgkDefaultEventFolderName; //name of event folder |
68 | static const TString fgkTasksFolderName; //name of task folder | |
69 | static const TString fgkConstantsFolderName; //name of constants folder | |
70 | ||
71 | static const TString fgkDataFolderName; //name of data folde | |
72 | static const TString fgkConditionsFolderName; //name of conditions folder | |
73 | static const TString fgkConfigurationFolderName;//name of configuration foolder | |
74 | static const TString fgkHeaderFolderName; //name of header folder | |
75 | ||
76 | static const TString fgkDigitizerTaskName; //name of digitizer task | |
77 | static const TString fgkSDigitizerTaskName; //name of sdigitizer task | |
78 | static const TString fgkQATaskName; //name of Q-A task | |
79 | static const TString fgkReconstructionerTaskName;//name of reconstructioner | |
80 | //task | |
81 | static const TString fgkTrackerTaskName; //name of tracker task | |
82 | static const TString fgkPIDTaskName; //name of PID task | |
83 | ||
84 | static const TString fgkCalibrationFolderName; //name of calibration folder | |
85 | static const TString fgkAligmentFolderName; //name of alignment folder | |
86 | static const TString fgkQAFolderName; //name of QA folder | |
87 | ||
88 | static const TString fgkFieldFolderName; //name of magn.field folder | |
89 | static const TString fgkGeneratorsFolderName; //name of generator folder | |
90 | static const TString fgkVirtualMCFolderName; //name of virtual MC folder | |
91 | ||
92 | private: | |
93 | AliConfig(const char * name, const char * title ); | |
94 | AliConfig(const AliConfig&); | |
95 | AliConfig& operator=(const AliConfig&); | |
96 | ||
97 | void AddInFolder (const char * dir, TObject *obj); | |
98 | Int_t AddSubTask(const char *taskname, const char* name, const char* title); | |
99 | Int_t AddSubFolder(TFolder* topfolder, const char* infoler, //helper method | |
100 | const char* newfoldname, const char* newfoldtitle); | |
101 | TObject* FindInFolder (const char *dir, const char *name); | |
102 | ||
103 | // folders | |
104 | TFolder* fTopFolder; //pointer to top folder | |
105 | TFolder* fTaskFolder; //pointer to task folder | |
106 | TFolder* fConstFolder; //pointer to constants folder | |
107 | ||
108 | static const TString fgkPDGFolderName; //name of PDG folder | |
109 | static const TString fgkGeneratorFolderName; //name of generator name | |
110 | static const TString fgkMCFolderName; //name of MC folder | |
111 | static const TString fgkModuleFolderName; //name of module folder | |
112 | ||
113 | TString *fDetectorTask;//!array with names for detector tasks | |
114 | TString *fDetectorFolder;//!array with names for detector folders (where detector is going to be put) | |
115 | ||
116 | static AliConfig* fgInstance; //pointer to the AliConfig instance | |
117 | ||
88cb7938 | 118 | |
119 | ClassDef(AliConfig,2) //Configuration class for AliRun | |
9e1a0ddb | 120 | }; // end class AliConfig |
121 | ||
122 | #endif |