]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGUD/UPC/AliUpcParticle.h
reassign soft e label to its parent only for secondaries below 1 Mev kin.energy
[u/mrichter/AliRoot.git] / PWGUD / UPC / AliUpcParticle.h
1 #ifndef AliUpcParticle_h
2 #define AliUpcParticle_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 upc tree
8 // evgeny.kryshen@cern.ch
9
10
11 #include "AliVParticle.h"
12 #include "AliLog.h"
13 #include "TArrayF.h"
14
15 class AliUpcParticle : public AliVParticle, public TArrayF {
16  public:
17   AliUpcParticle():AliVParticle(),TArrayF(),fPt(0),fEta(0),fPhi(0),fCharge(0),fMask(0)
18   {
19   }
20   AliUpcParticle(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 ~AliUpcParticle(){}
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 SetPhi(Double_t phi) { fPhi = phi; }
56  protected:
57   Float_t fPt;
58   Float_t fEta;
59   Float_t fPhi;
60   Short_t fCharge;
61   UInt_t  fMask;     // Filter bit mask
62   ClassDef(AliUpcParticle,1);
63 };
64
65 #endif
66