]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Try to understannd
authorrbailhac <rbailhac@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 13 Nov 2013 09:52:50 +0000 (09:52 +0000)
committerrbailhac <rbailhac@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 13 Nov 2013 09:52:50 +0000 (09:52 +0000)
PWGHF/hfe/AliAnalysisTaskHFEQA.cxx
PWGHF/hfe/AliAnalysisTaskHFEQA.h
PWGHF/hfe/macros/AddTaskHFEQA.C
PWGHF/hfe/macros/configs/PbPb/ConfigHFEQA.C

index 0a33d7c833b526a67717ec1cfe38cd28a19aa341..47c7556c391a50d48478a0cc7fddb787d4debf80 100644 (file)
@@ -86,7 +86,11 @@ AliAnalysisTaskHFEQA::AliAnalysisTaskHFEQA() :
   fTPConly(0),\r
   fTOFTPC(0),\r
   fTPCTRD(0),\r
-  fTPCEMCal(0)\r
+  fTPCEMCal(0),\r
+  fTPConlydo(kFALSE),\r
+  fTOFTPCdo(kFALSE),\r
+  fTPCTRDdo(kFALSE),\r
+  fTPCEMCaldo(kFALSE)\r
 {\r
   // Constructor\r
    \r
@@ -111,7 +115,11 @@ AliAnalysisTaskHFEQA:: AliAnalysisTaskHFEQA(const char *name) :
   fTPConly(0),\r
   fTOFTPC(0),\r
   fTPCTRD(0),\r
-  fTPCEMCal(0)\r
+  fTPCEMCal(0),\r
+  fTPConlydo(kFALSE),\r
+  fTOFTPCdo(kFALSE),\r
+  fTPCTRDdo(kFALSE),\r
+  fTPCEMCaldo(kFALSE)\r
 {\r
   //\r
   // named ctor\r
@@ -152,7 +160,11 @@ AliAnalysisTaskHFEQA::AliAnalysisTaskHFEQA(const AliAnalysisTaskHFEQA &ref):
   fTPConly(ref.fTPConly),\r
   fTOFTPC(ref.fTOFTPC),\r
   fTPCTRD(ref.fTPCTRD),\r
-  fTPCEMCal(ref.fTPCEMCal)\r
+  fTPCEMCal(ref.fTPCEMCal),\r
+  fTPConlydo(ref.fTPConlydo),\r
+  fTOFTPCdo(ref.fTOFTPCdo),\r
+  fTPCTRDdo(ref.fTPCTRDdo),\r
+  fTPCEMCaldo(ref.fTPCEMCaldo)\r
 {\r
   //\r
   // Copy Constructor\r
@@ -195,6 +207,10 @@ void AliAnalysisTaskHFEQA::Copy(TObject &o) const {
   target.fTOFTPC = fTOFTPC;\r
   target.fTPCTRD = fTPCTRD;\r
   target.fTPCEMCal = fTPCEMCal;\r
+  target.fTPConlydo = fTPConlydo;\r
+  target.fTOFTPCdo = fTOFTPCdo;\r
+  target.fTPCTRDdo = fTPCTRDdo;\r
+  target.fTPCEMCaldo = fTPCEMCaldo;\r
         \r
 \r
 }\r
@@ -539,30 +555,37 @@ void AliAnalysisTaskHFEQA::UserExec(Option_t */*option*/)
     //printf("test 7\n");\r
 \r
     // Complete PID TPC alone\r
-    if(fPIDTPConly->IsSelected(&hfetrack,0x0,"recTrackCont",0x0)) {\r
-      fTPConly->Fill(pt);\r
+    if(fTPConlydo) {\r
+      if(fPIDTPConly->IsSelected(&hfetrack,0x0,"recTrackCont",0x0)) {\r
+       fTPConly->Fill(pt);\r
+      }\r
     }\r
     AliDebug(2,"TPC only PID\n");\r
            \r
     \r
     // Complete PID TPC TOF \r
-    if(fPIDTOFTPC->IsSelected(&hfetrack,0x0,"recTrackCont",fPIDqaTOFTPC)) {\r
-      fTOFTPC->Fill(pt);\r
-      AliDebug(2,"TOF TPC PID\n");\r
+    if(fTOFTPCdo) {\r
+      if(fPIDTOFTPC->IsSelected(&hfetrack,0x0,"recTrackCont",fPIDqaTOFTPC)) {\r
+       fTOFTPC->Fill(pt);\r
+      }\r
     }\r
+    AliDebug(2,"TOF TPC PID\n");\r
     \r
     // Complete PID TPC TRD \r
-    if(fPIDTPCTRD->IsSelected(&hfetrack,0x0,"recTrackCont",fPIDqaTPCTRD)) {\r
-      fTPCTRD->Fill(pt);\r
+    if(fTPCTRDdo) {\r
+      if(fPIDTPCTRD->IsSelected(&hfetrack,0x0,"recTrackCont",fPIDqaTPCTRD)) {\r
+       fTPCTRD->Fill(pt);\r
+      }\r
     }\r
     AliDebug(2,"TPC TRD PID\n");\r
 \r
 \r
-\r
-    if(!fAODAnalysis) {\r
-      // Complete PID TPC TRD \r
-      if(fPIDTPCEMCal->IsSelected(&hfetrack,0x0,"recTrackCont",fPIDqaTPCEMCal)) {\r
-       fTPCEMCal->Fill(pt);\r
+    if(fTPCEMCaldo) {\r
+      if(!fAODAnalysis) {\r
+       // Complete PID TPC TRD \r
+       if(fPIDTPCEMCal->IsSelected(&hfetrack,0x0,"recTrackCont",fPIDqaTPCEMCal)) {\r
+         fTPCEMCal->Fill(pt);\r
+       }\r
       }\r
     }\r
     AliDebug(2,"TPC EMCal PID\n");\r
index 7e0fde7324c0a6373424dec4e53562a5f8d82ada..5fafd70e34327af24a407f6a3be71bb2f7a39de5 100644 (file)
@@ -62,6 +62,10 @@ public:
   virtual void  UserExec(Option_t */*option*/);\r
   virtual void  UserCreateOutputObjects();\r
 \r
+  void SetDoTPConly(Bool_t tpconlydo)   { fTPConlydo = tpconlydo; };\r
+  void SetDoTOFTPC(Bool_t toftpcdo)   { fTOFTPCdo = toftpcdo; };\r
+  void SetDoTPCTRD(Bool_t tpctrddo)   { fTPCTRDdo = tpctrddo; };\r
+  void SetDoTPCEMCal(Bool_t tpcemcaldo)   { fTPCEMCaldo = tpcemcaldo; };\r
   void SetAODAnalysis(Bool_t aodAnalysis)   { fAODAnalysis = aodAnalysis; };\r
   void SetCentralityEstimator(const char *estimator) { fCentralityEstimator = estimator; }\r
   void SetppAnalysis(){\r
@@ -117,14 +121,20 @@ public:
   TH1F *fTOFTPC;                      // TOF TPC  electron yield\r
   TH1F *fTPCTRD;                      // TPC TRD  electron yield\r
   TH1F *fTPCEMCal;                      // TPC EMCal electron yield\r
\r
+\r
+  // Do PID or not\r
+  Bool_t fTPConlydo;                   // Do TPC only PID\r
+  Bool_t fTOFTPCdo;                    // Do TOF TPC \r
+  Bool_t fTPCTRDdo;                    // Do TPC TRD \r
+  Bool_t fTPCEMCaldo;                    // Do TPC EMCal \r
+\r
   \r
   // Debuging Cuts step by step all centrality together: pt, step (6)\r
   //THnSparseF *fTrackingCuts; //! Tracking Cuts\r
 \r
   \r
   \r
-  ClassDef(AliAnalysisTaskHFEQA, 1); // analysisclass\r
+  ClassDef(AliAnalysisTaskHFEQA, 2); // analysisclass\r
 };\r
 \r
 #endif\r
index 9c478f74a91903bde3a97413e4dab501eba89dba..ecbe5dabc6dfcec57961f9a3b93d8a561046a60b 100644 (file)
@@ -1,4 +1,4 @@
-AliAnalysisTask *AddTaskHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem = 2, Int_t icent = 2,Int_t debuglevel = 4){
+AliAnalysisTask *AddTaskHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem = 2, Int_t icent = 2,Int_t debuglevel = 4,Bool_t tpconlydo = kTRUE,Bool_t toftpcdo = kTRUE,Bool_t tpctrddo = kTRUE,Bool_t tpcemcaldo = kTRUE){
 
    // Name
   TString appendixx("HFEQA");
@@ -11,10 +11,14 @@ AliAnalysisTask *AddTaskHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem
   
   AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
   AliAnalysisDataContainer *cinput  = mgr->GetCommonInputContainer();
-  AliAnalysisTaskHFEQA *task = ConfigHFEQA(useMC,isAOD,icollisionsystem,icent);  
+  AliAnalysisTaskHFEQA *task = ConfigHFEQA(useMC,isAOD,icollisionsystem,icent,tpconlydo,toftpcdo,tpctrddo,tpcemcaldo);  
 
   mgr->AddTask(task);
   mgr->AddClassDebug("AliAnalysisTaskHFEQA",debuglevel);
+  mgr->AddClassDebug("AliHFEpid",debuglevel);
+  mgr->AddClassDebug("AliHFEpidTPC",debuglevel);
+  mgr->AddClassDebug("AliHFEpidTOF",debuglevel);
+  mgr->AddClassDebug("AliHFEpidTRD",debuglevel);
 
   TString containerName = mgr->GetCommonFileName();
   containerName += ":";
index 909aa5e50bc648934cc889497d1e7535c939db4b..49f123865293cb20db8155544ad715d6e544b0cb 100644 (file)
@@ -1,4 +1,4 @@
-AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem = 2, Int_t icent = 2){
+AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsystem = 2, Int_t icent = 2,Bool_t tpconlydo = kTRUE,Bool_t toftpcdo = kTRUE,Bool_t tpctrddo = kTRUE,Bool_t tpcemcaldo = kTRUE){
   
   //***************************************//
   //        Setting up the HFE cuts        //
@@ -33,13 +33,8 @@ AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsy
 
   AliAnalysisTaskHFEQA *task = new AliAnalysisTaskHFEQA("taskHFEQA");
   printf("task %p\n", task);
-  //task->SetpPbAnalysis();
-  //if(!isAOD) task->SetRemoveFirstEventInChunk();
-  //task->SetRemovePileUp(kFALSE);
   task->SetHFECuts(hfecuts);
-  //task->GetPIDQAManager()->SetHighResolutionHistos();
-  //task->SetRejectKinkMother(kFALSE);
-
+  
   // Collision system
   if (icollisionsystem == 2) task->SetPbPbAnalysis();
   else if (icollisionsystem == 1) task->SetpPbAnalysis();
@@ -57,6 +52,15 @@ AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsy
   //          Configure the PID            //
   //***************************************//
 
+  if(tpconlydo) task->SetDoTPConly(kTRUE);
+  if(toftpcdo) task->SetDoTOFTPC(kTRUE);
+  if(tpctrddo) task->SetDoTPCTRD(kTRUE);
+  if(tpcemcaldo) task->SetDoTPCEMCal(kTRUE);
+
+  AliHFEpid *pidTPConly = task->GetPIDTPConly();
+  if(useMC) pidTPConly->SetHasMCData(kTRUE);
+  pidTPConly->AddDetector("TPC", 0);
+
   AliHFEpid *pidTOFTPC = task->GetPIDTOFTPC();
   if(useMC) pidTOFTPC->SetHasMCData(kTRUE);
   pidTOFTPC->AddDetector("TOF", 0);
@@ -84,10 +88,12 @@ AliAnalysisTaskHFEQA* ConfigHFEQA(Bool_t useMC, Bool_t isAOD, Int_t icollisionsy
     Double_t tpcparamlowEMCal[1]={paramsTPCdEdxcutlowEMCal[a]};
     Double_t tpcparamlow[1]={paramsTPCdEdxcutlow[a]};
     Float_t tpcparamhigh=paramsTPCdEdxcuthigh[a];
+    pidTPConly->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
     pidTOFTPC->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
     pidTPCTRD->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlow,tpcparamhigh);
     pidTPCEMCal->ConfigureTPCcentralityCut(a,cutmodel,tpcparamlowEMCal,tpcparamhigh);
   }
+  pidTPConly->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]); 
   pidTOFTPC->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]); 
   pidTPCTRD->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlow,paramsTPCdEdxcuthigh[0]); 
   pidTPCEMCal->ConfigureTPCdefaultCut(cutmodel,paramsTPCdEdxcutlowEMCal,paramsTPCdEdxcuthigh[0]);