]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/Correlations/Base/AliCFParticle.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / Correlations / Base / AliCFParticle.h
1 #ifndef AliCFParticle_h
2 #define AliCFParticle_h
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 // Class to store basic track parameters in the tree
8 // evgeny.kryshen@cern.ch
9
10
11 #include "AliVParticle.h"
12 #include "AliLog.h"
13 #include "TArrayF.h"
14
15 class AliCFParticle : public AliVParticle, public TArrayF {
16  public:
17   AliCFParticle():AliVParticle(),TArrayF(),fPt(0),fEta(0),fPhi(0),fCharge(0),fMask(0)
18   {
19   }
20   AliCFParticle(Float_t pt, Float_t eta, Float_t phi, Short_t charge, UInt_t mask,UInt_t nData=0)
21   :AliVParticle(),TArrayF(nData),fPt(pt),fEta(eta),fPhi(phi),fCharge(charge),fMask(mask)
22   {
23   }
24   virtual ~AliCFParticle(){}
25
26   virtual Double_t Pt()    const { return fPt;      }
27   virtual Double_t Phi()   const { return fPhi;     }
28   virtual Double_t Eta()   const { return fEta;     }
29   virtual Short_t Charge() const { return fCharge;  }
30   virtual UInt_t Mask()    const { return fMask;    }
31   
32   virtual Double_t Px() const { AliFatal("Not implemented"); return 0; }
33   virtual Double_t Py() const { AliFatal("Not implemented"); return 0; }
34   virtual Double_t Pz() const { AliFatal("Not implemented"); return 0; }
35   virtual Double_t P()  const { AliFatal("Not implemented"); return 0; }
36   virtual Bool_t   PxPyPz(Double_t[3]) const { AliFatal("Not implemented"); return 0; }
37
38   virtual Double_t Xv() const { AliFatal("Not implemented"); return 0; }
39   virtual Double_t Yv() const { AliFatal("Not implemented"); return 0; }
40   virtual Double_t Zv() const { AliFatal("Not implemented"); return 0; }
41   virtual Bool_t   XvYvZv(Double_t[3]) const { AliFatal("Not implemented"); return 0; }
42
43   virtual Double_t OneOverPt()  const { AliFatal("Not implemented"); return 0; }
44   virtual Double_t Theta()      const { AliFatal("Not implemented"); return 0; }
45   virtual Double_t E()          const { AliFatal("Not implemented"); return 0; }
46   virtual Double_t M()          const { AliFatal("Not implemented"); return 0; }
47   virtual Double_t Y()          const { AliFatal("Not implemented"); return 0; }
48   virtual Int_t   GetLabel()    const { AliFatal("Not implemented"); return 0; }
49   
50   virtual Int_t   PdgCode()     const { AliFatal("Not implemented"); return 0; }
51   virtual const Double_t *PID() const { AliFatal("Not implemented"); return 0; }
52
53   virtual Bool_t IsEqual(const TObject* obj) const { return (obj->GetUniqueID() == GetUniqueID()); }
54
55   virtual void SetPt(Double_t pt)        { fPt     = pt;     }
56   virtual void SetEta(Double_t eta)      { fEta    = eta;    }
57   virtual void SetPhi(Double_t phi)      { fPhi    = phi;    }
58   virtual void SetCharge(Short_t charge) { fCharge = charge; }
59   virtual void SetMask(Short_t mask)     { fMask   = mask;   }
60  protected:
61   Float_t fPt;
62   Float_t fEta;
63   Float_t fPhi;
64   Short_t fCharge;
65   UInt_t  fMask;     // Filter bit mask
66   ClassDef(AliCFParticle,2);
67 };
68
69 #endif
70