ROOT logo
AliRoot » PWGHF » HFE » AliHFEextraCuts

class AliHFEextraCuts: public AliCFCutBase

Function Members (Methods)

public:
AliHFEextraCuts(const AliHFEextraCuts& c)
AliHFEextraCuts(const Char_t* name, const Char_t* title)
virtual~AliHFEextraCuts()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Bool_tCheckITSpattern(const AliVTrack *const track) const
Bool_tCheckITSstatus(Int_t itsStatus) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) 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)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Bool_tGetCheckITSstatus() const
Int_tGetDebugLevel() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual UInt_tAliAnalysisCuts::GetFilterMask() const
voidGetHFEImpactParameters(const AliVTrack *const track, Double_t& dcaxy, Double_t& dcansigmaxy)
voidGetHFEImpactParameters(const AliVTrack *const track, Double_t* dcaD, Double_t* covD)
virtual const char*TObject::GetIconName() const
voidGetImpactParameters(AliVTrack* track, Float_t& radial, Float_t& z)
Int_tGetITSstatus(const AliVTrack *const track, Int_t layer) const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual TList*AliAnalysisCuts::GetOutput()
virtual UInt_tAliVCuts::GetSelectionMask(const TObject*)
virtual TObject*AliAnalysisCuts::GetStatistics(Option_t*) const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() 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
virtual voidAliAnalysisCuts::Init()
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_tIsKinkDaughter(AliVTrack* track)
Bool_tIsKinkMother(AliVTrack* track)
Bool_tTObject::IsOnHeap() const
virtual Bool_tAliCFCutBase::IsQAOn() const
virtual Bool_tIsSelected(TObject* o)
virtual Bool_tIsSelected(TList*)
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Long64_tAliAnalysisCuts::Merge(TCollection*)
virtual Bool_tTObject::Notify()
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)
AliHFEextraCuts&operator=(const AliHFEextraCuts& c)
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)
const AliVVertex*RemoveDaughtersFromPrimaryVtx(const AliESDEvent *const esdevent, const AliVTrack *const track)
AliAODVertex*RemoveDaughtersFromPrimaryVtx(const AliAODEvent *const aod, const AliVTrack *const track)
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 = "")
virtual UInt_tAliAnalysisCuts::Selected() const
voidSetAODFilterBit(Int_t bit)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetCheckITSstatus(Bool_t check)
voidSetClusterRatioTPC(Double_t ratio, AliHFEextraCuts::ETPCclrDef_t def)
voidSetDebugLevel(Int_t level)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidAliAnalysisCuts::SetFilterMask(UInt_t mask)
voidSetFractionOfTPCSharedClusters(Double_t fractionShared)
voidSetITSpatternCut()
voidSetMatchTOFLabel(Bool_t match)
voidSetMaxChi2TRD(Float_t maxchi2)
voidSetMaxImpactParameterRpar(Bool_t maxImpactParameterRpar)
voidSetMaxImpactParamR(Double_t impactParam)
voidSetMaxImpactParamZ(Double_t impactParam)
virtual voidAliCFCutBase::SetMCEventInfo(const TObject*)
voidSetMinHFEImpactParamR(Float_t* ipcutParam, Bool_t isSigmacut, Bool_t isIPcharge, Bool_t isopp)
voidSetMinImpactParamR(Double_t impactParam)
voidSetMinImpactParamZ(Double_t impactParam)
voidSetMinNbITScls(UChar_t minNbITScls)
voidSetMinNClustersTPC(Int_t minClusters, AliHFEextraCuts::ETPCclusterDef_t tpcdef)
voidSetMinNClustersTPCPID(Int_t minclusters)
voidSetMinTrackletsTRD(Int_t minTracklets, Bool_t exact = kFALSE)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidAliCFCutBase::SetQAOn(TList* list)
virtual voidSetRecEventInfo(const TObject* event)
voidSetRejectKinkDaughter()
voidSetRejectKinkMother()
voidSetRequireITSdrift(AliHFEextraCuts::ITSDrift_t drift)
voidSetRequireITSpixel(AliHFEextraCuts::ITSPixel_t pixel)
virtual voidAliAnalysisCuts::SetSelected(Bool_t dec)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetTOFMISMATCH(Bool_t tofMismatch)
voidSetTOFPID(Bool_t tofPid)
voidSetTOFsignalDxz(Double_t tofsignalDx, Double_t tofsignalDz)
voidSetTPCPIDCleanUp(Bool_t tpcPIDCleanUp)
virtual voidTObject::SetUniqueID(UInt_t uid)
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
voidUnSetRejectKinkDaughter()
voidUnSetRejectKinkMother()
virtual voidTObject::UseCurrentStyle()
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:
virtual voidAddQAHistograms(TList* qaList)
Bool_tCheckMCCuts(AliVParticle*) const
Bool_tCheckRecCuts(AliVTrack* track)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidFillCutCorrelation(ULong64_t survivedCut)
voidFillQAhistosRec(AliVTrack* track, UInt_t when)
voidGetHFEImpactParameterCuts(const AliVTrack *const track, Double_t& hfeimpactRcut, Double_t& hfeimpactnsigmaRcut)
Int_tGetITSNbOfcls(AliVTrack* track)
voidGetMaxImpactParameterCutR(const AliVTrack *const track, Double_t& maximpactRcut)
voidGetTOFsignalDxDz(const AliVTrack *const track, Double_t& tofsignalDx, Double_t& tofsignalDz)
Double_tGetTPCclusterRatio(AliVTrack* track)
Bool_tGetTPCCountSharedMapBitsAboveThreshold(AliVTrack* track)
UInt_tGetTPCncls(AliVTrack* track)
Float_tGetTPCsharedClustersRatio(AliVTrack* track)
Float_tGetTRDchi(AliVTrack* track)
voidTObject::MakeZombie()
Bool_tMatchTOFlabel(const AliVTrack *const track) const
voidPrintBitMap(Int_t bitmap)

Data Members

public:
enum ITSPixel_t { kFirst
kSecond
kBoth
kNone
kAny
kExclusiveSecond
};
enum ITSDrift_t { kFirstD
};
enum ETPCclusterDef_t { kFound
kFoundIter1
kCrossedRows
kFoundAll
};
enum ETPCclrDef_t { kFoundOverFindable
kFoundOverFindableIter1
kFoundOverCR
kCROverFindable
kFoundAllOverFindable
};
enum Cut_t { kMinImpactParamR
kMaxImpactParamR
kMinImpactParamZ
kMaxImpactParamZ
kClusterRatioTPC
kMinTrackletsTRD
kPixelITS
kMinHFEImpactParamR
kMinHFEImpactParamNsigmaR
kMinNClustersTPC
kMinNClustersTPCPID
kTPCfractionShared
kTOFPID
kTOFmismatch
kTPCPIDCleanUp
kEMCALmatch
kMaxImpactParameterRpar
kMinNbITScls
kRejectKinkDaughter
kRejectKinkMother
kDriftITS
kTOFsignalDxy
kMaxTRDChi2
kITSpattern
kMinHFEImpactParamRcharge
kAODFilterBit
kTOFlabel
kNcuts
};
enum { kBeforeCuts
kAfterCuts
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Bool_tAliCFCutBase::fIsQAOnqa checking on/off
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
private:
Int_tfAODFilterBitRequire AOD filter bit
Bool_tfCheckcheck
Float_tfClusterRatioTPCRatio of findable vs. found clusters in TPC
ULong64_tfCutCorrelationCut Correlation
Int_tfDebugLevelDebug Level
UChar_tfDriftITSCut on ITS Drift
AliVEvent*fEvent! working event
Double_tfFractionTPCSharedCut on fraction of shared clusters
Float_tfIPcutParam[4]Parmameter of impact parameter cut parametrization
Float_tfImpactParamCut[4]Impact Parmameter Cut
TArrayIfListKinkMothersList of Kink Mothers (AOD analysis)
Double_tfMagFieldMagnetic field
Float_tfMaxChi2TRDMax chi2 TRD
UInt_tfMinNClustersTPCMinimum TPC clusters cut
UInt_tfMinNClustersTPCPIDMinimum TPC PID clusters cut
UChar_tfMinNbITSclsMin. Number of ITS clusters
UChar_tfMinTrackletsTRDMin. Number of Tracklets inside TRD
Int_tfNumberKinkMothersNumber of Kink mothers
Bool_tfOppSideIPcutflag to use conversion peak side of ip*charge cut
UChar_tfPixelITSCut on ITS Pixels
TList*fQAlist! Directory for QA histograms
ULong64_tfRequirementsCut Requirements
Double_tfTOFsignalDxTOF signal dx
Double_tfTOFsignalDzTOF signal dz
UChar_tfTPCclusterDefTPC cluster definition Bitmap
UChar_tfTPCclusterRatioDefTPC cluster ratio definition Bitmap
Bool_tfTRDtrackletsExactRequire exact number of tracklets
static const Int_tfgkNQAhistosNumber of QA histos

Class Charts

Inheritance Chart:
TNamed
AliVCuts
AliAnalysisCuts
AliCFCutBase
AliHFEextraCuts

Function documentation

AliHFEextraCuts(const Char_t* name, const Char_t* title)
 Default Constructor

printf("Set the number of min ITS clusters %d\n",(Int_t)fMinNbITScls);
AliHFEextraCuts(const AliHFEextraCuts& c)
 Copy constructor
 Performs a deep copy

AliHFEextraCuts & operator=(const AliHFEextraCuts& c)
 Assignment operator

~AliHFEextraCuts()
 Destructor

void SetRecEventInfo(const TObject* event)
 Set Virtual event an make a copy

Bool_t IsSelected(TObject* o)
 Steering function for the track selection

Bool_t CheckRecCuts(AliVTrack* track)
 Checks cuts on reconstructed tracks
 returns true if track is selected
 QA histograms are filled before track selection and for
 selected tracks after track selection

Bool_t CheckMCCuts(AliVParticle* ) const
 Checks cuts on Monte Carlo tracks
 returns true if track is selected
 QA histograms are filled before track selection and for
 selected tracks after track selection

void FillQAhistosRec(AliVTrack* track, UInt_t when)
 Fill the QA histograms for ESD tracks
 Function can be called before cuts or after cut application (second argument)

void FillCutCorrelation(ULong64_t survivedCut)
 Fill cut correlation histograms for tracks that didn't pass cuts

void AddQAHistograms(TList* qaList)
 Add QA histograms
 For each cut a histogram before and after track cut is created
 Histos before respectively after cut are stored in different lists
 Additionally a histogram with the cut correlation is created and stored
 in the top directory

void PrintBitMap(Int_t bitmap)
Bool_t CheckITSstatus(Int_t itsStatus) const
 Check whether ITS area is dead

Int_t GetITSstatus(const AliVTrack *const track, Int_t layer) const
 Check ITS layer status

Bool_t GetTPCCountSharedMapBitsAboveThreshold(AliVTrack* track)
 Checks if number of shared bits is above 1

UInt_t GetTPCncls(AliVTrack* track)
 Get Number of findable clusters in the TPC

Float_t GetTPCsharedClustersRatio(AliVTrack* track)
 Get fraction of shared TPC clusters

Double_t GetTPCclusterRatio(AliVTrack* track)
 Get Ratio of found / findable clusters for different definitions
 Only implemented for ESD tracks

void GetImpactParameters(AliVTrack* track, Float_t& radial, Float_t& z)
 Get impact parameter

Bool_t IsKinkDaughter(AliVTrack* track)
 Is kink Daughter

Bool_t IsKinkMother(AliVTrack* track)
 Is kink Mother

Float_t GetTRDchi(AliVTrack* track)
 Get TRDchi2

Int_t GetITSNbOfcls(AliVTrack* track)
 Get ITS nb of clusters

void GetHFEImpactParameters(const AliVTrack *const track, Double_t& dcaxy, Double_t& dcansigmaxy)
 Get HFE impact parameter (with recalculated primary vertex)

void GetHFEImpactParameters(const AliVTrack *const track, Double_t* dcaD, Double_t* covD)
 Get HFE impact parameter (with recalculated primary vertex)

void GetHFEImpactParameterCuts(const AliVTrack *const track, Double_t& hfeimpactRcut, Double_t& hfeimpactnsigmaRcut)
 Get HFE impact parameter cut(pt dependent)

void GetMaxImpactParameterCutR(const AliVTrack *const track, Double_t& maximpactRcut)
 Get max impact parameter cut r (pt dependent)

void GetTOFsignalDxDz(const AliVTrack *const track, Double_t& tofsignalDx, Double_t& tofsignalDz)
 TOF matching

Bool_t MatchTOFlabel(const AliVTrack *const track) const
 Check whether the TOF label is the same as the track label

Bool_t CheckITSpattern(const AliVTrack *const track) const
 Check if every ITS layer, which has a module which is alive, also
 has an ITS cluster

const AliVVertex* RemoveDaughtersFromPrimaryVtx(const AliESDEvent *const esdevent, const AliVTrack *const track)
 This method returns a primary vertex without the daughter tracks of the
 candidate and it recalculates the impact parameters and errors for ESD tracks.

 The output vertex is created with "new".

AliAODVertex* RemoveDaughtersFromPrimaryVtx(const AliAODEvent *const aod, const AliVTrack *const track)
 This method returns a primary vertex without the daughter tracks of the
 candidate and it recalculates the impact parameters and errors for AOD tracks.
 The output vertex is created with "new".

void SetClusterRatioTPC(Double_t ratio, AliHFEextraCuts::ETPCclrDef_t def)
void SetRequireITSpixel(AliHFEextraCuts::ITSPixel_t pixel)
void SetRequireITSdrift(AliHFEextraCuts::ITSDrift_t drift)
void SetMinImpactParamR(Double_t impactParam)
void SetMaxImpactParamR(Double_t impactParam)
void SetMinImpactParamZ(Double_t impactParam)
void SetMaxImpactParamZ(Double_t impactParam)
void SetMinHFEImpactParamR(Float_t* ipcutParam, Bool_t isSigmacut, Bool_t isIPcharge, Bool_t isopp)
void SetMinTrackletsTRD(Int_t minTracklets, Bool_t exact = kFALSE)
void SetMaxChi2TRD(Float_t maxchi2)
void SetMinNClustersTPC(Int_t minClusters, AliHFEextraCuts::ETPCclusterDef_t tpcdef)
Bool_t IsSelected(TObject* o)
void SetMinNClustersTPCPID(Int_t minclusters)
void SetTOFPID(Bool_t tofPid)
{ tofPid ? SETBIT(fRequirements, kTOFPID) : CLRBIT(fRequirements, kTOFPID); }
void SetTOFMISMATCH(Bool_t tofMismatch)
{ tofMismatch ? SETBIT(fRequirements, kTOFmismatch) : CLRBIT(fRequirements, kTOFmismatch); }
void SetMatchTOFLabel(Bool_t match)
{match ? SETBIT(fRequirements, kTOFlabel) : CLRBIT(fRequirements, kTOFlabel); }
void SetTPCPIDCleanUp(Bool_t tpcPIDCleanUp)
{ tpcPIDCleanUp ? SETBIT(fRequirements, kTPCPIDCleanUp) : CLRBIT(fRequirements, kTPCPIDCleanUp); }
void SetMaxImpactParameterRpar(Bool_t maxImpactParameterRpar)
{ maxImpactParameterRpar ? SETBIT(fRequirements, kMaxImpactParameterRpar) : CLRBIT(fRequirements, kMaxImpactParameterRpar); }
void SetFractionOfTPCSharedClusters(Double_t fractionShared)
{ fFractionTPCShared= fractionShared; SETBIT(fRequirements, kTPCfractionShared); }
void SetMinNbITScls(UChar_t minNbITScls)
{ fMinNbITScls = minNbITScls; SETBIT(fRequirements, kMinNbITScls); }
void SetTOFsignalDxz(Double_t tofsignalDx, Double_t tofsignalDz)
{ fTOFsignalDx=tofsignalDx; fTOFsignalDz=tofsignalDz; SETBIT(fRequirements, kTOFsignalDxy); }
void SetRejectKinkDaughter()
void SetRejectKinkMother()
void SetAODFilterBit(Int_t bit)
void SetCheckITSstatus(Bool_t check)
{ fCheck = check; }
void SetITSpatternCut()
void SetDebugLevel(Int_t level)
{ fDebugLevel = level; }
Bool_t GetCheckITSstatus() const
{ return fCheck; }
Int_t GetDebugLevel() const
{ return fDebugLevel; }
void UnSetRejectKinkDaughter()
void UnSetRejectKinkMother()