]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/hfe/AliAnalysisTaskCheckV0tender.h
05de205684ac84df90e0053ab578dfe0bce320cc
[u/mrichter/AliRoot.git] / PWG3 / hfe / AliAnalysisTaskCheckV0tender.h
1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 *                                                                        *
4 * Author: The ALICE Off-line Project.                                    *
5 * Contributors are mentioned in the code where appropriate.              *
6 *                                                                        *
7 * Permission to use, copy, modify and distribute this software and its   *
8 * documentation strictly for non-commercial purposes is hereby granted   *
9 * without fee, provided that the above copyright notice appears in all   *
10 * copies and that both the copyright notice and this permission notice   *
11 * appear in the supporting documentation. The authors make no claims     *
12 * about the suitability of this software for any purpose. It is          *
13 * provided "as is" without express or implied warranty.                  *
14 **************************************************************************/
15 //
16 // Task for PID QA
17 // Using AliHFEpidQA and AliHFEMCpidQA
18 // More information can be found in the source file
19 //
20 #ifndef ALIANALYSISTASKCHECKV0TENDER_H
21 #define ALIANALYSISTASKCHECKV0TENDER_H
22
23 #ifndef ALIANALYSISTASKSE_H
24 #include "AliAnalysisTaskSE.h"
25 #endif
26
27 class TH1F;
28 class TList;
29 class AliHFEcollection;
30
31 class AliAnalysisTaskCheckV0tender : public AliAnalysisTaskSE{
32  public:
33    enum{ // Reconstructed V0
34       kRecoGamma = 0,
35       kRecoK0 = 1,
36       kRecoLambda = 2,
37       kRecoALambda = 3
38       
39       };
40   enum{ // Identified Daughter particles
41     kRecoElectron = 0,
42       kRecoPionK0 = 1,
43       kRecoPionL = 2,
44       kRecoProton = 3
45       };
46
47   AliAnalysisTaskCheckV0tender();
48   AliAnalysisTaskCheckV0tender(const Char_t *name);
49   ~AliAnalysisTaskCheckV0tender();
50   
51   virtual void UserCreateOutputObjects();
52   virtual void UserExec(Option_t *);
53   virtual void Terminate(Option_t *);
54  
55   
56   void ProcessV0s();
57   void ProcessDaughters();
58   void ProcessV0sMC();
59   void ProcessDaughtersMC();
60
61   Int_t GetTenderPidV0(AliESDv0 * const v0);
62   Int_t GetTenderPidDaughter(AliESDtrack * const track);
63
64  private:
65   AliAnalysisTaskCheckV0tender(const AliAnalysisTaskCheckV0tender &ref);
66   AliAnalysisTaskCheckV0tender &operator=(const AliAnalysisTaskCheckV0tender &ref);
67
68   Float_t MassV0(AliESDv0 * const v0, Int_t id);
69   Bool_t CheckSigns(AliESDv0 * const v0);
70   TList *fOutput;            //! Container for output histos
71   AliHFEcollection *fColl;   //! collection of Data output
72   AliHFEcollection *fCollMC; //! collection of MC output
73   TH1 *fEvents;              //! Number of Events
74   ClassDef(AliAnalysisTaskCheckV0tender, 1)
75
76 };
77
78 #endif