ROOT logo
AliRoot » TPC » BASE » AliTPCQAChecker

class AliTPCQAChecker: public AliQACheckerBase

Function Members (Methods)

public:
AliTPCQAChecker()
AliTPCQAChecker(const AliTPCQAChecker& qac)
virtual~AliTPCQAChecker()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual voidCheck(Double_t* test, AliQAv1::ALITASK_t, TObjArray**, const AliDetectorRecoParam* recoParam)
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
voidAliQACheckerBase::DeleteImages()
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
Int_tGetDebugLevel() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TList*AliQACheckerBase::GetExternParamlist()
virtual const char*TObject::GetIconName() const
TCanvas**AliQACheckerBase::GetImage()
TCanvas*AliQACheckerBase::GetImage(AliRecoParam::EventSpecie_t es)
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 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 voidInit(const AliQAv1::DETECTORINDEX_t det)
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_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
virtual voidAliQACheckerBase::MakeImage(TObjArray** list, AliQAv1::TASKINDEX_t task, AliQAv1::MODE_t mode)
voidTObject::MayNotUse(const char* method) const
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)
AliTPCQAChecker&operator=(const AliTPCQAChecker& checker)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
voidAliQACheckerBase::PrintExternParam()
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
voidAliQACheckerBase::Run(AliQAv1::ALITASK_t tsk, const AliDetectorRecoParam* recoParam = NULL)
voidAliQACheckerBase::Run(AliQAv1::ALITASK_t tsk, TObjArray** list, const AliDetectorRecoParam* recoParam = NULL)
voidAliQACheckerBase::Run(AliQAv1::ALITASK_t, TNtupleD**, const AliDetectorRecoParam*)
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)
voidSetDebugLevel(Int_t value)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidAliQACheckerBase::SetExternParamlist(TList* list)
voidAliQACheckerBase::SetHiLo(Float_t* hiValue, Float_t* lowValue)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidAliQACheckerBase::SetPrintImage(Bool_t opt = kTRUE)
virtual voidSetQA(AliQAv1::ALITASK_t index, Double_t* value) const
virtual voidTNamed::SetTitle(const char* title = "")MENU
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
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:
Double_tAliQACheckerBase::DiffC(const TH1* href, const TH1* hin) const
Double_tAliQACheckerBase::DiffK(const TH1* href, const TH1* hin) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidAliQACheckerBase::Finish() const
voidAliQACheckerBase::GetRefSubDir(const char* det, const char* task, TDirectory*& dirFile, TObjArray**& dirOCDB)
voidTObject::MakeZombie()
private:
Double_tCheckESD(Int_t specie, TObjArray* list)
Double_tCheckRAW(Int_t specie, TObjArray* list)
Double_tCheckREC(Int_t specie, TObjArray* list)
Double_tCheckSIM(Int_t specie, TObjArray* list)

Data Members

protected:
TDirectory*AliQACheckerBase::fDataSubDir! directory for the current task directory in the current detector directory in the data file
TList*AliQACheckerBase::fExternParamListList of external parameters (TParameter<double>)
TCanvas**AliQACheckerBase::fImage[AliRecoParam::kNSpecies]
Float_t*AliQACheckerBase::fLowTestValuearray of lower bounds for INFO, WARNING, ERROR, FATAL
TStringTNamed::fNameobject identifier
Bool_tAliQACheckerBase::fPrintImage! flag to print the images or not
TObjArray**AliQACheckerBase::fRefOCDBSubDir! Entry in OCDB for the current detector
TDirectory*AliQACheckerBase::fRefSubDir! directory for the current task directory in the current detector directory in the reference file
TStringTNamed::fTitleobject title
Float_t*AliQACheckerBase::fUpTestValuearray of upper bounds for INFO, WARNING, ERROR, FATAL
private:
Int_tfDebug

Class Charts

Inheritance Chart:
TNamed
AliQACheckerBase
AliTPCQAChecker

Function documentation

Check(Double_t* test, AliQAv1::ALITASK_t , TObjArray** , const AliDetectorRecoParam* recoParam)
 It is important to understand the destinction between indexed tasks (AliQAv1::TASKINDEX_t) which are used in the DataMaker classes and indexed tasks (AliQAv1::ALITASK_t) whihc are used in the checker class.

     From the AliQAChecker::Run() methods we have:
     AliQAv1::kRAW
     - AliQAv1::kRAWS

     AliQAv1::kSIM
     - AliQAv1::kHITS
     - AliQAv1::kSDIGITS
     - AliQAv1::kDIGITS

     AliQAv1::kREC
     - AliQAv1::kDIGITSR
     - AliQAv1::kRECPOINTS
     - AliQAv1::kTRACKSEGMENTS
     - AliQAv1::kRECPARTICLES

     AliQAv1::kESD ;
     -AliQAv1::kESDS

     This means that for each group of tasks the Check will be called
     one or more times.  This also mean that we cannot know what
     histograms will be or not be there in a single call... And we
     also do not know the position in the list of the histogram.

Double_t CheckRAW(Int_t specie, TObjArray* list)
 Check ESD
Double_t CheckSIM(Int_t specie, TObjArray* list)
 This method checks the QA histograms associated with simulation

 For TPC this is:
 Digits :
 The digit histogram gives the ADC distribution for all sigbnals
 above threshold. The check is just that there are digits.
 Hits : The hit histograms are checked to see that they are not
 empty. They contain a lot of detailed information on the
 energyloss model (they were used to debug the AliRoot TPC use of
 FLUKA).

 The check methods are simple:
 We do not know if it is bad that histograms are missing because
 this will always be the case for summable digits. So this check
 is not possible here.
 If digit histogram is empty (set error)
 If one of the hit histograms are empty (set error)
Double_t CheckREC(Int_t specie, TObjArray* list)
 This method checks the QA histograms associated with reconstruction

 For TPC this is:
 DigitsR :
 The digit histogram gives the ADC distribution for all sigbnals
 above threshold. The check is just that there are digits.
 RecPoints :
 The cluster histograms are meant to give an idea about the gain
 from the cluster charge and to indicate iof there are rows with
 noise clusters, i.e., they are very visual.

 The check methods are simple:
 If there are no histogram at all (set fatal)
 If digit histogram is there, but there are no digits (set error)
 If cluster histogram is there but there are less than 1000
    clusters (set warning)
 If there are more than 1000 clusters but no clusters for either short,
 medium, or long pads (set error)
Double_t CheckESD(Int_t specie, TObjArray* list)
 This method checks the QA histograms associated with ESDs
 (Note that there is aslo a globalQA which is running on all
  the ESD information so for now this is just a few basic
  histograms)

 The check methods are simple:
 If there are no histogram at all (set fatal)

void Init(const AliQAv1::DETECTORINDEX_t det)
 intialises QA and QA checker settings
SetQA(AliQAv1::ALITASK_t index, Double_t* value) const
 sets the QA according the return value of the Check
AliTPCQAChecker()
{;}
AliTPCQAChecker(const AliTPCQAChecker& qac)
{;}
virtual ~AliTPCQAChecker()
{;}
Int_t GetDebugLevel() const
{return fDebug;}
void SetDebugLevel(Int_t value)
{fDebug = value;}