const TString AliQA::fkgRefOCDBDirName = "Ref" ;
TString AliQA::fkgRefDataDirName = "" ;
const TString AliQA::fkgQARefOCDBDefault = "alien://folder=/alice/QA/20" ;
-const TString AliQA::fkgExpert = "QAExpErT" ;
+const TString AliQA::fkgExpert = "Expert" ;
+const UInt_t AliQA::fkgExpertBit = 16 ;
//____________________________________________________________________________
AliQA::AliQA() :
{
// returns the detector index corresponding to a given name
TString sname(name) ;
- TASKINDEX_t rv ;
+ TASKINDEX_t rv = kNULLTASKINDEX ;
for (Int_t tsk = 0; tsk < kNTASKINDEX ; tsk++) {
if ( GetTaskName(tsk) == sname ) {
rv = TASKINDEX_t(tsk) ;
}
}
if (! text.IsNull())
- printf(" %8s %4s 0x%4x, Problem signalled: %8s \n", GetDetName(det).Data(), GetAliTaskName(tsk), status, text.Data()) ;
+ printf(" %8s %4s 0x%4lx, Problem signalled: %8s \n", GetDetName(det).Data(), GetAliTaskName(tsk), status, text.Data()) ;
}
//_______________________________________________________________
static void Close() ;
static const char * GetAliTaskName(ALITASK_t tsk) ;
static const TString GetExpert() { return fkgExpert ; }
+ static const UInt_t GetExpertBit() { return fkgExpertBit ; }
static const TString GetLabLocalFile() { return fkgLabLocalFile ; }
static const TString GetLabLocalOCDB() { return fkgLabLocalOCDB ; }
static const TString GetLabAliEnOCDB() { return fkgLabAliEnOCDB ; }
static TString fgRTNames[] ; //! list of Run Type names
static TString fgTaskNames[] ; //! list of tasks names
static const TString fkgExpert ; //! name for the expert directory
+ static const UInt_t fkgExpertBit ; //! TObject bit identifing the object as "expert"
static const TString fkgLabLocalFile ; //! label to identify a file as local
static const TString fkgLabLocalOCDB ; //! label to identify a file as local OCDB
static const TString fkgLabAliEnOCDB ; //! label to identify a file as AliEn OCDB
return -1 ;
} else {
hist->SetDirectory(0) ;
- if (expert) {
- TString name(hist->GetTitle()) ;
- name.Append(AliQA::GetExpert()) ;
- hist->SetTitle(name) ;
- }
- list->AddAtAndExpand(hist, index) ;
+
+ if (expert)
+ hist->SetBit(AliQA::GetExpertBit()) ;
+
+ list->AddAtAndExpand(hist, index) ;
char * name = Form("%s_%s", list->GetName(), hist->GetName()) ;
TParameter<double> * p = new TParameter<double>(name, 9999.9999) ;
if(saveForCorr) {
subDir->cd() ;
if (list) {
TIter next(list) ;
- TH1 * obj ;
- while ( (obj = dynamic_cast<TH1 *>(next())) ) {
- TString name(obj->GetTitle()) ;
- if (!name.Contains(AliQA::GetExpert())) {
+ TObject * obj ;
+ while( (obj = next()) ) {
+ if (!obj->TestBit(AliQA::GetExpertBit()))
obj->Write() ;
- }
}
if (WriteExpert()) {
TDirectory * expertDir = subDir->GetDirectory(AliQA::GetExpert()) ;
if ( expertDir ) { // Write only if requested
expertDir->cd() ;
next.Reset() ;
- while ( (obj = dynamic_cast<TH1 *>(next())) ) {
- TString name(obj->GetTitle()) ;
- if (!name.Contains(AliQA::GetExpert()))
+ while( (obj = next()) ) {
+ if (!obj->TestBit(AliQA::GetExpertBit()))
continue ;
- name.ReplaceAll(AliQA::GetExpert(), "") ;
- obj->SetTitle(name) ;
- obj->Write() ;
+ obj->Write() ;
}
}
}
ifstream in("tempo.txt") ;
const Int_t runMax = 10 ;
TString file[AliQA::kNDET*runMax] ;
- Int_t run[AliQA::kNDET*runMax] = {-1} ;
Int_t index = 0 ;
while ( 1 ) {