AnalysisTree
Loading...
Searching...
No Matches
PlainTreeFiller.hpp
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#ifndef ANALYSISTREE_PLAINTREEFILLER_H_
5#define ANALYSISTREE_PLAINTREEFILLER_H_
6
7#include <utility>
8
9#include "AnalysisTask.hpp"
10#include "Detector.hpp"
11#include "Variable.hpp"
12
13namespace AnalysisTree {
14
16 public:
17 PlainTreeFiller() = default;
18
19 void AddBranch(const std::string& branch_name);
20
21 void Init() override;
22 void Exec() override;
23 void Finish() override;
24
25 void SetOutputName(std::string file, std::string tree) {
26 file_name_ = std::move(file);
27 tree_name_ = std::move(tree);
28 }
29
30 void SetFieldsToIgnore(const std::vector<std::string>&& fields_to_ignore);
31
32 protected:
33 TFile* file_{nullptr};
34 TTree* plain_tree_{nullptr};
35
36 std::string file_name_{"PlainTree.root"};
37 std::string tree_name_{"PlainTree"};
38 std::string branch_name_;
39
40 std::vector<float> vars_{};
41 std::vector<std::string> fields_to_ignore_{};
42};
43
44}// namespace AnalysisTree
45
46#endif//ANALYSISTREE_PLAINTREEFILLER_H_
AnalysisTask is a Task which keeps list of AnalysisEntry-s It evaluates Variables according to the ru...
Definition AnalysisTask.hpp:21
Definition PlainTreeFiller.hpp:15
Cuts keep list of SimpleCuts. Logical AND is applied for all SimpleCut in the Cuts object.
Definition BranchConfig.cpp:10