]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - CORRFW/AliCFPair.h
Fix overlapping symbol names between geant3 and ampt
[u/mrichter/AliRoot.git] / CORRFW / AliCFPair.h
index 9e37d80160535d0ea4587f91ee6103a2538b5d3b..84da24d6488f0cd5e99c06b5e9980a3f6cd24096 100755 (executable)
 class AliESDtrack ;
 class AliESDv0;
 class AliESDEvent;
+class AliAODv0;
 
 class AliCFPair : public AliVParticle {
 
  public:
-  AliCFPair(AliESDtrack* t1, AliESDtrack* t2);
+  AliCFPair(AliVParticle* t1, AliVParticle* t2);
   AliCFPair(AliESDv0* v0, AliESDEvent* esd);
+  AliCFPair(AliAODv0* v0);
   AliCFPair(const AliCFPair& c);
   AliCFPair& operator=(const AliCFPair& c);
   virtual ~AliCFPair(){};
 
-  AliESDtrack* GetNeg() const {return fTrackNeg;}
-  AliESDtrack* GetPos() const {return fTrackPos;}
-  AliESDv0*    GetV0()  const {return fV0;}
+  AliVParticle* GetNeg() const {return fTrackNeg;}
+  AliVParticle* GetPos() const {return fTrackPos;}
+  AliESDv0*    GetESDV0()  const {return fESDV0;}
+  AliAODv0*    GetAODV0()  const {return fAODV0;}
+  void         SetV0PDG(Int_t pdg) {fV0PDG=pdg;}
   virtual Bool_t       PxPyPz(Double_t p[3]) const ;
   virtual Double32_t   P()  const ;
   virtual Double32_t   Pt() const ;
@@ -64,16 +68,23 @@ class AliCFPair : public AliVParticle {
   virtual Double32_t Eta() const ;
   virtual Double32_t Y() const ;
   virtual Short_t    Charge() const {return 0;} // returns 0 because opposite charge tracks... maybe to extend to all kinds of pairs
-
+  virtual Int_t      GetLabel() const {return fLabel;}
+  virtual void       SetLabel(Int_t label) {fLabel=label;}
+  virtual void       SetMassHypothesis(Double_t massNeg, Double_t massPos) {fMassNeg=massNeg;fMassPos=massPos;}
   // PID
   virtual const Double_t *PID() const {return 0;} // return PID object (to be defined, still)
-
+  virtual Int_t PdgCode() const {return 0;}
 
  private:
-  Bool_t fIsV0;            //! true if V0 passed to the constructor
-  AliESDtrack* fTrackNeg;  //! pointer to the negative track
-  AliESDtrack* fTrackPos;  //! pointer to the positive track
-  AliESDv0*    fV0;        //! pointer to the V0 if V0 is passed to the constructor
+  Bool_t fIsV0;            // true if V0 passed to the constructor
+  AliVParticle* fTrackNeg; // pointer to the negative track 
+  AliVParticle* fTrackPos; // pointer to the positive track 
+  AliESDv0*    fESDV0;     // pointer to the ESD V0 if AliESDv0 is passed to the constructor
+  AliAODv0*    fAODV0;     // pointer to the AOD V0 if AliAODv0 is passed to the constructor
+  Int_t        fLabel;     // associated MC label
+  Int_t        fV0PDG;     // assumed V0 PDG
+  Double_t     fMassNeg;
+  Double_t     fMassPos;
   
   ClassDef(AliCFPair,0);
 };