]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Added flag to disable vertex recalc for every track
authordainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 5 Nov 2010 23:28:50 +0000 (23:28 +0000)
committerdainese <dainese@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 5 Nov 2010 23:28:50 +0000 (23:28 +0000)
PWG1/ITS/AliAnalysisTaskSEImpParRes.cxx
PWG1/ITS/AliAnalysisTaskSEImpParRes.h
PWG1/macros/AddTaskImpParRes.C

index 5f622f8628b94da7cfcf1d9f28d259bbf8109537..7204b248b3478cc3a1b69653d6aac7d081ea66f3 100644 (file)
@@ -47,6 +47,7 @@ AliAnalysisTaskSE(),
 fReadMC(kFALSE),
 fSelectedPdg(-1),
 fUseDiamond(kFALSE),
+fSkipTrack(kTRUE),
 fOutputitspureSARec(0),
 fOutputitspureSASkip(0), 
 fOutputallPointRec(0),
@@ -94,6 +95,7 @@ AliAnalysisTaskSE(name),
 fReadMC(kFALSE),
 fSelectedPdg(-1),
 fUseDiamond(kFALSE),
+fSkipTrack(kTRUE),
 fOutputitspureSARec(0),
 fOutputitspureSASkip(0), 
 fOutputallPointRec(0),
@@ -1144,7 +1146,6 @@ void AliAnalysisTaskSEImpParRes::UserExec(Option_t */*option*/)
   Int_t nTrks = esd->GetNumberOfTracks();
   Bool_t highMult=(nTrks>500 ? kTRUE : kFALSE);
 
-
   
   // diamond constraint
   Float_t diamondcovxy[3];
@@ -1253,7 +1254,7 @@ void AliAnalysisTaskSEImpParRes::UserExec(Option_t */*option*/)
     skipped[0] = (Int_t)esdtrack->GetID();
     vertexer.SetSkipTracks(1,skipped);      
     // create vertex with new!
-    if(!highMult) {
+    if(!highMult && fSkipTrack) {
       vtxESDSkip = (AliESDVertex*)vertexer.FindPrimaryVertex(esd);
       if(vtxESDSkip->GetNContributors()<1) {
        delete vtxESDSkip; vtxESDSkip=NULL;
index 0a25c9793f284d43e9fe7e741eb01dd0b9031d8a..a16aecd0dcb106c69b5514347241db221b4a7ea0 100644 (file)
@@ -33,6 +33,7 @@ class AliAnalysisTaskSEImpParRes : public AliAnalysisTaskSE {
   void SetReadMC(Bool_t readMC) { fReadMC=readMC; return; }
   void SetSelectedPdg(Int_t pdg) { fSelectedPdg=pdg; return; }
   void SetUseDiamond(Bool_t use=kFALSE) { fUseDiamond=use; return; }
+  void SetSkipTrack(Bool_t skip=kFALSE) { fSkipTrack=skip; return; }
 
  private:
   
@@ -47,6 +48,7 @@ class AliAnalysisTaskSEImpParRes : public AliAnalysisTaskSE {
   Bool_t fReadMC;       // flag used to switch on/off MC reading
   Int_t  fSelectedPdg;  // only for a given particle species (-1 takes all tracks)
   Bool_t fUseDiamond;   // use diamond constraint in primary vertex
+  Bool_t fSkipTrack;    // redo primary vertex for each track
   TList *fOutputitspureSARec;  //! ITS StandAlone: with track in vtx 
   TList *fOutputitspureSASkip; //! ITS StandAlone: w/o track in vtx
   TList *fOutputallPointRec;   //! ITS+TPC: 6 ITScls, with track in vtx      
@@ -83,7 +85,7 @@ class AliAnalysisTaskSEImpParRes : public AliAnalysisTaskSE {
   TH1F  *fNentries;   //! histogram of number of events
   TH1F  *fEstimVtx;   //! vertex resolution
 
-  ClassDef(AliAnalysisTaskSEImpParRes,3); // AliAnalysisTaskSE for the study of the impact parameter resolution
+  ClassDef(AliAnalysisTaskSEImpParRes,4); // AliAnalysisTaskSE for the study of the impact parameter resolution
 };
 
 #endif
index 7711a5dca16c0cba7c9315bc81146261089e2952..306c6194fc635aefc0a5a7bf820ef6861645a7b3 100644 (file)
@@ -1,6 +1,7 @@
 AliAnalysisTaskSEImpParRes *AddTaskImpParRes(Bool_t readMC=kFALSE,
                                             Int_t selPdg=-1,
-                                            Bool_t diamond=kTRUE)
+                                            Bool_t diamond=kTRUE,
+                                            Bool_t skipTrack=kTRUE)
 {
   //
   // Configuration for the study of the impact parameter resolution
@@ -23,6 +24,7 @@ AliAnalysisTaskSEImpParRes *AddTaskImpParRes(Bool_t readMC=kFALSE,
   d0ResTask->SetReadMC(readMC);
   d0ResTask->SetSelectedPdg(selPdg);
   d0ResTask->SetUseDiamond(diamond);
+  d0ResTask->SetSkipTrack(skipTrack);
   mgr->AddTask(d0ResTask);
 
   TString fname=Form("%s:ImpParRes_Performance",mgr->GetCommonFileName());