ROOT logo
AliRoot » PWGPP » AliAnalysisTaskIPInfo

class AliAnalysisTaskIPInfo: public AliAnalysisTask

 Class AliAnalysisTaskIPInfo
 AliAnalysisTask to extract from the ESD the IP position and sigma
 as well as to estimate the primary vertex and tracks DCA resolution.
 Uses external class AliIntSpotEstimator

 Author: ruben.shahoyan@cern.ch

Function Members (Methods)

public:
AliAnalysisTaskIPInfo(const char* name = "IPInfo")
virtual~AliAnalysisTaskIPInfo()
virtual voidTTask::Abort()MENU
voidTObject::AbstractMethod(const char* method) const
virtual voidTTask::Add(TTask* task)
virtual voidTObject::AppendPad(Option_t* option = "")
Bool_tAliAnalysisTask::AreSlotsConnected()
virtual voidTTask::Browse(TBrowser* b)
Bool_tAliAnalysisTask::CheckCircularDeps()
voidAliAnalysisTask::CheckNotify(Bool_t init = kFALSE)
virtual Bool_tAliAnalysisTask::CheckOwnership() const
virtual Bool_tAliAnalysisTask::CheckPostData() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTTask::CleanTasks()
virtual voidTTask::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
Bool_tAliAnalysisTask::ConnectInput(Int_t islot, AliAnalysisDataContainer* cont)
virtual voidConnectInputData(Option_t*)
Bool_tAliAnalysisTask::ConnectOutput(Int_t islot, AliAnalysisDataContainer* cont)
virtual voidTTask::Continue()MENU
virtual voidTNamed::Copy(TObject& named) const
virtual voidCreateOutputObjects()
Int_tCreateSPDTracklets(TClonesArray& tracks)
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 voidExec(Option_t* option)
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 voidTTask::ExecuteTask(Option_t* option = "0")MENU
virtual voidTTask::ExecuteTasks(Option_t* option)
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
virtual voidAliAnalysisTask::FinishTaskOutput()
voidAliAnalysisTask::GetBranches(const char* type, TString& result) const
Int_tTTask::GetBreakin() const
Int_tTTask::GetBreakout() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
AliIntSpotEstimator*GetEstimator(Int_t i) const
virtual const char*TObject::GetIconName() const
TObject*AliAnalysisTask::GetInputData(Int_t islot) const
AliAnalysisDataSlot*AliAnalysisTask::GetInputSlot(Int_t islot) const
TClass*AliAnalysisTask::GetInputType(Int_t islot) const
TList*TTask::GetListOfTasks() const
virtual const char*TNamed::GetName() const
Int_tAliAnalysisTask::GetNinputs() const
Int_tAliAnalysisTask::GetNoutputs() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
TObject*AliAnalysisTask::GetOutputData(Int_t islot) const
AliAnalysisDataSlot*AliAnalysisTask::GetOutputSlot(Int_t islot) const
TClass*AliAnalysisTask::GetOutputType(Int_t islot) const
TObject*AliAnalysisTask::GetPublishedData() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tAliAnalysisTask::HasBranches() const
Bool_tAliAnalysisTask::HasExecuted() const
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 voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tTTask::IsActive() const
Bool_tAliAnalysisTask::IsChecked() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTTask::IsFolder() const
Bool_tAliAnalysisTask::IsInitialized() const
Bool_tTObject::IsOnHeap() const
Bool_tAliAnalysisTask::IsOutputReady(Int_t islot) const
Bool_tAliAnalysisTask::IsPostEventLoop() const
Bool_tAliAnalysisTask::IsReady() const
virtual Bool_tTNamed::IsSortable() const
Bool_tAliAnalysisTask::IsUsed() const
Bool_tAliAnalysisTask::IsZombie() const
virtual voidAliAnalysisTask::LocalInit()
virtual voidTTask::ls(Option_t* option = "*") constMENU
voidTObject::MayNotUse(const char* method) const
virtual Bool_tAliAnalysisTask::Notify()
virtual Bool_tAliAnalysisTask::NotifyBinChange()
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)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
voidAliAnalysisTask::PrintContainers(Option_t* option = "all", Int_t indent = 0) const
virtual voidAliAnalysisTask::PrintTask(Option_t* option = "all", Int_t indent = 0) const
Bool_tAliAnalysisTask::ProducersTouched() const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidAliAnalysisTask::Reset()
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 = "")
voidTTask::SetActive(Bool_t active = kTRUE)TOGGLE
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidAliAnalysisTask::SetBranches(const char* names)
voidTTask::SetBreakin(Int_t breakin = 1)TOGGLE
voidTTask::SetBreakout(Int_t breakout = 1)TOGGLE
voidAliAnalysisTask::SetChecked(Bool_t flag = kTRUE)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetIPCenIni(Int_t esdID, Double_t x = 0, Double_t y = 0, Double_t z = 0)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetOptions(Int_t estID, Bool_t recoVtx = kFALSE, Double_t outcut = 1e-4, Int_t ntrIP = 2, Int_t nPhiBins = 12, Int_t nestb = 1000, Double_t estmin = -4e-2, Double_t estmax = 6e-2, Int_t ntrBins = 10, Int_t ntMn = 2, Int_t ntMx = 32, Int_t nPBins = 14, Double_t pmn = 0.2, Double_t pmx = 3., Bool_t fillNt = kFALSE)
voidAliAnalysisTask::SetPostEventLoop(Bool_t flag = kTRUE)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
voidAliAnalysisTask::SetUsed(Bool_t flag = kTRUE)
voidAliAnalysisTask::SetZombie(Bool_t flag = 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
virtual voidTerminate(Option_t*)
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
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:
voidAliAnalysisTask::DefineInput(Int_t islot, TClass* type)
voidAliAnalysisTask::DefineOutput(Int_t islot, TClass* type)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidAliAnalysisTask::EnableBranch(Int_t islot, const char* bname) const
char*AliAnalysisTask::GetBranchAddress(Int_t islot, const char* branch) const
voidTObject::MakeZombie()
TFile*AliAnalysisTask::OpenFile(Int_t iout, Option_t* option = "RECREATE") const
Bool_tAliAnalysisTask::PostData(Int_t iout, TObject* data, Option_t* option = "")
Bool_tAliAnalysisTask::SetBranchAddress(Int_t islot, const char* branch, void* address) const

Data Members

public:
enum { kITSTPC
kTPC
kSPD
kNEst
};
enum AliAnalysisTask::EAnalysisTaskFlags { kTaskUsed
kTaskZombie
kTaskChecked
kTaskPostEventLoop
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Bool_tTTask::fActivetrue if task is active
TStringAliAnalysisTask::fBranchNamesList of input branches that need to be loaded for this task
Int_tTTask::fBreakin=1 if a break point set at task extry
Int_tTTask::fBreakout=1 if a break point set at task exit
AliESDEvent*fESD! ESD object
AliESDfriend*fESDfriend! ESD friend object
Double_tfEstMax[3]! upper estimator boundary
Double_tfEstMin[3]! lower estimator boundary
static const Char_t*fEstNames[3]estimator names
Bool_tfFillNt[3]! request to fill ntuple
Bool_tTTask::fHasExecutedTrue if task has executed
Double_tfIPCenIni[3][3]! initial estimate of IP Center
AliIntSpotEstimator*fIPEst[3]! estimators
Bool_tAliAnalysisTask::fInitializedTrue if Init() was called
TObjArray*AliAnalysisTask::fInputsArray of input slots
Int_tfNEstb[3]! n of estimator bins
Int_tfNPBins[3]! n of track P bins
Int_tfNPhiBins[3]! n bins in phi for IP
Int_tfNTrBins[3]! n of vtx.mult. bins
Int_tfNTrMax[3]! max vtx multuplicity
Int_tfNTrMin[3]! min vtx multuplicity
Int_tfNTrMinIP[3]! min tracks for IP estimator
TStringTNamed::fNameobject identifier
Int_tAliAnalysisTask::fNinputsNumber of inputs
Int_tAliAnalysisTask::fNoutputsNumber of outputs
TStringTTask::fOptionOption specified in ExecuteTask
Double_tfOutCut[3]! outliers cut level
TList*fOutput! list send on output slot 0
Bool_t*AliAnalysisTask::fOutputReady[fNoutputs] Flags for output readyness
TObjArray*AliAnalysisTask::fOutputsArray of output slots
Double_tfPMax[3]! upper P cut
Double_tfPMin[3]! lower P cut
TObject*AliAnalysisTask::fPublishedData! published data
Bool_tAliAnalysisTask::fReadyFlag if the task is ready
Bool_tfRecoVtx[3]! request to refit the vertex for given estimator
TList*TTask::fTasksList of Tasks
TStringTNamed::fTitleobject title
TObjArrayfTracks! temporary storage for extracted tracks
static TTask*TTask::fgBeginTaskpointer to task initiator
static TTask*TTask::fgBreakPointpointer to current break point

Class Charts

Inheritance Chart:
TTask
AliAnalysisTask
AliAnalysisTaskIPInfo

Function documentation

AliAnalysisTaskIPInfo(const char* name = "IPInfo")
~AliAnalysisTaskIPInfo()
 Destructor
void SetIPCenIni(Int_t esdID, Double_t x = 0, Double_t y = 0, Double_t z = 0)
 set initial estimate of the IP center
void SetOptions(Int_t estID, Bool_t recoVtx = kFALSE, Double_t outcut = 1e-4, Int_t ntrIP = 2, Int_t nPhiBins = 12, Int_t nestb = 1000, Double_t estmin = -4e-2, Double_t estmax = 6e-2, Int_t ntrBins = 10, Int_t ntMn = 2, Int_t ntMx = 32, Int_t nPBins = 14, Double_t pmn = 0.2, Double_t pmx = 3., Bool_t fillNt = kFALSE)
 set options for estimators
void ConnectInputData(Option_t* )
 Connect ESD or AOD here
 Called once

void CreateOutputObjects()
 Create estimators
 Several histograms are more conveniently managed in a TList
void Exec(Option_t* option)
Int_t CreateSPDTracklets(TClonesArray& tracks)
 create traclets from multiplicity class
void Terminate(Option_t* )
 Draw result to the screen
 Called once at the end of the query
AliAnalysisTaskIPInfo(const char* name = "IPInfo")
AliIntSpotEstimator* GetEstimator(Int_t i) const
{return i>=0&&i<kNEst ? fIPEst[i] : 0;}
AliAnalysisTaskIPInfo& operator=(const AliAnalysisTaskIPInfo& )
AliESDVertex* ReconstructPrimaryVertexTPC() const
AliESDVertex* ReconstructPrimaryVertexITSTPC() const