AliOADBContainer first commit.
[u/mrichter/AliRoot.git] / OADB / AliOADBContainer.h
1 #ifndef AliOADBContainer_H
2 #define AliOADBContainer_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 //     Offline Analysis Database Container and Service Class 
10 //     Author: Andreas Morsch, CERN
11 //-------------------------------------------------------------------------
12
13 #include <TNamed.h>
14 #include <TArrayI.h>
15
16
17 class TObjArray;
18 class TArrayI;
19
20 class AliOADBContainer : public TNamed {
21
22  public :
23   AliOADBContainer();
24   AliOADBContainer(char* name);
25   virtual ~AliOADBContainer();
26   AliOADBContainer(const AliOADBContainer& cont); 
27   AliOADBContainer& operator=(const AliOADBContainer& cont);
28   void AppendObject(TObject* obj, Int_t lower, Int_t upper);
29   void UpdateObject(Int_t index, TObject* obj, Int_t lower, Int_t upper);
30   void RemoveObject(Int_t index);
31   Int_t GetIndexForRun(Int_t run);
32   void WriteToFile(char* fname);
33   void List();
34  private :
35   TObjArray*               fArray;         // Array with objects
36   TArrayI                  fLowerLimits;   // lower limit of run range
37   TArrayI                  fUpperLimits;   // upper limit of run range
38   Int_t                    fEntries;       // Number of entries
39   ClassDef(AliOADBContainer, 1);
40 };
41
42 #endif