LArSoft  v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
LoaderToolBase.h
Go to the documentation of this file.
1 #ifndef LOADERTOOLBASE_H
2 #define LOADERTOOLBASE_H
3 
4 // art TOOL
7 
10 #include "fhiclcpp/ParameterSet.h"
11 
13 
14 #include <string>
15 #include <utility>
16 #include <vector>
17 
18 using std::string;
19 using std::vector;
20 
21 struct NuGraphInput {
22  NuGraphInput(string s, vector<int32_t> vi)
23  : input_name(s), isInt(true), input_int32_vec(std::move(vi))
24  {}
25  NuGraphInput(string s, vector<float> vf)
26  : input_name(s), isInt(false), input_float_vec(std::move(vf))
27  {}
28  string input_name;
29  bool isInt;
30  vector<int32_t> input_int32_vec;
31  vector<float> input_float_vec;
32 };
33 
35 
36 public:
40  virtual ~LoaderToolBase() noexcept = default;
41 
47  virtual void loadData(art::Event& e,
48  vector<art::Ptr<recob::Hit>>& hitlist,
49  vector<NuGraphInput>& inputs,
50  vector<vector<size_t>>& idsmap) = 0;
51 
52  void setDebugAndPlanes(bool d, vector<std::string>& p)
53  {
54  debug = d;
55  planes = p;
56  }
57 
58 protected:
59  bool debug;
60  vector<std::string> planes;
61 };
62 
63 #endif
NuGraphInput(string s, vector< int32_t > vi)
Declaration of signal hit object.
vector< float > input_float_vec
vector< std::string > planes
STL namespace.
vector< int32_t > input_int32_vec
string input_name
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
Definition: DumpUtils.h:289
NuGraphInput(string s, vector< float > vf)
void setDebugAndPlanes(bool d, vector< std::string > &p)
DebugStuff debug
Definition: DebugStruct.cxx:4
Float_t d
Definition: plot.C:235
Float_t e
Definition: plot.C:35