19 void ConfigHook()
override;
20 void StartHook(hipo::banklist& banks)
override;
21 bool RunHook(hipo::banklist& banks)
const override;
32 hipo::bank
const& particle_bank,
33 hipo::bank
const& config_bank,
34 hipo::bank& result_bank)
const;
63 std::optional<int>
const FindScatteredLepton(hipo::bank
const& particle_bank,
concurrent_key_t const key)
const;
66 hipo::banklist::size_type b_particle;
67 hipo::banklist::size_type b_config;
68 hipo::banklist::size_type b_result;
91 enum method_reconstruction {
94 enum method_lepton_finder {
95 highest_energy_FD_trigger,
100 mutable std::unique_ptr<ConcurrentParam<int>> o_runnum;
101 mutable std::unique_ptr<ConcurrentParam<int>> o_beam_pdg;
102 mutable std::unique_ptr<ConcurrentParam<int>> o_target_pdg;
103 mutable std::unique_ptr<ConcurrentParam<double>> o_beam_mass;
104 mutable std::unique_ptr<ConcurrentParam<double>> o_target_mass;
105 mutable std::unique_ptr<ConcurrentParam<std::vector<double>>> o_beam_PxPyPzM;
106 mutable std::unique_ptr<ConcurrentParam<std::vector<double>>> o_target_PxPyPzM;
107 std::string o_particle_bank;
108 double o_theta_between_FD_and_FT;
109 method_reconstruction o_method_reconstruction;
110 method_lepton_finder o_method_lepton_finder;
113 std::unique_ptr<Keysmith<int>> m_keysmith;
124 std::string
const id,
125 std::unique_ptr<Logger>
const& log,
126 std::string
const name,
127 std::vector<double>
const direction,
132 , direction(direction)
140 std::string
const id;
141 std::unique_ptr<Logger>
const&
m_log;
142 std::string
const name;
143 std::vector<double>
const direction{};
146 double energy = -1.0;
InclusiveKinematicsVars ComputeFromLepton(vector_element_t const lepton_px, vector_element_t const lepton_py, vector_element_t const lepton_pz, concurrent_key_t const key) const
Action Function: compute kinematics from the scattered lepton.