Moving AliTagAnalysis and AliXMLCollection from ESD to ANALYSIS library (Panos+Cvetan)
[u/mrichter/AliRoot.git] / ANALYSIS / AliTagAnalysis.h
1 #ifndef ALITAGANALYSIS_H
2 #define ALITAGANALYSIS_H
3 /*  See cxx source for full Copyright notice */
4
5
6 /* $Id$ */
7
8 //-------------------------------------------------------------------------
9 //                          Class AliTagAnalysis
10 //   This is the AliTagAnalysis class for the tag analysis
11 //
12 //    Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch
13 //-------------------------------------------------------------------------
14
15
16
17 //////////////////////////////////////////////////////////////////////////
18 //                                                                      //
19 //                        AliTagAnalysis                                //
20 //                                                                      //
21 //           Implementation of the tag analysis mechanism.              //
22 //                                                                      //
23 //////////////////////////////////////////////////////////////////////////
24
25
26 //ROOT
27 #include <TObject.h>
28
29 class AliEventTag;
30 class TChain;
31 class AliEventTagCuts;
32 class AliRunTagCuts;
33 class TGridResult;
34 class TTreeFormula;
35
36 //____________________________________________________//
37 class AliTagAnalysis : public TObject {
38  public:
39   AliTagAnalysis();
40   ~AliTagAnalysis(); 
41   
42   Bool_t AddTagsFile(const char *alienUrl);
43   void ChainLocalTags(const char *dirname);
44   void ChainGridTags(TGridResult *result);
45   
46   TChain *QueryTags(AliRunTagCuts *RunTagCuts, AliEventTagCuts *EvTagCuts);
47   TChain *QueryTags(const char *fRunCut, const char *fEventCut);  
48
49   Bool_t CreateXMLCollection(const char* name, AliRunTagCuts *RunTagCuts, AliEventTagCuts *EvTagCuts);
50   Bool_t CreateXMLCollection(const char* name, const char *fRunCut, const char *fEventCut);
51
52   TChain *GetInputChain(const char* system, const char *wn);
53   TChain *GetChainFromCollection(const char* collectionname, const char* treename);
54   
55   //____________________________________________________//
56  protected:
57   TGridResult *ftagresult; //the results from the tag grid query     
58   TString fTagDirName; //the location of the locally stored tags
59   
60   TChain *fChain; //tag chain 
61   
62   //____________________________________________________//
63  private:
64   AliTagAnalysis(const AliTagAnalysis & source);
65   AliTagAnalysis & operator=(const AliTagAnalysis & source);
66        
67   ClassDef(AliTagAnalysis,0)  
68 };
69
70 #endif
71