]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/vertexingHF/AliAnalysisTaskSEDStarSpectra.h
Updates D* cuts for peripheral PbPb events
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliAnalysisTaskSEDStarSpectra.h
CommitLineData
63147a75 1#ifndef ALIANALYSISTASKSEDSTARSPECTRA_H
2#define ALIANALYSISTASKSEDSTARSPECTRA_H
3/**************************************************************************
4 * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5 * *
6 * Author: The ALICE Off-line Project. *
7 * Contributors are mentioned in the code where appropriate. *
8 * *
9 * Permission to use, copy, modify and distribute this software and its *
10 * documentation strictly for non-commercial purposes is hereby granted *
11 * without fee, provided that the above copyright notice appears in all *
12 * copies and that both the copyright notice and this permission notice *
13 * appear in the supporting documentation. The authors make no claims *
14 * about the suitability of this software for any purpose. It is *
15 * provided "as is" without express or implied warranty. *
16 **************************************************************************/
17
18/* $Id$ */
19
20#include <TH2F.h>
21#include "TROOT.h"
22#include "TSystem.h"
23#include <THnSparse.h>
24
25#include "AliAnalysisTaskSE.h"
26#include "AliAODEvent.h"
27#include "AliRDHFCutsDStartoKpipi.h"
28#include "AliNormalizationCounter.h"
29
30class AliAnalysisTaskSEDStarSpectra : public AliAnalysisTaskSE
31{
32
33 public:
34
35 AliAnalysisTaskSEDStarSpectra();
36 AliAnalysisTaskSEDStarSpectra(const Char_t* name,AliRDHFCutsDStartoKpipi* cuts);
37 virtual ~AliAnalysisTaskSEDStarSpectra();
38
39 // Implementation of interface methods
40 virtual void UserCreateOutputObjects();
41 virtual void Init();
42 virtual void LocalInit() {Init();}
43 virtual void UserExec(Option_t *option);
44 virtual void Terminate(Option_t *option);
45
46
47 //Background simulation
48 void SideBandBackground(AliAODRecoCascadeHF *part, AliRDHFCutsDStartoKpipi *cuts, Int_t isSel, TList *listout);
49 void WrongSignForDStar(AliAODRecoCascadeHF *part, AliRDHFCutsDStartoKpipi *cuts, TList *listout);
50 // histos
51 void FillSpectrum(AliAODRecoCascadeHF *part, Int_t isDStar, AliRDHFCutsDStartoKpipi *cuts, Int_t isSel, TList *listout);
52 void DefineHistograms();
53 Int_t CheckOrigin(TClonesArray* arrayMC, AliAODMCParticle *mcPartCandidate) const;
54 void CreateImpactParameterHistos();
55
56 // set analysis type
57 void SetAnalysisType(Int_t anaType) {fAnalysis = anaType;}
58 void PrintAnalysisType() {printf("Analysis type: %d\n(0: Heidelberg\t1: Utrecht)",fAnalysis);}
59 // set MC usage
60 void SetMC(Bool_t theMCon) {fUseMCInfo = theMCon;}
61 Bool_t GetMC() const {return fUseMCInfo;}
62 // set rare mesons
63 void SetRareSearch(Bool_t theRareOn) {fDoSearch = theRareOn;}
64 Bool_t GetRareSearch() const {return fDoSearch;}
65 //impact par study
66 void SetDoImpactParameterHistos(Bool_t doImp=kTRUE){fDoImpParDstar=doImp;}
67 Bool_t GetDoImpactParameterHistos(){return fDoImpParDstar;}
68
69 Float_t GetTrueImpactParameterD0(AliAODMCHeader *mcHeader, TClonesArray* arrayMC, AliAODMCParticle *partDp) const;
70
71 private:
72
73 AliAnalysisTaskSEDStarSpectra(const AliAnalysisTaskSEDStarSpectra &source);
74 AliAnalysisTaskSEDStarSpectra& operator=(const AliAnalysisTaskSEDStarSpectra& source);
75
76 Int_t fEvents; // n. of events
77 Int_t fAnalysis; // 0: HD; 1: UU;
78 Double_t fD0Window; // select width on D0Mass
79 Double_t fPeakWindow; // select width on DstarMass
80 Bool_t fUseMCInfo; // Use MC info
81 Bool_t fDoSearch; // Rare mesons
82 TList *fOutput; //! User output
83 TList *fOutputAll; //! User output2
84 TList *fOutputPID; //! User output3
85 Int_t fNSigma; // n sigma for kaon PID
86 AliRDHFCutsDStartoKpipi *fCuts; // Cuts - sent to output slot 3
87 // define the histograms
88 TH1F *fCEvents; //!
89 TH2F *fTrueDiff2; //!
90 TH1F *fDeltaMassD1; //!
91 AliNormalizationCounter *fCounter;//!Counter for normalization slot 4
92 Bool_t fDoImpParDstar; // imppar studies
93 Int_t fNImpParBins; // nunber of bins in impact parameter histos
94 Float_t fLowerImpPar; // lower limit in impact parameter (um)
95 Float_t fHigherImpPar; // higher limit in impact parameter (um)
96
97 THnSparseF *fHistMassPtImpParTCDs[5];//! histograms for impact paramter studies
98
99 ClassDef(AliAnalysisTaskSEDStarSpectra,9); // class for D* spectra
100};
101
102#endif
103