]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ANALYSIS/AliTagAnalysis.h
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / ANALYSIS / AliTagAnalysis.h
index 64dd30fedeb0fd8b56875caeed3162d4c807aa88..ff057678e09b3385219c981dc3ab1aef1f10299d 100644 (file)
 
 //ROOT
 #include <TObject.h>
+#include <TString.h>
+#include <TEntryList.h>
 
 class AliEventTag;
 class TChain;
 class AliEventTagCuts;
+class AliDetectorTagCuts;
+class AliLHCTagCuts;
 class AliRunTagCuts;
 class TGridResult;
 class TTreeFormula;
@@ -37,27 +41,47 @@ class TTreeFormula;
 class AliTagAnalysis : public TObject {
  public:
   AliTagAnalysis();
+  AliTagAnalysis(const char* type);
   ~AliTagAnalysis(); 
   
-  Bool_t AddTagsFile(const char *alienUrl);
+  void SetType(const char* type) {fAnalysisType = type;}
+  const char* GetType() {return fAnalysisType.Data();}
+  Bool_t AddTagsFile(const char *alienUrl, Bool_t checkFile=kTRUE);
   void ChainLocalTags(const char *dirname);
-  void ChainGridTags(TGridResult *result);
+  TChain *ChainGridTags(TGridResult *result);
   
-  TChain *QueryTags(AliRunTagCuts *RunTagCuts, AliEventTagCuts *EvTagCuts);
-  TChain *QueryTags(const char *fRunCut, const char *fEventCut);  
+  TChain *QueryTags(AliRunTagCuts *runTagCuts, 
+                   AliLHCTagCuts *lhcTagCuts, 
+                   AliDetectorTagCuts *detTagCuts, 
+                   AliEventTagCuts *evTagCuts);
+  TChain *QueryTags(const char *fRunCut, 
+                   const char *fLHCCut, 
+                   const char *fDetectorCut, 
+                   const char *fEventCut);  
 
-  Bool_t CreateXMLCollection(const char* name, AliRunTagCuts *RunTagCuts, AliEventTagCuts *EvTagCuts);
-  Bool_t CreateXMLCollection(const char* name, const char *fRunCut, const char *fEventCut);
+  Bool_t CreateXMLCollection(const char* name, 
+                            AliRunTagCuts *runTagCuts, 
+                            AliLHCTagCuts *lhcTagCuts, 
+                            AliDetectorTagCuts *detTagCuts, 
+                            AliEventTagCuts *evTagCuts);
+  Bool_t CreateXMLCollection(const char* name, 
+                            const char *fRunCut, 
+                            const char *fLHCCut, 
+                            const char *fDetectorCut, 
+                            const char *fEventCut);
 
   TChain *GetInputChain(const char* system, const char *wn);
-  TChain *GetChainFromCollection(const char* collectionname, const char* treename);
   
+  static TChain* CreateChainFromCollection(const char* collectionname, const char* treename);
+  
+  TEntryList *GetGlobalList() {return fGlobalList;}
   //____________________________________________________//
  protected:
-  TGridResult *ftagresult; //the results from the tag grid query     
-  TString fTagDirName; //the location of the locally stored tags
-  
-  TChain *fChain; //tag chain 
+  TGridResult *ftagresult;    //the results from the tag grid query     
+  TString      fTagDirName;   //the location of the locally stored tags
+  TChain      *fChain;        //tag chain 
+  TString      fAnalysisType; //define the type of analysis (esd or aod)
+  TEntryList  *fGlobalList;   //global TEntryList
   
   //____________________________________________________//
  private: