]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Corrected handling of friens trees in Input (A. Dainese)
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 24 Jul 2009 08:48:41 +0000 (08:48 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 24 Jul 2009 08:48:41 +0000 (08:48 +0000)
STEER/AliAODInputHandler.cxx

index 4fcd5791d42c1acb2aac5e1483dfe8d5fe1d873a..55dd00e7bb92866494b941c9a6ce5a2b1702e98b 100644 (file)
@@ -23,6 +23,7 @@
 #include <TTree.h>
 #include <TList.h>
 #include <TNamed.h>
+#include <TFile.h>
 
 #include "AliAODInputHandler.h"
 #include "AliAODEvent.h"
@@ -66,11 +67,21 @@ Bool_t AliAODInputHandler::Init(TTree* tree, Option_t* /*opt*/)
  
     if (!fTree) return kFALSE;
    
+    TString aodTreeFName,aodFriendTreeFName;
+
     while((obj = (TNamed*)next())) {
        if (fTree->GetTree()) {
-           (fTree->GetTree())->AddFriend("aodTree", obj->GetName());
+         aodTreeFName = (fTree->GetTree()->GetCurrentFile())->GetName();
+         aodFriendTreeFName = aodTreeFName;
+         aodFriendTreeFName.ReplaceAll("AliAOD.root",obj->GetName());
+         aodFriendTreeFName.ReplaceAll("AliAODs.root",obj->GetName());
+         (fTree->GetTree())->AddFriend("aodTree", aodFriendTreeFName.Data());
        } else {
-           fTree->AddFriend("aodTree", obj->GetName());
+         aodTreeFName = (fTree->GetCurrentFile())->GetName();
+         aodFriendTreeFName = aodTreeFName;
+         aodFriendTreeFName.ReplaceAll("AliAOD.root",obj->GetName());
+         aodFriendTreeFName.ReplaceAll("AliAODs.root",obj->GetName());
+         fTree->AddFriend("aodTree", aodFriendTreeFName.Data());
        }
     }