#ifndef ALICASCADEVERTEXER_H
#define ALICASCADEVERTEXER_H
#include "TObject.h"
class AliESDEvent;
class AliESDv0;
class AliExternalTrackParam;
class AliCascadeVertexer : public TObject {
public:
AliCascadeVertexer();
void SetCuts(const Double_t cuts[8]);
static void SetDefaultCuts(const Double_t cuts[8]);
Int_t V0sTracks2CascadeVertices(AliESDEvent *event);
Double_t Det(Double_t a00, Double_t a01, Double_t a10, Double_t a11) const;
Double_t Det(Double_t a00,Double_t a01,Double_t a02,
Double_t a10,Double_t a11,Double_t a12,
Double_t a20,Double_t a21,Double_t a22) const;
Double_t PropagateToDCA(AliESDv0 *vtx,AliExternalTrackParam *trk,Double_t b);
void GetCuts(Double_t cuts[8]) const;
static void GetDefaultCuts(Double_t cuts[8]);
private:
static
Double_t fgChi2max;
static
Double_t fgDV0min;
static
Double_t fgMassWin;
static
Double_t fgDBachMin;
static
Double_t fgDCAmax;
static
Double_t fgCPAmin;
static
Double_t fgRmin, fgRmax;
Double_t fChi2max;
Double_t fDV0min;
Double_t fMassWin;
Double_t fDBachMin;
Double_t fDCAmax;
Double_t fCPAmin;
Double_t fRmin, fRmax;
ClassDef(AliCascadeVertexer,3)
};
inline AliCascadeVertexer::AliCascadeVertexer() :
TObject(),
fChi2max(fgChi2max),
fDV0min(fgDV0min),
fMassWin(fgMassWin),
fDBachMin(fgDBachMin),
fDCAmax(fgDCAmax),
fCPAmin(fgCPAmin),
fRmin(fgRmin),
fRmax(fgRmax)
{
}
inline void AliCascadeVertexer::SetCuts(const Double_t cuts[8]) {
fChi2max=cuts[0];
fDV0min=cuts[1]; fMassWin=cuts[2]; fDBachMin=cuts[3];
fDCAmax=cuts[4]; fCPAmin=cuts[5];
fRmin=cuts[6]; fRmax=cuts[7];
}
inline void AliCascadeVertexer::SetDefaultCuts(const Double_t cuts[8]) {
fgChi2max=cuts[0];
fgDV0min=cuts[1]; fgMassWin=cuts[2]; fgDBachMin=cuts[3];
fgDCAmax=cuts[4]; fgCPAmin=cuts[5];
fgRmin=cuts[6]; fgRmax=cuts[7];
}
inline void AliCascadeVertexer::GetCuts(Double_t cuts[8]) const {
cuts[0]=fChi2max;
cuts[1]=fDV0min; cuts[2]=fMassWin; cuts[3]=fDBachMin;
cuts[4]=fDCAmax; cuts[5]=fCPAmin;
cuts[6]=fRmin; cuts[7]=fRmax;
}
inline void AliCascadeVertexer::GetDefaultCuts(Double_t cuts[8]) {
cuts[0]=fgChi2max;
cuts[1]=fgDV0min; cuts[2]=fgMassWin; cuts[3]=fgDBachMin;
cuts[4]=fgDCAmax; cuts[5]=fgCPAmin;
cuts[6]=fgRmin; cuts[7]=fgRmax;
}
#endif