Cleanup the code. Fix memory leak. Now inherit from AliAnalysisTaskSE (Antoine, Phili...
[u/mrichter/AliRoot.git] / PWG3 / hfe / AliHFEV0pidMC.h
1 #ifndef ALIHFEV0PIDMC_H
2 #define ALIHFEV0PIDMC_H
3
4 /**************************************************************************
5 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 *                                                                        *
7 * Author: The ALICE Off-line Project.                                    *
8 * Contributors are mentioned in the code where appropriate.              *
9 *                                                                        *
10 * Permission to use, copy, modify and distribute this software and its   *
11 * documentation strictly for non-commercial purposes is hereby granted   *
12 * without fee, provided that the above copyright notice appears in all   *
13 * copies and that both the copyright notice and this permission notice   *
14 * appear in the supporting documentation. The authors make no claims     *
15 * about the suitability of this software for any purpose. It is          *
16 * provided "as is" without express or implied warranty.                  *
17 **************************************************************************/
18
19 /* $Id$ */ 
20
21 //
22 // Benchmarking class for V0 finder and PID. 
23 // Relies on MC information
24 // For more see source file
25 //
26
27 #ifndef ROOT_TObject
28 #include <TObject.h>
29 #endif
30
31 class TList;
32
33 class AliMCEvent;
34
35 class AliHFEV0cuts;
36 class AliHFEcollection;
37
38 class AliHFEV0pidMC : public TObject {
39
40  public:
41   AliHFEV0pidMC();
42   ~AliHFEV0pidMC();
43   
44   void    Init();
45   Bool_t  Process(TObjArray * const array, Int_t type);  
46
47   void     SetMCEvent(AliMCEvent * const mc) { fMC = mc; };
48
49   inline TList* GetListOfQAhistograms();
50
51  private:
52   AliHFEV0pidMC(const AliHFEV0pidMC &);
53   AliHFEV0pidMC &operator=(const AliHFEV0pidMC &);
54   Int_t PDGtoPIDdaughter(Int_t pdg) const;    // convert the PDG code to local PID
55   Int_t PDGtoPIDmother(Int_t pdg) const;      // convert the PDG code to local PID
56   Int_t PDGtoAliPID(Int_t pdg) const;         // convert PDG to AliPID
57
58   AliMCEvent*         fMC;      // MC event
59   AliHFEcollection*   fColl;    // Histogram collection
60   AliHFEV0cuts*       fV0cuts;  // V0 cut class
61
62    ClassDef(AliHFEV0pidMC, 1)   // QA class for V0 PID
63 };
64 //____________________________________________________________
65 TList *AliHFEV0pidMC::GetListOfQAhistograms(){
66   //
67   // Get QA histograms
68   //
69   if(fColl)
70     return fColl->GetList();
71   return NULL;
72 }
73 #endif