31 for (
auto* task : *(this->GetListOfTasks())) {
34 LOG(info) <<
"Checking the task " << pQaTask->GetName();
36 pQaTask->ReadCheckListFromConfig();
41 LOG(info) << fName <<
" check-list:";
43 for (
auto* task : *(this->GetListOfTasks())) {
46 LOG(info) <<
"Check list for the task " << pQaTask->GetName();
47 const auto& mCheckList = pQaTask->GetCheckList();
48 for (
const auto& [entryName, flags] : mCheckList) {
49 LOG(info) <<
'\t' << left << setw(40) << entryName << right << setw(10)
50 << (flags.fResult ?
"\e[1;32mpassed\e[0m" :
"\e[1;31mfailed\e[0m")
51 << (flags.fStatus ?
" " :
" IGNORED ") << flags.fMsg;
61 for (
auto* task : *(this->GetListOfTasks())) {
64 LOG(info) <<
"Histograms benchmark for the task " << pQaTask->GetName();
65 pQaTask->CompareQaObjects();
80 LOG(info) <<
"CbmQaManager: using configuration file " <<
fsConfigName;
81 for (
auto* task : *(this->GetListOfTasks())) {
104 auto pFile = std::make_shared<TFile>(path,
"READONLY");
105 if (pFile->IsOpen()) {
107 LOG(info) << fName <<
": opening benchmark input file " <<
fpBenchmarkInput->GetName();
110 LOG(error) << fName <<
": benchmark input file " << path <<
" was not opened";
120 auto pFile = std::make_shared<TFile>(path,
"RECREATE");
121 if (pFile->IsOpen()) {
123 LOG(info) << fName <<
": opening benchmark output file " <<
fpBenchmarkOutput->GetName();
126 LOG(error) << fName <<
": benchmark output file " << path <<
" was not opened";
Manager task for other QA taska (implementation)
A base class for CBM QA task logic.
TString fsConfigName
Name of the configuration YAML file (passed to underlying QA tasks)
void Finish()
Action of the task in the end of the run.
std::shared_ptr< TFile > fpBenchmarkOutput
An output file for histograms cross-check.
void OpenBenchmarkInput(const TString &path)
Open cross-check file.
TString fsDefaultTag
Default tag (git SHA etc.)
void OpenBenchmarkOutput(const TString &path)
Open benchmark output file.
InitStatus Init()
Task initialization.
CbmQaManager(int verbose=1)
Constructor from parameters.
bool fStatus
Status of QA: true - all tasks passed, false - at least one of the task failed.
TString fsVersionTag
Version tag (git SHA etc.)
std::shared_ptr< TFile > fpBenchmarkInput
A benchmark file with default ROOT objects used for the cross-check.