]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG3/vertexingHF/AliAnalysisTaskSED0Mass.h
Protections in Terminate
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliAnalysisTaskSED0Mass.h
CommitLineData
49061176 1#ifndef ALIANALYSISTASKSED0MASS_H
2#define ALIANALYSISTASKSED0MASS_H
3
4/* Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7//*************************************************************************
8// Class AliAnalysisTaskSED0Mass
9// AliAnalysisTaskSE for D0 candidates invariant mass histogram
a41f6fad 10// and comparison to MC truth (kinematics stored in the AOD) and cut variables
11// distributions
49061176 12// Authors: A.Dainese, andrea.dainese@ln.infn.it
13// and C.Bianchin, chiara.bianchin@pd.infn.it
14//*************************************************************************
15
16#include <TROOT.h>
17#include <TSystem.h>
18#include <TNtuple.h>
19#include <TH1F.h>
20
21#include "AliAnalysisTaskSE.h"
22#include "AliAnalysisVertexingHF.h"
23
24class AliAnalysisTaskSED0Mass : public AliAnalysisTaskSE
25{
26 public:
27
28 AliAnalysisTaskSED0Mass();
29 AliAnalysisTaskSED0Mass(const char *name);
30 virtual ~AliAnalysisTaskSED0Mass();
31
32
33 // Implementation of interface methods
34 virtual void UserCreateOutputObjects();
35 virtual void Init();
36 virtual void LocalInit() {Init();}
37 virtual void UserExec(Option_t *option);
38 virtual void Terminate(Option_t *option);
39
feb73eca 40 void SetArray(Int_t type=AliAnalysisTaskSED0Mass::kD0){fArray=type;}
feb73eca 41 enum{kD0,kLS};
ce39f0ac 42
43 void SetReadMC(Bool_t readMC=kFALSE){fReadMC=readMC;}
40445ada 44 void SetCutOnDistr(Int_t cutondistr=0){fCutOnDistr=cutondistr;}
ce39f0ac 45
49061176 46 private:
47
48 AliAnalysisTaskSED0Mass(const AliAnalysisTaskSED0Mass &source);
49 AliAnalysisTaskSED0Mass& operator=(const AliAnalysisTaskSED0Mass& source);
40445ada 50 void FillMassHists(Int_t ptbin, AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAnalysisVertexingHF *vhf, TList *listout);
51 void FillVarHists(Int_t ptbin, AliAODRecoDecayHF2Prong *part, TClonesArray *arrMC, AliAnalysisVertexingHF *vhf, TList *listout);
9de8c723 52 TList *fOutputPPR; //! list send on output slot 1
527f330b 53 TList *fOutputmycuts; //! list send on output slot 2
feb73eca 54 TH1F *fNentries; //! histogram with number of events on output slot 3
34137226 55 TList *fDistr; //! list send on output slot 4
56 TList *fChecks; //! list send on output slot 5
9de8c723 57 AliAnalysisVertexingHF *fVHFPPR; // Vertexer heavy flavour (used to pass the cuts)
527f330b 58 AliAnalysisVertexingHF *fVHFmycuts; // Vertexer heavy flavour (used to pass the cuts)
9de8c723 59 Int_t fArray; // can be D0 or Like Sign candidates
ce39f0ac 60 Bool_t fReadMC; // flag for MC array: kTRUE = read it, kFALSE = do not read it
40445ada 61 Int_t fCutOnDistr; // Flag to decide if apply cut also on distributions: 0 no cuts, 1 looser cuts, 2 tighter cuts
feb73eca 62
63 Int_t fTotPosPairs[5]; //
64 Int_t fTotNegPairs[5]; //
9de8c723 65 Double_t fLsNormalization; // normalization
feb73eca 66
67
40445ada 68 ClassDef(AliAnalysisTaskSED0Mass,6); // AliAnalysisTaskSE for the MC association of heavy-flavour decay candidates
49061176 69};
70
71#endif