]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Added flag for "local" or "grid" mode
authordainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 19 Dec 2008 11:53:04 +0000 (11:53 +0000)
committerdainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 19 Dec 2008 11:53:04 +0000 (11:53 +0000)
PWG3/vertexingHF/AliAnalysisTaskSECompareHFTest.C

index d2431e58cc681af8252a76568c45acfa89158fe5..09f26fc0fb68138e3e62210320f068a9f1b9c8bf 100644 (file)
@@ -5,6 +5,7 @@ void AliAnalysisTaskSECompareHFTest()
   // association with MC truth (using MC info in AOD)\r
   // A.Dainese, andrea.dainese@lnl.infn.it\r
   //\r
+  TString mode="local"; // otherwise, "grid"\r
 \r
   gSystem->Load("libTree.so");\r
   gSystem->Load("libGeom.so");\r
@@ -19,32 +20,31 @@ void AliAnalysisTaskSECompareHFTest()
   gSystem->Load("libPWG3vertexingHF.so");\r
 \r
 \r
-  // Local files \r
-  TChain *chain = new TChain("aodTree");\r
-  chain->Add("./AliAOD.root");\r
+  TChain *chainAOD = 0;\r
+  TChain *chainAODfriend = 0;\r
 \r
-  // or:\r
-  /*\r
-  //Fetch files with AliEn :\r
-  const char *collectionfile = "CollectionTags.xml";\r
-  TGrid::Connect("alien://") ;\r
-  //Create an AliRunTagCuts and an AliEventTagCuts Object and impose some selection criteria\r
-  AliRunTagCuts      *runCuts   = new AliRunTagCuts();\r
-  AliEventTagCuts    *eventCuts = new AliEventTagCuts();\r
-  AliLHCTagCuts      *lhcCuts   = new AliLHCTagCuts();\r
-  AliDetectorTagCuts *detCuts   = new AliDetectorTagCuts();\r
-  eventCuts->SetMultiplicityRange(0,20000);\r
-  //Create an AliTagAnalysis Object and chain the tags\r
-  AliTagAnalysis   *tagAna = new AliTagAnalysis();\r
-  tagAna->SetType("AOD");\r
-  TAlienCollection *coll   = TAlienCollection::Open(collectionfile);\r
-  TGridResult      *tagResult = coll->GetGridResult("",0,0);\r
-  tagResult->Print();\r
-  tagAna->ChainGridTags(tagResult);\r
-  //Create a new aod chain and assign the chain that is returned by querying the tags\r
-  TChain* chain = tagAna->QueryTags(runCuts,lhcCuts,detCuts,eventCuts);\r
-  */\r
+  chainAOD = new TChain("aodTree");\r
+  chainAODfriend = new TChain("aodTree");\r
 \r
+  if(mode=="local") {\r
+    // Local files \r
+    chainAOD->Add("./AliAOD.root");\r
+    chainAODfriend->Add("./AliAOD.VertexingHF.root");\r
+    // ... add more if needed\r
+  } else { // grid (NOT TESTED YET)\r
+    //Fetch files with AliEn\r
+    // xml: need to check the 1-to-1 correspondence\r
+    const char *collectionfileAOD = "CollectionAOD.xml";\r
+    const char *collectionfileAODfriend = "CollectionAODfriend.xml";\r
+    TGrid::Connect("alien://");\r
+    //Create an AliTagAnalysis Object and chain the tags\r
+    AliTagAnalysis   *tagAna = new AliTagAnalysis();\r
+    chainAOD = tagAna->GetChainFromCollection(collectionfileAOD,"aodTree");\r
+    chainAODfriend = tagAna->GetChainFromCollection(collectionfileAODfriend,"aodTree");\r
+  }\r
+\r
+  // attach the friend chain\r
+  chainAOD->AddFriend(chainAODfriend);\r
 \r
   // Create the analysis manager\r
   AliAnalysisManager *mgr  = new AliAnalysisManager("My Manager","My Manager");\r
@@ -53,7 +53,7 @@ void AliAnalysisTaskSECompareHFTest()
 \r
   // Input\r
   AliAODInputHandler *inputHandler = new AliAODInputHandler();\r
-  inputHandler->AddFriend("AliAOD.VertexingHF.root");\r
+  //inputHandler->AddFriend("AliAOD.VertexingHF.root");//should not be needed\r
   mgr->SetInputEventHandler(inputHandler);\r
 \r
   \r
@@ -96,11 +96,10 @@ void AliAnalysisTaskSECompareHFTest()
   //\r
   // Run the analysis\r
   //    \r
-  printf("CHAIN HAS %d ENTRIES\n",(Int_t)chain->GetEntries());\r
+  printf("CHAIN HAS %d ENTRIES\n",(Int_t)chainAOD->GetEntries());\r
   if(mgr->InitAnalysis()) {\r
     mgr->PrintStatus();\r
-    mgr->StartAnalysis("local",chain);\r
-    //mgr->StartAnalysis("grid",chain);\r
+    mgr->StartAnalysis(mode.Data(),chainAOD);\r
   }\r
 \r
   return;\r