#ifndef ALIRSNCUTPIDTPC_H
#define ALIRSNCUTPIDTPC_H
#include "AliRsnCut.h"
class AliPID;
class AliESDpid;
class AliAODpidUtil;
class AliRsnCutPIDTPC : public AliRsnCut {
public:
AliRsnCutPIDTPC(const char *name = "cutTPC",
EPARTYPE type = AliPID::kKaon,
Double_t nSigmaMin = -3.,
Double_t nSigmaMax = 3.,
Bool_t rejectOutside = kTRUE);
AliRsnCutPIDTPC(const AliRsnCutPIDTPC ©);
AliRsnCutPIDTPC &operator=(const AliRsnCutPIDTPC ©);
virtual ~AliRsnCutPIDTPC() { }
AliESDpid *ESDpid() {return fESDpid;}
AliAODpidUtil *AODpid() {return fAODpid;}
void SetRejectOutside(Bool_t yn = kTRUE) {fRejectOutside = yn;}
void SetMomentumRange(Double_t min, Double_t max) {fMomMin = min; fMomMax = max;}
void SetNSigmaRange(Double_t min, Double_t max) {fMinD = min; fMaxD = max;}
void SetRefType(EPARTYPE type) {fRefType = type;}
void SetBBParam(const Double_t *p) {SetBBParam(p[0], p[1], p[2], p[3], p[4]);}
void SetBBParam(Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4);
virtual Bool_t IsSelected(TObject *object);
virtual void Print(const Option_t *option = "") const;
private:
Bool_t fRejectOutside;
Double_t fMomMin;
Double_t fMomMax;
EPARTYPE fRefType;
AliESDpid *fESDpid;
AliAODpidUtil *fAODpid;
Double_t fBB[5];
ClassDef(AliRsnCutPIDTPC, 1)
};
#endif