ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TruthJetInput.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file TruthJetInput.h
1 #ifndef G4JET_TRUTHJETINPUT_H
2 #define G4JET_TRUTHJETINPUT_H
3 
4 #include "JetInput.h"
5 
6 #include "Jet.h"
7 
8 #include <iostream> // for cout, ostream
9 #include <vector>
10 
11 class PHCompositeNode;
12 
13 class TruthJetInput : public JetInput
14 {
15  public:
16  TruthJetInput(Jet::SRC input);
17  ~TruthJetInput() override {}
18 
23  void add_embedding_flag(const int embed_stream_id)
24  {
25  _embed_id.push_back(embed_stream_id);
26  }
27 
28  void identify(std::ostream& os = std::cout) override;
29 
30  Jet::SRC get_src() override { return _input; }
31 
32  std::vector<Jet*> get_input(PHCompositeNode* topNode) override;
33 
34  void set_eta_range(float eta_min, float eta_max)
35  {
36  _eta_min = eta_min;
37  _eta_max = eta_max;
38  }
39 
40  private:
42  float _eta_min;
43  float _eta_max;
44 
47  std::vector<int> _embed_id;
48 
49  bool use_embed_stream() { return _embed_id.size() > 0; }
50 };
51 
52 #endif