One class per file. Coding conventions. Removing warnings on Sun
[u/mrichter/AliRoot.git] / DISPLAY / AliModuleInfo.h
1 #ifndef ALIMODULEINFO_H
2 #define ALIMODULEINFO_H
3 /* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /////////////////////////////////////////////////////////////////////////
7 // ALICE MODULE INFORMATION CLASS                                      //
8 // Author: Mayeul   ROUSSELET                                          //
9 // e-mail: Mayeul.Rousselet@cern.ch                                    //
10 // Last update:26/08/2003                                              //
11 /////////////////////////////////////////////////////////////////////////
12
13 #include <Rtypes.h>
14
15 class AliModuleInfo{
16  public:
17   AliModuleInfo(int n);
18   AliModuleInfo(const AliModuleInfo& rh);
19   AliModuleInfo& operator = (const AliModuleInfo& rh);
20   
21   virtual ~AliModuleInfo();
22
23   void     SetId(const char* name,Int_t id);
24   void     Add(const char * name,Int_t i);
25   Int_t    Id(const char *name) const;
26   const char*    Name(Int_t id) const;
27   Bool_t   IsEnabled(Int_t id) const;
28   Bool_t   IsEnabled(const char *name) const {return IsEnabled(Id(name));};
29   void     Disable(Int_t id);
30   void     Disable(const char* name){Disable(Id(name));};
31   void     Enable(Int_t id);
32   void     Enable(const char *name){Enable(Id(name));};
33   void     Print() const;
34   
35  private:
36   //The purposes of this class is to link each module to its Id
37   char     **fName; // Array containing the names of the modules
38   Int_t    *fId;    // Array of module's Ids
39   Bool_t   *fEnabled; // Array of flags to enable/disable modules
40   Int_t    fNb; // Number of modules
41
42   ClassDef(AliModuleInfo,0);
43 };
44
45 #endif