+
+//______________________________________________________________________________
+Option_t *AliAODInputHandler::GetDataType() const
+{
+// Returns handled data type.
+ return gAODDataType;
+}
+
+//______________________________________________________________________________
+TObject *AliAODInputHandler::GetStatistics(Option_t *option) const
+{
+// Get the statistics histogram(s) from the physics selection object. This
+// should be called during FinishTaskOutput(). Option can be empty (default
+// statistics histogram) or BIN0.
+ TString opt(option);
+ opt.ToUpper();
+ if (opt=="BIN0") return fHistStatistics[1];
+ return fHistStatistics[0];
+}
+
+void AliAODInputHandler::ConnectFriends()
+{
+ // Connect the friend trees
+ if (!fMergeEvents) {
+ TIter next(fFriends);
+ TNamed* obj;
+ TString aodTreeFName,aodFriendTreeFName;
+ TTree *ttree = fTree->GetTree();
+ if (!ttree) ttree = fTree;
+ aodTreeFName = ttree->GetCurrentFile()->GetName();
+
+ while((obj = (TNamed*)next())) {
+ aodFriendTreeFName = aodTreeFName;
+ aodFriendTreeFName.ReplaceAll("AliAOD.root",obj->GetName());
+ aodFriendTreeFName.ReplaceAll("AliAODs.root",obj->GetName());
+ ttree->AddFriend("aodTree", aodFriendTreeFName.Data());
+ }
+ } else {
+ // Friends have to be merged
+ TNamed* filename = (TNamed*) (fFriends->At(0));
+ fFileToMerge = new TFile(filename->GetName());
+ if (fFileToMerge) {
+ fFileToMerge->GetObject("aodTree", fTreeToMerge);
+ if (!fAODEventToMerge) fAODEventToMerge = new AliAODEvent();
+ fAODEventToMerge->ReadFromTree(fTreeToMerge);
+ }
+ }
+ fFriendsConnected = kTRUE;
+}
+
+//______________________________________________________________________________
+void AliAODInputHandler::CreatePIDResponse(Bool_t isMC/*=kFALSE*/)
+{
+ //
+ // create the pid response object if it does not exist yet
+ //
+ if (fAODpidUtil) return;
+ fAODpidUtil=new AliAODpidUtil(isMC);
+
+}
+