]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/EBYE/PIDFluctuation/task/AliEbyEPidRatioEffContExtra.h
Update in pr task:sjena
[u/mrichter/AliRoot.git] / PWGCF / EBYE / PIDFluctuation / task / AliEbyEPidRatioEffContExtra.h
CommitLineData
5f071dcf 1#ifndef ALIEBYEPIDRSTIOEFFCONTEXTRA_H
2#define ALIEBYEPIDRSTIOEFFCONTEXTRA_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7//=========================================================================//
8// AliEbyE Analysis for Particle Ratio Fluctuation //
9// Deepika Rathee | Satyajit Jena //
10// drathee@cern.ch | sjena@cern.ch //
11// Date: Wed Jul 9 18:38:30 CEST 2014 //
12// New approch to find particle ratio to reduce memory //
13// (Test Only) //
df4f740f 14// Copied from NetParticle Classes
15// Origin: Authors: Jochen Thaeder <jochen@thaeder.de>
16// Michael Weber <m.weber@cern.ch>
5f071dcf 17//=========================================================================//
18
19
20class AliVTrack;
21
22#include "THnSparse.h"
23
24#include "AliEbyEPidRatioBase.h"
25
26class AliEbyEPidRatioEffContExtra: public AliEbyEPidRatioBase {
27
28 public:
29
30 AliEbyEPidRatioEffContExtra();
31 virtual ~AliEbyEPidRatioEffContExtra();
32
33 virtual void Process();
34
d61393df 35 THnSparseF* GetHnEff(Int_t i, Int_t type) {
5f071dcf 36 if (i == 0) {
37 if (type == 0) return fHnNchEMc;
38 else if (type == 1) return fHnNchERec;
39 else if (type == 2) return fHnNchCMc;
d61393df 40 else if (type == 3) return fHnNchCRec;
5f071dcf 41 } else if (i == 1) {
42 if (type == 0) return fHnNpiEMc;
43 else if (type == 1) return fHnNpiERec;
44 else if (type == 2) return fHnNpiCMc;
d61393df 45 else if (type == 3) return fHnNpiCRec;
5f071dcf 46 } else if (i == 2) {
47 if (type == 0) return fHnNkaEMc;
48 else if (type == 1) return fHnNkaERec;
49 else if (type == 2) return fHnNkaCMc;
d61393df 50 else if (type == 3) return fHnNkaCRec;
5f071dcf 51 } else if (i == 3) {
52 if (type == 0) return fHnNprEMc;
53 else if (type == 1) return fHnNprERec;
54 else if (type == 2) return fHnNprCMc;
d61393df 55 else if (type == 3) return fHnNprCRec;
5f071dcf 56 }
57 return 0;
58 }
59
60 private:
61
62 AliEbyEPidRatioEffContExtra(const AliEbyEPidRatioEffContExtra&); // not implemented
63 AliEbyEPidRatioEffContExtra& operator=(const AliEbyEPidRatioEffContExtra&); // not implemented
64
65 virtual void Init();
66
5f071dcf 67 virtual void CreateHistograms();
5f071dcf 68 virtual void Reset();
5f071dcf 69 virtual Int_t Setup();
5f071dcf 70 void FillMCLabels(Int_t ipid);
5f071dcf 71 void FillMCEffHist(Int_t ipid);
5f071dcf 72 void CheckContTrack(AliVTrack* track, Int_t ipid);
73
d61393df 74
5f071dcf 75 Int_t ***fLabelsRec; //! 2x nTracks large array with labels for MC particles
d61393df 76
5f071dcf 77
78 THnSparseF *fHnNchEMc; // THnSparseF efficiency
79 THnSparseF *fHnNchERec; // THnSparseF efficiency
80
81 THnSparseF *fHnNpiEMc; // THnSparseF efficiency
82 THnSparseF *fHnNpiERec; // THnSparseF efficiency
83
84 THnSparseF *fHnNkaEMc; // THnSparseF efficiency
85 THnSparseF *fHnNkaERec; // THnSparseF efficiency
86
87 THnSparseF *fHnNprEMc; // THnSparseF efficiency
88 THnSparseF *fHnNprERec; // THnSparseF efficiency
89
90 THnSparseF *fHnNchCMc; // THnSparseF efficiency
91 THnSparseF *fHnNchCRec; // THnSparseF efficiency
92
93 THnSparseF *fHnNpiCMc; // THnSparseF efficiency
94 THnSparseF *fHnNpiCRec; // THnSparseF efficiency
95
96 THnSparseF *fHnNkaCMc; // THnSparseF efficiency
97 THnSparseF *fHnNkaCRec; // THnSparseF efficiency
98
99 THnSparseF *fHnNprCMc; // THnSparseF efficiency
100 THnSparseF *fHnNprCRec; // THnSparseF efficiency
101
102 // -----------------------------------------------------------------------
103
104 ClassDef(AliEbyEPidRatioEffContExtra, 1);
105};
106
107#endif