ROOT logo
AliRoot » STEER » ESD » AliESDpid

class AliESDpid: public AliPIDResponse

           Implementation of the combined PID class
           For the Event Summary Data Class
           produced by the reconstruction process
           and containing information on the particle identification
      Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch

Function Members (Methods)

public:
AliESDpid(Bool_t forMC = kFALSE)
AliESDpid(const AliESDpid& a)
virtual~AliESDpid()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
AliPIDResponse::EDetPidStatusAliPIDResponse::CheckPIDStatus(AliPIDResponse::EDetector detCode, const AliVTrack* track) const
Bool_tCheckTOFMatching(AliESDtrack* track) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
voidCombinePID(AliESDtrack* track) const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeEMCALProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeHMPIDProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeITSProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputePHOSProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
AliPIDResponse::EDetPidStatusAliPIDResponse::ComputePIDProbability(AliPIDResponse::EDetCode detCode, const AliVTrack* track, Int_t nSpecies, Double_t* p) const
AliPIDResponse::EDetPidStatusAliPIDResponse::ComputePIDProbability(AliPIDResponse::EDetector detCode, const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeTOFProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeTPCProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeTRDProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p) const
virtual AliPIDResponse::EDetPidStatusAliPIDResponse::ComputeTRDProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p, AliTRDPIDResponse::ETRDPIDMethod PIDmethod) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
voidAliPIDResponse::FillTrackDetectorPID()
voidAliPIDResponse::FillTrackDetectorPID(const AliVTrack* track, AliPIDResponse::EDetector detector) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Bool_tAliPIDResponse::GetCachePID() const
TStringAliPIDResponse::GetChecksum(const TObject* obj) const
Int_tAliPIDResponse::GetCurrentAliRootRev() const
Float_tAliPIDResponse::GetCurrentCentrality() const
AliVEvent*AliPIDResponse::GetCurrentEvent() const
const char*AliPIDResponse::GetCustomTPCpidResponse() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
AliEMCALPIDResponse&AliPIDResponse::GetEMCALResponse()
virtual const char*TObject::GetIconName() const
AliITSPIDResponse&AliPIDResponse::GetITSResponse()
virtual const char*TNamed::GetName() const
Float_tGetNMaxSigmaTOFTPCMismatch() const
const char*AliPIDResponse::GetOADBPath() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Double_tAliPIDResponse::GetSignalDelta(AliPIDResponse::EDetector detCode, const AliVParticle* track, AliPID::EParticleType type, Bool_t ratio = kFALSE) const
AliPIDResponse::EDetPidStatusAliPIDResponse::GetSignalDelta(AliPIDResponse::EDetector detCode, const AliVParticle* track, AliPID::EParticleType type, Double_t& val, Bool_t ratio = kFALSE) const
virtual const char*TNamed::GetTitle() const
Float_tAliPIDResponse::GetTOFMismatchProbability(const AliVTrack* track = NULL) const
AliTOFPIDParams*AliPIDResponse::GetTOFPIDParams() const
AliTOFPIDResponse&AliPIDResponse::GetTOFResponse()
virtual Float_tGetTOFsignalTunedOnData(const AliVTrack* t) const
AliTPCPIDResponse&AliPIDResponse::GetTPCResponse()
virtual Float_tGetTPCsignalTunedOnData(const AliVTrack* t) const
AliTRDPIDResponse&AliPIDResponse::GetTRDResponse()
Int_tAliPIDResponse::GetTunedOnDataMask() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
Bool_tAliPIDResponse::IdentifiedAsElectronTRD(const AliVTrack* track, Double_t efficiencyLevel, Double_t centrality = -1, AliTRDPIDResponse::ETRDPIDMethod PIDmethod = AliTRDPIDResponse::kLQ1D) const
Bool_tAliPIDResponse::IdentifiedAsElectronTRD(const AliVTrack* track, Int_t& ntracklets, Double_t efficiencyLevel, Double_t centrality = -1, AliTRDPIDResponse::ETRDPIDMethod PIDmethod = AliTRDPIDResponse::kLQ1D) const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
voidAliPIDResponse::InitialiseEvent(AliVEvent* event, Int_t pass, Int_t run = -1)
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tAliPIDResponse::IsTunedOnData() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidMakeITSPID(AliESDtrack* track) const
Int_tMakePID(AliESDEvent* event, Bool_t TPCOnly = kFALSE, Float_t timeZeroTOF = 9999) const
voidMakePIDForTracking(AliESDEvent* event) const
voidMakeTOFPID(AliESDtrack* track, Float_t) const
voidMakeTPCPID(AliESDtrack* track) const
voidMakeTRDPID(AliESDtrack* track) const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
Float_tAliPIDResponse::NumberOfSigmas(AliPIDResponse::EDetector detCode, const AliVParticle* track, AliPID::EParticleType type) const
AliPIDResponse::EDetPidStatusAliPIDResponse::NumberOfSigmas(AliPIDResponse::EDetector detCode, const AliVParticle* track, AliPID::EParticleType type, Double_t& val) const
virtual Float_tAliPIDResponse::NumberOfSigmasEMCAL(const AliVParticle* track, AliPID::EParticleType type) const
virtual Float_tAliPIDResponse::NumberOfSigmasEMCAL(const AliVParticle* track, AliPID::EParticleType type, Double_t& eop, Double_t* showershape) const
virtual Float_tAliPIDResponse::NumberOfSigmasHMPID(const AliVParticle* track, AliPID::EParticleType type) const
virtual Float_tAliPIDResponse::NumberOfSigmasITS(const AliVParticle* track, AliPID::EParticleType type) const
virtual Float_tAliPIDResponse::NumberOfSigmasTOF(const AliVParticle* track, AliPID::EParticleType type) const
virtual Float_tAliPIDResponse::NumberOfSigmasTOF(const AliVParticle* track, AliPID::EParticleType type, Float_t) const
virtual Float_tAliPIDResponse::NumberOfSigmasTPC(const AliVParticle* track, AliPID::EParticleType type) const
virtual Float_tAliPIDResponse::NumberOfSigmasTPC(const AliVParticle* track, AliPID::EParticleType type, AliTPCPIDResponse::ETPCdEdxSource dedxSource) const
virtual Float_tAliPIDResponse::NumberOfSigmasTRD(const AliVParticle* track, AliPID::EParticleType type) const
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliESDpid&operator=(const AliESDpid& a)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidAliPIDResponse::SetCachePID(Bool_t cache)
voidAliPIDResponse::SetCurrentAliRootRev(Int_t alirootRev)
voidAliPIDResponse::SetCurrentCentrality(Float_t centrality)
voidAliPIDResponse::SetCurrentFile(const char* file)
voidAliPIDResponse::SetCustomTPCpidResponse(const char* tpcpid)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetEventHandler(AliVEventHandler* event)
voidAliPIDResponse::SetITSPIDmethod(AliPIDResponse::ITSPIDmethod pmeth)
voidAliPIDResponse::SetMCperiod(const char* mcPeriod)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
voidSetNMaxSigmaTOFTPCMismatch(Float_t range)
voidAliPIDResponse::SetOADBPath(const char* path)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPIDForTracking(AliESDtrack* track) const
voidAliPIDResponse::SetRecoPass(Int_t recoPass)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidAliPIDResponse::SetTOFResponse(AliVEvent* vevent, AliPIDResponse::EStartTimeType_t option)
voidAliPIDResponse::SetTOFtail(Float_t tail = 0.9)
voidAliPIDResponse::SetTunedOnData(Bool_t flag = kTRUE, Int_t recoPass = 0)
voidAliPIDResponse::SetTunedOnDataMask(Int_t detMask)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidAliPIDResponse::SetUseTPCEtaCorrection(Bool_t useEtaCorrection = kTRUE)
voidAliPIDResponse::SetUseTPCMultiplicityCorrection(Bool_t useMultiplicityCorrection = kTRUE)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
Bool_tAliPIDResponse::UseTPCEtaCorrection() const
Bool_tAliPIDResponse::UseTPCMultiplicityCorrection() const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
Int_tAliPIDResponse::CalculateTRDResponse(const AliVTrack* track, Double_t* p, AliTRDPIDResponse::ETRDPIDMethod PIDmethod) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
AliPIDResponse::EDetPidStatusAliPIDResponse::GetComputeTRDProbability(const AliVTrack* track, Int_t nSpecies, Double_t* p, AliTRDPIDResponse::ETRDPIDMethod PIDmethod = AliTRDPIDResponse::kLQ1D) const
virtual Float_tGetNumberOfSigmasTOFold(const AliVParticle* track, AliPID::EParticleType type) const
virtual Float_tGetSignalDeltaTOFold(const AliVParticle* track, AliPID::EParticleType type, Bool_t ratio = kFALSE) const
AliPIDResponse::EDetPidStatusAliPIDResponse::GetTOFPIDStatus(const AliVTrack* track) const
voidTObject::MakeZombie()

Data Members

public:
enum AliPIDResponse::EDetector { kITS
kTPC
kTRD
kTOF
kHMPID
kEMCAL
kPHOS
kNdetectors
};
enum AliPIDResponse::EDetCode { kDetITS
kDetTPC
kDetTRD
kDetTOF
kDetHMPID
kDetEMCAL
kDetPHOS
};
enum AliPIDResponse::EBeamType { kPP
kPPB
kPBPB
};
enum AliPIDResponse::EStartTimeType_t { kFILL_T0
kTOF_T0
kT0_T0
kBest_T0
};
enum AliPIDResponse::ITSPIDmethod { kITSTruncMean
kITSLikelihood
};
enum AliPIDResponse::EDetPidStatus { kDetNoSignal
kDetPidOk
kDetMismatch
kDetNoParams
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
AliEMCALPIDResponseAliPIDResponse::fEMCALResponsePID response function of the EMCAL
AliHMPIDPIDResponseAliPIDResponse::fHMPIDResponsePID response function of the HMPID
AliPIDResponse::ITSPIDmethodAliPIDResponse::fITSPIDmethod0 = trunc mean; 1 = likelihood
AliITSPIDResponseAliPIDResponse::fITSResponsePID response function of the ITS
TStringTNamed::fNameobject identifier
Float_tAliPIDResponse::fRangenSigma max in likelihood
AliTOFPIDResponseAliPIDResponse::fTOFResponsePID response function of the TOF
AliTPCPIDResponseAliPIDResponse::fTPCResponsePID response function of the TPC
AliTRDPIDResponseAliPIDResponse::fTRDResponsePID response function of the TRD
TStringTNamed::fTitleobject title
Bool_tAliPIDResponse::fTuneMConDataswitch to force the MC to be similar to data
Int_tAliPIDResponse::fTuneMConDataMaskselect for which detectors enable MC tuning on data
private:
AliVEventHandler*fEventHandler! MC event handler
Float_tfRangeTOFMismatchnSigma max for TOF matching with TPC

Class Charts

Inheritance Chart:
TNamed
AliPIDResponse
AliESDpid

Function documentation

Int_t MakePID(AliESDEvent* event, Bool_t TPCOnly = kFALSE, Float_t timeZeroTOF = 9999) const
  Calculate probabilities for all detectors, except if TPConly==kTRUE
  and combine PID

   Option TPConly==kTRUE is used during reconstruction,
  because ITS tracking uses TPC pid
  HMPID and TRD pid are done in detector reconstructors

Float_t GetTPCsignalTunedOnData(const AliVTrack* t) const
Float_t GetTOFsignalTunedOnData(const AliVTrack* t) const
void MakeTPCPID(AliESDtrack* track) const
  TPC pid using bethe-bloch and gaussian response

void MakeITSPID(AliESDtrack* track) const
 ITS PID
 Two options, depending on fITSPIDmethod:
  1) Truncated mean method
  2) Likelihood, using charges measured in all 4 layers and
     Landau+gaus response functions

void MakeTOFPID(AliESDtrack* track, Float_t ) const
   TOF PID using gaussian response

void MakeTRDPID(AliESDtrack* track) const
 Method to recalculate the TRD PID probabilities

void CombinePID(AliESDtrack* track) const
 Combine the information of various detectors
 to determine the Particle Identification

Bool_t CheckTOFMatching(AliESDtrack* track) const
 Check pid matching of TOF with TPC as reference

Float_t GetSignalDeltaTOFold(const AliVParticle* track, AliPID::EParticleType type, Bool_t ratio = kFALSE) const
 TOF signal - expected

Float_t GetNumberOfSigmasTOFold(const AliVParticle* track, AliPID::EParticleType type) const
 Number of sigma implementation for the TOF

void SetPIDForTracking(AliESDtrack* track) const
 assign mass for tracking

void MakePIDForTracking(AliESDEvent* event) const
 assign masses using for tracking
AliESDpid(Bool_t forMC = kFALSE)
{;}
AliESDpid(const AliESDpid& a)
{;}
AliESDpid& operator=(const AliESDpid& a)
{if (this==&a) return *this; AliPIDResponse::operator=(a); fRangeTOFMismatch=a.fRangeTOFMismatch; fEventHandler=NULL; return *this;}
virtual ~AliESDpid()
{}
void SetNMaxSigmaTOFTPCMismatch(Float_t range)
   Float_t NumberOfSigmasTOF(const AliVParticle *track, AliPID::EParticleType type) const {return AliPIDResponse::NumberOfSigmasTOF(track,type);}
   Float_t GetNumberOfSigmasTOF(const AliVParticle *track, AliPID::EParticleType type, const Float_t timeZeroTOF) const;
Float_t GetNMaxSigmaTOFTPCMismatch() const
void SetEventHandler(AliVEventHandler* event)
{fEventHandler=event;}