]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/Calib/AliTPCAnalysisTaskcalib.cxx
*** V interface for TPCCalibTasks ***
[u/mrichter/AliRoot.git] / TPC / Calib / AliTPCAnalysisTaskcalib.cxx
index c961165dad50fe268aae6cd86638825d5e311e69..c543f08d9fd08bc6e0905c2ffced26c362fa74cf 100644 (file)
 #include "AliESDfriendTrack.h"
 #include "AliTPCseed.h"
 #include "AliESDInputHandler.h"
+
+#include "AliVEvent.h"
+#include "AliVfriendEvent.h"
+#include "AliVTrack.h"
+#include "AliVfriendTrack.h"
+#include "AliVEventHandler.h"
+
 #include "AliAnalysisManager.h"
 #include "TFile.h"
 #include "TSystem.h"
@@ -40,8 +47,8 @@ ClassImp(AliTPCAnalysisTaskcalib)
 AliTPCAnalysisTaskcalib::AliTPCAnalysisTaskcalib()
   :AliAnalysisTask(),
    fCalibJobs(0),
-   fESD(0),
-   fESDfriend(0),
+   fEvent(0),
+   fEventFriend(0),
    fDebugOutputPath("")
 {
   //
@@ -54,8 +61,8 @@ AliTPCAnalysisTaskcalib::AliTPCAnalysisTaskcalib()
 AliTPCAnalysisTaskcalib::AliTPCAnalysisTaskcalib(const char *name) 
   :AliAnalysisTask(name,""),
    fCalibJobs(0),
-   fESD(0),
-   fESDfriend(0),
+   fEvent(0),
+   fEventFriend(0),
    fDebugOutputPath("")
 {
   //
@@ -84,24 +91,26 @@ void AliTPCAnalysisTaskcalib::Exec(Option_t *) {
   //
   // Exec function
   // Loop over tracks and call  Process function
-  if (!fESD) {
-    //Printf("ERROR: fESD not available");
+    //Printf("AliTPCAnalysisTaskcalib::Exec()...");
+
+  if (!fEvent) {
+    Printf("ERROR AliTPCAnalysisTaskcalib::Exec(): fEvent not available");
     return;
   }
-  fESDfriend=static_cast<AliESDfriend*>(fESD->FindListObject("AliESDfriend"));
+  fEventFriend=fEvent->FindFriend();
   //fESDfriend=fESD->FindFriend();
-  Int_t n=fESD->GetNumberOfTracks();
-  Process(fESD);
-  if (!fESDfriend) {
-    //Printf("ERROR: fESDfriend not available");
+  Int_t n=fEvent->GetNumberOfTracks();
+  Process(fEvent);
+  if (!fEventFriend) {
+    //Printf("ERROR AliTPCAnalysisTaskcalib::Exec(): fEventFriend not available");
     return;
   }
-  if (fESDfriend->TestSkipBit()) return;
+  if (fEventFriend->TestSkipBit()) return;
   //
-  Int_t run = fESD->GetRunNumber();
+  Int_t run = fEvent->GetRunNumber();
   for (Int_t i=0;i<n;++i) {
-    AliESDfriendTrack *friendTrack=fESDfriend->GetTrack(i);
-    AliESDtrack *track=fESD->GetTrack(i);
+    const AliVfriendTrack *friendTrack=fEventFriend->GetTrack(i);
+    AliVTrack *track=fEvent->GetVTrack(i);
     TObject *calibObject=0;
     AliTPCseed *seed=0;
     if (!friendTrack) continue;
@@ -123,12 +132,13 @@ void AliTPCAnalysisTaskcalib::ConnectInputData(Option_t *) {
     //Printf("ERROR: Could not read chain from input slot 0");
   } 
   else {
-    AliESDInputHandler *esdH = dynamic_cast<AliESDInputHandler*> (AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
+    //AliESDInputHandler *esdH = dynamic_cast<AliESDInputHandler*> (AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler());
+    AliVEventHandler *esdH = AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler();
     if (!esdH) {
-      //Printf("ERROR: Could not get ESDInputHandler");
+      Printf("ERROR: Could not get ESDInputHandler");
     } 
     else {
-      fESD = esdH->GetEvent();
+      fEvent = esdH->GetEvent();
       //Printf("*** CONNECTED NEW EVENT ****");
     }
   }
@@ -174,10 +184,11 @@ void AliTPCAnalysisTaskcalib::FinishTaskOutput()
 }
 
 
-void AliTPCAnalysisTaskcalib::Process(AliESDEvent *event) {
+void AliTPCAnalysisTaskcalib::Process(AliVEvent *event) {
   //
   // Process ESD event
   //
+    //Printf("AliTPCAnalysisTaskcalib::Process(event)...");
   AliTPCcalibBase *job=0;
   Int_t njobs = fCalibJobs->GetEntriesFast();
   for (Int_t i=0;i<njobs;i++){
@@ -194,6 +205,7 @@ void AliTPCAnalysisTaskcalib::Process(AliTPCseed *track) {
   //
   // Process TPC track
   //
+    //Printf("AliTPCAnalysisTaskcalib::Process(TPC track)...");
   AliTPCcalibBase *job=0;
   Int_t njobs = fCalibJobs->GetEntriesFast();
   for (Int_t i=0;i<njobs;i++){
@@ -204,10 +216,11 @@ void AliTPCAnalysisTaskcalib::Process(AliTPCseed *track) {
   }
 }
 
-void AliTPCAnalysisTaskcalib::Process(AliESDtrack *track, Int_t run) {
+void AliTPCAnalysisTaskcalib::Process(AliVTrack *track, Int_t run) {
   //
   // Process ESD track
   //
+    //Printf("AliTPCAnalysisTaskcalib::Process(ESD track)...");
   AliTPCcalibBase *job=0;
   Int_t njobs = fCalibJobs->GetEntriesFast();
   for (Int_t i=0;i<njobs;i++){