48799709b698b07706656ca48469d8ae72fad0e5
[u/mrichter/AliRoot.git] / STEER / AliESDTagCreator.h
1 #ifndef ALIESDTAGCREATOR_H
2 #define ALIESDTAGCREATOR_H
3 /*  See cxx source for full Copyright notice */
4
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //                          Class AliESDTagCreator
10 //   This is the AliESDTagCreator class for the tag creation (post process)
11 //
12 //    Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
13 //-------------------------------------------------------------------------
14
15
16
17 //////////////////////////////////////////////////////////////////////////
18 //                                                                      //
19 //                        AliESDTagCreator                              //
20 //                                                                      //
21 //           Implementation of the tag creation mechanism.              //
22 //                                                                      //
23 //////////////////////////////////////////////////////////////////////////
24
25
26 //ROOT
27 #include <TSystem.h>
28 class TChain;
29 class TList;
30
31 #include <AliTagCreator.h>
32
33 class TFile;
34 class TGridResult;
35
36
37 //___________________________________________________________________________
38 class AliESDTagCreator : public AliTagCreator {
39
40  public:
41   AliESDTagCreator();
42   ~AliESDTagCreator(); 
43
44   void CreateESDTags(Int_t fFirstEvent, Int_t fLastEvent);
45
46   Bool_t ReadGridCollection(TGridResult *result);
47   Bool_t ReadLocalCollection(const char *localpath);
48   Bool_t ReadCAFCollection(const char *filename);
49   
50  protected:  
51   void CreateTag(TChain *chain, const char* type);
52   void CreateTag(TFile* file, const char *guid, const char *md5, const char *turl, Long64_t size, Int_t Counter);
53   void CreateTag(TFile* file, const char *filepath, Int_t Counter);
54
55  private:
56   TChain *fChain; //chain of esd files
57   TList  *fGUIDList; //TList of guid TObjString
58   TList  *fMD5List; //TList of md5 TObjString
59   TList  *fTURLList; //TList of turl TObjString
60   MemInfo_t *meminfo; //mem info
61
62   ClassDef(AliESDTagCreator,0)  
63 };
64
65 #endif
66