AliRoot Core  edcc906 (edcc906)
AliConfig.h
Go to the documentation of this file.
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 
8 //
9 // Class to name the folders
10 // This class contains
11 // the names of the top level folders
12 //
13 
14 //
15 // Class to name the folders
16 // This class contains
17 // the names of the top level folders
18 //
19 
20 #include <TNamed.h>
21 class TDatabasePDG;
22 class TFolder;
23 class TString;
24 class TVirtualMC;
25 
26 class AliConfig;
27 class AliDetector;
28 class AliGenerator;
29 class AliModule;
30 
31 class AliConfig : public TNamed {
32 
33 public:
34 
35  virtual ~ AliConfig ();
36 
37  void Add(TDatabasePDG *pdg);
38 
39  void Add(AliGenerator *generator,const char* eventfolder = fgkDefaultEventFolderName);
40  void Add (TVirtualMC *mc,const char* eventfolder = fgkDefaultEventFolderName);
41  void Add (AliModule *module,const char* eventfolder = fgkDefaultEventFolderName);
42  void Add (AliDetector *detector,const char* eventfolder = fgkDefaultEventFolderName);
43 
44  Int_t AddDetector(const char* evntfoldername,const char *name, const char* title);
45  Int_t AddDetector(TFolder* evntfolder,const char *name, const char* title);
46 
47  Int_t CreateDetectorFolders(const char* evntfoldername,const char *name, const char* title);//Used by AliRunGetter
48  Int_t CreateDetectorFolders(TFolder* evntfolder,const char *name, const char* title);//Used by AliRunGetter
49 
50  static AliConfig* Instance();
51 
52  TFolder* BuildEventFolder(const char* name,const char* tilte);
53 
54  TFolder* GetTopFolder(){return fTopFolder;}
55  TFolder* GetConstFolder(){return fConstFolder;}
56 
57  static const TString& GetModulesFolderName(){return fgkModuleFolderName;}
58  static const TString& GetDefaultEventFolderName()
60 
61  const TString& GetDataFolderName() const;//returns name of data folder
62 
63 private:
64  AliConfig(const AliConfig&); // Not implemented
65  AliConfig& operator=(const AliConfig&); // Not implemented
66  AliConfig(); // Not implemented
67  AliConfig(const char * name, const char * title );
68 
69  static const TString fgkTopFolderName; //name of top AliRoot folder
70 
71  static const TString fgkDefaultEventFolderName; //name of event folder
72  static const TString fgkConstantsFolderName; //name of constants folder
73 
74  static const TString fgkDataFolderName; //name of data folde
75  static const TString fgkConditionsFolderName; //name of conditions folder
76  static const TString fgkConfigurationFolderName;//name of configuration foolder
77  static const TString fgkHeaderFolderName; //name of header folder
78 
79  static const TString fgkCalibrationFolderName; //name of calibration folder
80  static const TString fgkAligmentFolderName; //name of alignment folder
81 
82  static const TString fgkFieldFolderName; //name of magn.field folder
83  static const TString fgkGeneratorsFolderName; //name of generator folder
84  static const TString fgkVirtualMCFolderName; //name of virtual MC folder
85 
86  void AddInFolder (const char * dir, TObject *obj);
87  Int_t AddSubFolder(TFolder* topfolder, const char* infoler, //helper method
88  const char* newfoldname, const char* newfoldtitle);
89  TObject* FindInFolder (const char *dir, const char *name);
90 
91  // folders
92  TFolder* fTopFolder; //pointer to top folder
93  TFolder* fConstFolder; //pointer to constants folder
94 
95  static const TString fgkPDGFolderName; //name of PDG folder
96  static const TString fgkGeneratorFolderName; //name of generator name
97  static const TString fgkMCFolderName; //name of MC folder
98  static const TString fgkModuleFolderName; //name of module folder
99 
100  TString *fDetectorFolder;
101 
102  static AliConfig* fgInstance; //pointer to the AliConfig instance
103 
104 
105  ClassDef(AliConfig,3) //Configuration class for AliRun
106 }; // end class AliConfig
107 
108 #endif
static const TString fgkHeaderFolderName
Definition: AliConfig.h:77
static const TString & GetDefaultEventFolderName()
Definition: AliConfig.h:58
TFolder * GetTopFolder()
Definition: AliConfig.h:54
static const TString fgkMCFolderName
Definition: AliConfig.h:97
void AddInFolder(const char *dir, TObject *obj)
Definition: AliConfig.cxx:143
static const TString fgkVirtualMCFolderName
Definition: AliConfig.h:84
static const TString & GetModulesFolderName()
Definition: AliConfig.h:57
const TString & GetDataFolderName() const
Definition: AliConfig.cxx:416
static const TString fgkPDGFolderName
Definition: AliConfig.h:95
AliConfig & operator=(const AliConfig &)
Int_t AddSubFolder(TFolder *topfolder, const char *infoler, const char *newfoldname, const char *newfoldtitle)
Definition: AliConfig.cxx:424
static const TString fgkConstantsFolderName
Definition: AliConfig.h:72
virtual ~AliConfig()
Definition: AliConfig.cxx:131
TString * fDetectorFolder
Definition: AliConfig.h:100
static const TString fgkGeneratorsFolderName
Definition: AliConfig.h:83
static const TString fgkTopFolderName
Definition: AliConfig.h:69
void Add(TDatabasePDG *pdg)
Definition: AliConfig.cxx:180
static const TString fgkConditionsFolderName
Definition: AliConfig.h:75
static AliConfig * fgInstance
array with names for detector folders (where detector is going to be put)
Definition: AliConfig.h:102
static const TString fgkDefaultEventFolderName
Definition: AliConfig.h:71
TObject * FindInFolder(const char *dir, const char *name)
Definition: AliConfig.cxx:152
static const TString fgkAligmentFolderName
Definition: AliConfig.h:80
Int_t AddDetector(const char *evntfoldername, const char *name, const char *title)
Definition: AliConfig.cxx:212
static const TString fgkFieldFolderName
Definition: AliConfig.h:82
Int_t CreateDetectorFolders(const char *evntfoldername, const char *name, const char *title)
Definition: AliConfig.cxx:244
static const TString fgkGeneratorFolderName
Definition: AliConfig.h:96
static const TString fgkDataFolderName
Definition: AliConfig.h:74
TFolder * BuildEventFolder(const char *name, const char *tilte)
Definition: AliConfig.cxx:285
TFolder * fTopFolder
Definition: AliConfig.h:92
static const TString fgkConfigurationFolderName
Definition: AliConfig.h:76
TFolder * fConstFolder
Definition: AliConfig.h:93
static AliConfig * Instance()
Definition: AliConfig.cxx:87
static const TString fgkCalibrationFolderName
Definition: AliConfig.h:79
TFolder * GetConstFolder()
Definition: AliConfig.h:55
static const TString fgkModuleFolderName
Definition: AliConfig.h:98