]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/AliHFEpidObject.h
Update of hfe code
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliHFEpidObject.h
CommitLineData
8c1c76e9 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// Object used in the electron identification
17// For more information see the implementation file
18//
19#ifndef ALIHFEPIDOBJECT_H
20#define ALIHFEPIDOBJECT_H
21
22#include <Rtypes.h>
23
e17c1f86 24class AliVTrack;
8c1c76e9 25class AliVParticle;
26
27class AliHFEpidObject{
28 public:
e17c1f86 29 enum AnalysisType_t{
8c1c76e9 30 kESDanalysis,
31 kAODanalysis
63896f74 32 };
8c1c76e9 33 AliHFEpidObject():
34 fkRecTrack(NULL),
35 fAnalysisType(kESDanalysis),
36 fAbInitioPID(-1),
37 fCentrality(99),
959ea9d8 38 fMultiplicity(0),
8c1c76e9 39 fIsPbPb(kFALSE) // Default: pp
40 {
41 }
42 AliHFEpidObject(const AliHFEpidObject &ref):
43 fkRecTrack(ref.fkRecTrack),
44 fAnalysisType(ref.fAnalysisType),
45 fAbInitioPID(ref.fAbInitioPID),
46 fCentrality(ref.fCentrality),
959ea9d8 47 fMultiplicity(ref.fMultiplicity),
8c1c76e9 48 fIsPbPb(ref.fIsPbPb)
49 {
50 }
51 AliHFEpidObject &operator=(const AliHFEpidObject &ref);
52 ~AliHFEpidObject(){};
53
e17c1f86 54 void SetRecTrack(const AliVTrack * recTrack) {fkRecTrack = recTrack; }
8c1c76e9 55 void SetMCTrack(const AliVParticle * mcTrack);
56 void SetAnalysisType(AnalysisType_t type) { fAnalysisType = type; }
57 void SetAbInitioPID(Int_t abInitioPID) { fAbInitioPID = abInitioPID; }
58 void SetCentrality(Int_t centrality) { fCentrality = centrality; }
959ea9d8 59 void SetMulitplicity(Double_t mult) { fMultiplicity = mult; }
8c1c76e9 60 void SetPbPb() { fIsPbPb = kTRUE; }
61 void SetPP() { fIsPbPb = kFALSE; }
62
e17c1f86 63 const AliVTrack *GetRecTrack() const { return fkRecTrack; }
8c1c76e9 64 Int_t GetAbInitioPID() const { return fAbInitioPID; }
65 Int_t GetCentrality() const { return fCentrality; }
959ea9d8 66 Double_t GetMultiplicity() const { return fMultiplicity; }
8c1c76e9 67 Bool_t IsAODanalysis() const { return fAnalysisType == static_cast<UChar_t>(kAODanalysis); }
68 Bool_t IsESDanalysis() const { return fAnalysisType == static_cast<UChar_t>(kESDanalysis); }
69 Bool_t IsPbPb() const { return fIsPbPb; }
70
71 private:
e17c1f86 72 const AliVTrack *fkRecTrack; // Reconstructed track
8c1c76e9 73 UChar_t fAnalysisType; // Analysis Mode (ESD or AOD)
74 Int_t fAbInitioPID; // AbInitio PID
75 Int_t fCentrality; // Centrality Information
959ea9d8 76 Double_t fMultiplicity; // Multiplicity information
8c1c76e9 77 Bool_t fIsPbPb; // Collision type
78};
79#endif
80