#ifndef ALIANALYSISTASKAFTERBURNER_H
#define ALIANALYSISTASKAFTERBURNER_H
class TH1F;
class TH2D;
class AliRDHFCuts;
class TVector2;
class AliHFAfterBurner : public TObject
{
public:
AliHFAfterBurner();
AliHFAfterBurner(Int_t decChannel);
virtual ~AliHFAfterBurner();
Double_t GetNewAngle(AliAODRecoDecayHF *d,TClonesArray *arrayMC);
Double_t NewtonMethodv2(Double_t phi,Double_t v2,Double_t phi0);
Double_t NewtonMethodv2(Double_t phi,Double_t v2){
return NewtonMethodv2(phi,v2,phi);}
void SetMCv2(Float_t v2sig,Float_t v2bkg);
Int_t CheckOrigin(const AliAODMCParticle* mcPart,TClonesArray *arrayMC) const;
Double_t GetPhi(Double_t phi,Float_t v2);
Float_t GetPhi02Pi(Float_t phi);
void SetPrecision(Bool_t prec){fPrecisionNewton=prec;}
void SetUseNewton(Bool_t newt){fUseNewton=newt;}
void SetDecChannel(Int_t decch);
void SetEventPlane(Double_t ep){fEventPlane=ep;}
void SetEventPlane();
void SetEventPlaneMethod(Int_t method);
Bool_t GetIsSignal() const {return fSignal;}
Double_t GetEventPlane() const {return fEventPlane;}
private:
AliHFAfterBurner(const AliHFAfterBurner &source);
AliHFAfterBurner& operator=(const AliHFAfterBurner& source);
Float_t fSigv2;
Float_t fBkgv2;
Bool_t fUseNewton;
Double_t fPrecisionNewton;
Int_t fDecChannel;
Bool_t fSignal;
Double_t fEventPlane;
Int_t fMethodEP;
ClassDef(AliHFAfterBurner,1);
};
#endif