X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=STEER%2FSTEERBase%2FAliPIDResponse.h;h=d71573056430cc0ac72e2c70af187cbfe8210f03;hp=e1a8306fe3e989cfb801a6ed410a1cb2ceb8793e;hb=db0e2c5f7ecb63300fd90881a5a3969dfc91d2aa;hpb=80f28562eff49bb578ec7e4b736e3c031a7fab2d diff --git a/STEER/STEERBase/AliPIDResponse.h b/STEER/STEERBase/AliPIDResponse.h index e1a8306fe3e..d7157305643 100644 --- a/STEER/STEERBase/AliPIDResponse.h +++ b/STEER/STEERBase/AliPIDResponse.h @@ -17,6 +17,7 @@ #include "AliTOFPIDResponse.h" #include "AliEMCALPIDResponse.h" + #include "AliVParticle.h" #include "AliVTrack.h" @@ -24,6 +25,7 @@ class AliVEvent; class TF1; +class AliTRDPIDResponseObject; class AliPIDResponse : public TNamed { public: @@ -61,6 +63,7 @@ public: virtual Float_t NumberOfSigmasITS(const AliVParticle *track, AliPID::EParticleType type) const; virtual Float_t NumberOfSigmasTPC(const AliVParticle *track, AliPID::EParticleType type) const; virtual Float_t NumberOfSigmasEMCAL(const AliVTrack *track, AliPID::EParticleType type) const; + virtual Float_t NumberOfSigmasEMCAL(const AliVTrack *track, AliPID::EParticleType type, Double_t &eop, Double_t showershape[4]) const; virtual Float_t NumberOfSigmasTOF(const AliVParticle *track, AliPID::EParticleType type) const = 0; virtual Bool_t IdentifiedAsElectronTRD(const AliVTrack *track, Double_t efficiencyLevel) const; @@ -76,7 +79,6 @@ public: void SetITSPIDmethod(ITSPIDmethod pmeth) { fITSPIDmethod = pmeth; } - virtual void SetTOFResponse(AliVEvent */*event*/,EStartTimeType_t /*option*/) {;} void SetTRDslicesForPID(UInt_t slice1, UInt_t slice2) {fTRDslicesForPID[0]=slice1;fTRDslicesForPID[1]=slice2;} void SetOADBPath(const char* path) {fOADBPath=path;} @@ -93,6 +95,10 @@ public: // event info Float_t GetCurrentCentrality() const {return fCurrCentrality;}; + // TOF setting + void SetTOFtail(Float_t tail=1.1){if(tail > 0) fTOFtail=tail; else printf("TOF tail should be greater than 0 (nothing done)\n");}; + void SetTOFResponse(AliVEvent *vevent,EStartTimeType_t option); + AliPIDResponse(const AliPIDResponse &other); AliPIDResponse& operator=(const AliPIDResponse &other); @@ -125,12 +131,11 @@ private: TObjArray *fArrPidResponseMaster; //! TPC pid splines TF1 *fResolutionCorrection; //! TPC resolution correction - AliTRDPIDParams *fTRDPIDParams; //! TRD PID Params - AliTRDPIDReference *fTRDPIDReference; //! TRD PID References + AliTRDPIDResponseObject *fTRDPIDResponseObject; //! TRD PID Response Object UInt_t fTRDslicesForPID[2]; //! TRD PID slices - Int_t fTOFTimeZeroType; //! default start time type for tof (ESD) - Float_t fTOFres; //! TOF resolution + Float_t fTOFtail; //! TOF tail effect used in TOF probability + AliTOFPIDParams *fTOFPIDParams; //! TOF PID Params - period depending (OADB loaded) TObjArray *fEMCALPIDParams; //! EMCAL PID Params @@ -157,6 +162,8 @@ private: void InitializeTRDResponse(); //TOF + void SetTOFPidResponseMaster(); + void InitializeTOFResponse(); //EMCAL void SetEMCALPidResponseMaster(); @@ -165,7 +172,7 @@ private: // void SetRecoInfo(); - ClassDef(AliPIDResponse,4); //PID response handling + ClassDef(AliPIDResponse,6); //PID response handling }; inline Float_t AliPIDResponse::NumberOfSigmasTPC(const AliVParticle *vtrack, AliPID::EParticleType type) const {