OADB Classes for the physics selection and filling scheme
[u/mrichter/AliRoot.git] / OADB / AliOADBFillingScheme.h
1 #ifndef AliOADBFillingScheme_H
2 #define AliOADBFillingScheme_H
3 /* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //     OADB container for filling scheme information (BX ids, name ...)
10 //     Author: Michele Floris, CERN
11 //-------------------------------------------------------------------------
12
13 #include <TNamed.h>
14 #include "TMap.h"
15 #include "TObjString.h"
16
17
18 class AliOADBFillingScheme : public TNamed {
19
20  public :
21   AliOADBFillingScheme();
22   AliOADBFillingScheme(char* name);
23   virtual ~AliOADBFillingScheme();
24   AliOADBFillingScheme(const AliOADBFillingScheme& cont); 
25   AliOADBFillingScheme& operator=(const AliOADBFillingScheme& cont);
26   void Init();
27   
28   // Getters
29   const char * GetBXIDs(const char * beamSide) const; 
30   const char * GetFillingSchemeName() const { return fFSName; } 
31   // Setters
32   void SetBXIDs(const char * beamSide, const char * bxids) { fBXIds->Add(new TObjString(beamSide), new TObjString(bxids)); }
33   void SetFillingSchemeName(const char * name) { fFSName = name; }
34   // Browse
35   virtual Bool_t        IsFolder() const { return kTRUE; }
36   void Browse(TBrowser *b);
37   // Print
38   virtual void  Print(Option_t* option = "") const;
39
40  private :
41   
42   TString fFSName               ; // Name of the filling scheme 
43   TMap * fBXIds              ; // Map from the beam side bunch crossing number. Beam side is "B", "A", "C", "E".
44
45   ClassDef(AliOADBFillingScheme, 1);
46 };
47
48 #endif