08e1a23e |
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 |
103d3fba |
27 | #include <TSystem.h> |
28 | class TChain; |
29 | class TList; |
6b6e4472 |
30 | class TMap; |
08e1a23e |
31 | |
32 | #include <AliTagCreator.h> |
33 | |
34 | class TFile; |
35 | class TGridResult; |
36 | |
44e45fac |
37 | class AliGRPObject; |
850d5792 |
38 | class AliEventTag; |
08e1a23e |
39 | |
40 | //___________________________________________________________________________ |
41 | class AliESDTagCreator : public AliTagCreator { |
42 | |
43 | public: |
44 | AliESDTagCreator(); |
45 | ~AliESDTagCreator(); |
46 | |
27293674 |
47 | void CreateESDTags(Int_t fFirstEvent, Int_t fLastEvent, AliGRPObject *grpData, ULong_t * qa, Bool_t * es, Int_t qalength, Int_t eslength); |
850d5792 |
48 | void CreateESDTagsFullRun(TTree *chain, AliGRPObject *grpData, ULong_t * qa, Bool_t * es, Int_t qalength, Int_t eslength); |
49 | void CreateESDRunTagSummary(TTree *chain); |
08e1a23e |
50 | |
2856e38b |
51 | void SetInactiveBranches(const char* branches) {fBranches = branches;} |
52 | |
08e1a23e |
53 | Bool_t ReadGridCollection(TGridResult *result); |
54 | Bool_t ReadLocalCollection(const char *localpath); |
55 | Bool_t ReadCAFCollection(const char *filename); |
56 | |
57 | protected: |
103d3fba |
58 | void CreateTag(TChain *chain, const char* type); |
08e1a23e |
59 | void CreateTag(TFile* file, const char *guid, const char *md5, const char *turl, Long64_t size, Int_t Counter); |
60 | void CreateTag(TFile* file, const char *filepath, Int_t Counter); |
517aef4e |
61 | |
850d5792 |
62 | void FillEventTag(TTree *chain, AliEventTag *evTag, Int_t iEventNumber, AliESDEvent *esd); |
63 | |
103d3fba |
64 | private: |
2856e38b |
65 | void SwitchOffBranches() const; |
786172af |
66 | AliESDTagCreator(const AliESDTagCreator& creator); |
67 | AliESDTagCreator& operator=(const AliESDTagCreator& creator); |
517aef4e |
68 | |
850d5792 |
69 | TChain *fChain; //chain of esd files |
70 | TList *fGUIDList; //TList of guid TObjString |
71 | TList *fMD5List; //TList of md5 TObjString |
72 | TList *fTURLList; //TList of turl TObjString |
2856e38b |
73 | TString fBranches; //List of branches to be switched off (separated by space |
103d3fba |
74 | MemInfo_t *meminfo; //mem info |
517aef4e |
75 | |
08e1a23e |
76 | ClassDef(AliESDTagCreator,0) |
77 | }; |
78 | |
79 | #endif |
80 | |