FileInfo.hh
Go to the documentation of this file.
1 
4 #pragma once
5 
6 #include "boca/units/Units.hh"
7 #include "boca/math/Number.hh"
8 #include "boca/io/Source.hh"
9 #include "boca/latex/Names.hh"
10 
11 namespace boca
12 {
13 
14 using namespace std::string_literals;
15 
22 class FileInfo
23 {
24 
25 public:
26 
27  FileInfo(std::vector<std::string> const& file_names = {}, boca::Names const& names = ""s, Number<boca::Crosssection> crosssection = 0_pb, boca::Mass const& mass = 0_eV);
28 
29  void SetPath(std::string const& path);
30 
31  void SetSource(boca::Source const& source);
32 
33  boca::Names Names() const;
34 
36 
37  boca::Mass Mass() const;
38 
39  std::string TaggerTreeName() const;
40 
41  std::string GeneratorTreeName() const;
42 
43  std::vector<std::string> Paths() const;
44 
45 private:
46 
47  std::vector<std::string> FileNames() const;
48 
49  latex::String LatexName() const;
50 
51  std::string FileSuffix() const;
52 
53  std::string Path() const;
54 
55  boca::Source Source() const;
56 
57  std::vector<std::string> file_names_;
58 
59  boca::Names names_;
60 
61  Number<boca::Crosssection> crosssection_;
62 
63  boca::Mass mass_ = massless;
64 
65  std::string path_ = "./";
66 
68 
69 };
70 
71 }
Definition: Names.hh:11
latex::String LatexName(Significance significance)
Definition: Significance.cpp:100
Definition: String.hh:45
Boosted Collider Analysis.
Definition: Analysis.hh:15
Input file infos.
Definition: FileInfo.hh:22
boost::units::quantity< barn::Area > Crosssection
Crosssection measured in barn.
Definition: Barn.hh:36
Mass const massless
Definition: ElectronVolt.hh:72
Energy Mass
Mass measured in electronvolt.
Definition: ElectronVolt.hh:62
Source
Definition: Source.hh:11