]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/AliHFEpidObject.h
Transition PWG3 --> PWGHF
[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
24class AliVParticle;
25
26class AliHFEpidObject{
27 public:
63896f74 28 enum AnalysisType_t {
8c1c76e9 29 kESDanalysis,
30 kAODanalysis
63896f74 31 };
8c1c76e9 32 AliHFEpidObject():
33 fkRecTrack(NULL),
34 fAnalysisType(kESDanalysis),
35 fAbInitioPID(-1),
36 fCentrality(99),
37 fIsPbPb(kFALSE) // Default: pp
38 {
39 }
40 AliHFEpidObject(const AliHFEpidObject &ref):
41 fkRecTrack(ref.fkRecTrack),
42 fAnalysisType(ref.fAnalysisType),
43 fAbInitioPID(ref.fAbInitioPID),
44 fCentrality(ref.fCentrality),
45 fIsPbPb(ref.fIsPbPb)
46 {
47 }
48 AliHFEpidObject &operator=(const AliHFEpidObject &ref);
49 ~AliHFEpidObject(){};
50
51 void SetRecTrack(const AliVParticle * recTrack) {fkRecTrack = recTrack; }
52 void SetMCTrack(const AliVParticle * mcTrack);
53 void SetAnalysisType(AnalysisType_t type) { fAnalysisType = type; }
54 void SetAbInitioPID(Int_t abInitioPID) { fAbInitioPID = abInitioPID; }
55 void SetCentrality(Int_t centrality) { fCentrality = centrality; }
56 void SetPbPb() { fIsPbPb = kTRUE; }
57 void SetPP() { fIsPbPb = kFALSE; }
58
59 const AliVParticle *GetRecTrack() const { return fkRecTrack; }
60 Int_t GetAbInitioPID() const { return fAbInitioPID; }
61 Int_t GetCentrality() const { return fCentrality; }
62 Bool_t IsAODanalysis() const { return fAnalysisType == static_cast<UChar_t>(kAODanalysis); }
63 Bool_t IsESDanalysis() const { return fAnalysisType == static_cast<UChar_t>(kESDanalysis); }
64 Bool_t IsPbPb() const { return fIsPbPb; }
65
66 private:
67 const AliVParticle *fkRecTrack; // Reconstructed track
68 UChar_t fAnalysisType; // Analysis Mode (ESD or AOD)
69 Int_t fAbInitioPID; // AbInitio PID
70 Int_t fCentrality; // Centrality Information
71 Bool_t fIsPbPb; // Collision type
72};
73#endif
74