diff --git a/data/io/InputDataInfo.cxx b/data/io/InputDataInfo.cxx index 34af99f..c512a82 100644 --- a/data/io/InputDataInfo.cxx +++ b/data/io/InputDataInfo.cxx @@ -28,10 +28,10 @@ namespace Hal { InputDataInfo::InputDataInfo(TString file) : fListName(file) { - if (file.EndsWith(".list")) { + if (file.EndsWith(".list")) { // list file auto vec = Hal::Std::GetLinesFromFile(file, kTRUE); fFileNames.push_back(vec); - } else if (file.EndsWith(".xml")) { + } else if (file.EndsWith(".xml")) { // xml file XMLFile xmlFile(file); auto root = xmlFile.GetRootNode(); auto files = root->GetChild("files"); @@ -42,6 +42,12 @@ namespace Hal { fFileNames[i].push_back(list->GetChild(j)->GetValue()); } } + } else if (file.EndsWith("/")) { // directory + auto vec = Hal::Std::GetListOfFiles(file, "root", kTRUE, kTRUE); + for (auto singleFile : vec) { + std::vector row {singleFile}; + fFileNames.push_back(row); + } } else { fFileNames.resize(1); fFileNames[0].push_back(file); diff --git a/data/io/TriggerTask.h b/data/io/TriggerTask.h index 90d6aff..e32512e 100644 --- a/data/io/TriggerTask.h +++ b/data/io/TriggerTask.h @@ -11,11 +11,13 @@ #include "Task.h" -/** - * special class for fast data selection - works only with AnalysisManager - */ + namespace Hal { class Package; + /** + * special class for fast data selection - works only with AnalysisManager + * when trigger task return false the branches with status 0 are ignored, other tasks are not executed + */ class TriggerTask : public Task { Bool_t fGood = {kFALSE}; Bool_t fActive = {kFALSE};