]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGLF/STRANGENESS/Correlations/AliAnalysisTaskV0ChCorrelations.h
bin width was changed
[u/mrichter/AliRoot.git] / PWGLF / STRANGENESS / Correlations / AliAnalysisTaskV0ChCorrelations.h
index 08e2cc4c4f205b860704807162332a89d7e6bc27..677f2f4c008784124acd2b3cd828940f8a0c2382 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright(c) 1998-2012, ALICE Experiment at CERN, All rights reserved.  
+/* Copyright(c) 1998-2013, ALICE Experiment at CERN, All rights reserved.  
  * See cxx source for full Copyright notice  
  *
  * AliAnalysisTaskV0ChCorrelations class
@@ -6,7 +6,7 @@
  * The task selects candidates for K0s, Lambdas and AntiLambdas (trigger particles)
  * and calculates correlations with charged unidentified particles (associated particles) in phi and eta. 
  * The task works with AOD events only and containes also mixing for acceptance corrections.
- * Edited by Marek Bombara, last update October2012, Marek.Bombara@cern.ch
+ * Edited by Marek Bombara, last update January 2013, Marek.Bombara@cern.ch
  */
 
 #ifndef ALIANALYSISTASKV0CHCORRELATIONS_H
@@ -26,25 +26,48 @@ class AliEventPoolManager;
 
 class AliAnalysisTaskV0ChCorrelations : public AliAnalysisTaskSE {
 public:
-   AliAnalysisTaskV0ChCorrelations();
-   AliAnalysisTaskV0ChCorrelations(const char *name);
+   AliAnalysisTaskV0ChCorrelations(const char *name = "AliAnalysisTaskV0ChCorrelations");
+   //AliAnalysisTaskV0ChCorrelations(const AliAnalysisTaskV0ChCorrelations&);            //not implemented
+   //AliAnalysisTaskV0ChCorrelations& operator=(const AliAnalysisTaskV0ChCorrelations&); //not implemented 
    virtual ~AliAnalysisTaskV0ChCorrelations();
 
+   // Setting the global variables
+   void SetAnalysisMC(Bool_t AnalysisMC = kTRUE) {fAnalysisMC = AnalysisMC;}
+   void SetDcaDToPV(Float_t DcaDToPV = 0.1) {fDcaDToPV = DcaDToPV;}
+   void SetDcaV0D(Float_t DcaV0D = 1.0) {fDcaV0D = DcaV0D;}
+   void SetWithChCh(Bool_t WithChCh = kTRUE) {fWithChCh = WithChCh;}
+   void SetOStatus(Int_t OStatus = 1) {fOStatus = OStatus;}
+
+   // Getting the global variables
+   Float_t GetDcaDToPV() { return fDcaDToPV; }
+   Float_t GetDcaV0D() { return fDcaV0D; }
+   Bool_t GetWithChCh() { return fWithChCh; }
+   Int_t GetOStatus() { return fOStatus; }
+
    virtual void     UserCreateOutputObjects();
    virtual void     UserExec(Option_t *option);
    virtual void     Terminate(Option_t *);
 
    Bool_t IsMyGoodPrimaryTrack(const AliAODTrack* aodtrack);
    Bool_t IsMyGoodDaughterTrack(const AliAODTrack* aodtrack);
-   Bool_t IsMyGoodV0CutSet0(const AliAODEvent* aod, const AliAODv0* aodv0, const AliAODTrack* tr1, const AliAODTrack* tr2);
-   Bool_t IsMyGoodV0CutSet1(const AliAODEvent* aod, const AliAODv0* aodv0, const AliAODTrack* tr1, const AliAODTrack* tr2);
-   Bool_t IsMyGoodV0CutSet2(const AliAODEvent* aod, const AliAODv0* aodv0, const AliAODTrack* tr1, const AliAODTrack* tr2);
+   Bool_t IsMyGoodV0(const AliAODEvent* aod, const AliAODv0* aodv0, const AliAODTrack* tr1, const AliAODTrack* tr2, Int_t osta);
+   void RemovingInjectedSignal(TObjArray* tracks, TObject* mcObj, Int_t maxLabel);
 
 private:
+
+   AliAnalysisTaskV0ChCorrelations(const AliAnalysisTaskV0ChCorrelations&);            //not implemented
+   AliAnalysisTaskV0ChCorrelations& operator=(const AliAnalysisTaskV0ChCorrelations&); //not implemented 
+
+   Bool_t                 fAnalysisMC; // enable MC study
    Bool_t          fFillMixed;  // enable event mixing (default: ON)
    Int_t           fMixingTracks;      // size of track buffer for event mixing
    AliEventPoolManager*          fPoolMgr;         //! event pool manager
 
+   Float_t         fDcaDToPV;   // DCA of the daughter to primary vertex
+   Float_t         fDcaV0D;     // DCA between daughters
+   Bool_t          fWithChCh;   // Also do ChCh correlations - for the cross-check
+   Int_t           fOStatus;   // checks for online and offline V0s 
+
    TList           *fOutput;        // Output list
    AliPIDResponse  *fPIDResponse;   // PID response
 
@@ -57,10 +80,16 @@ private:
    
    THnSparseF     *fHistdPhidEtaSib;   // dPhi vs. dEta, same event
    THnSparseF     *fHistdPhidEtaMix;   // dPhi vs. dEta, mixed events
-   THnSparseF     *fHistTrigSib;   // pt of trigger particles, same event
-   THnSparseF     *fHistTrigMix;   // pt of trigger particles involved in mixing
+   THnSparseF     *fHistNTrigSib;   // pt of trigger particles, same event
 
+   THnSparseF    *fHistMCPtCentTrig;   // pt vs. centrality of MC trigger particles
+   THnSparseF    *fHistRCPtCentTrig;   // pt vs. centrality of reconstructed trigger particles
+   TH2D                   *fHistMCPtCentAs;   // pt vs. centrality of MC associated particles
+   TH2D                   *fHistRCPtCentAs;   // pt vs. centrality of reconstructed associated particles
+   TH2D                   *fHistRCPtCentAll;   // pt vs. centrality of reconstructed all primary+secondary particles
+   
    TH1D                           *fHistTemp;   // temporary histogram for debugging
+   TH1D                           *fHistTemp2;   // temporary histogram for debugging
 
    ClassDef(AliAnalysisTaskV0ChCorrelations, 1); // class for V0Ch correlation analysis
 };