run_write_task.cpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /* Copyright (C) 2019-2021 GSI, Universität Tübingen
  2. SPDX-License-Identifier: GPL-3.0-only
  3. Authors: Viktor Klochkov, Ilya Selyuzhenkov */
  4. #include "UserTaskWrite.hpp"
  5. #include <TaskManager.hpp>
  6. #include <iostream>
  7. using namespace AnalysisTree;
  8. void run_write_task(const std::string& filelist, const std::string& treename, const std::string& ofile, const std::string& otree);
  9. int main(int argc, char* argv[]) {
  10. if (argc < 5) {
  11. std::cout << "Error! Please use " << std::endl;
  12. std::cout << " ./example filelist input_treename output_filename output_treename" << std::endl;
  13. exit(EXIT_FAILURE);
  14. }
  15. const std::string filelist = argv[1];
  16. const std::string treename = argv[2];
  17. const std::string ofile = argv[3];
  18. const std::string otree = argv[4];
  19. run_write_task(filelist, treename, ofile, otree);
  20. return 0;
  21. }
  22. void run_write_task(const std::string& filelist, const std::string& treename, const std::string& ofile, const std::string& otree){
  23. auto* man = TaskManager::GetInstance();
  24. auto* task = new UserTaskWrite();
  25. man->AddTask(task);
  26. man->SetOutputName(ofile, otree);
  27. man->Init({filelist}, {treename});
  28. man->Run();
  29. man->Finish();
  30. }