3#include "iguana/algorithms/Algorithm.h"
4#include <Math/Vector3D.h>
5#include <Math/Vector4D.h>
31 void Start(hipo::banklist& banks)
override;
32 bool Run(hipo::banklist& banks)
const override;
42 hipo::bank
const& particle_bank,
43 hipo::bank
const& inc_kin_bank,
44 hipo::bank& result_bank)
const;
49 hipo::banklist::size_type b_particle;
50 hipo::banklist::size_type b_inc_kin;
51 hipo::banklist::size_type b_result;
65 std::set<int> o_hadron_pdgs;
#define DEFINE_IGUANA_ALGORITHM(ALGO_NAME, ALGO_FULL_NAME)
Algorithm(std::string_view name)
Algorithm: Calculate semi-inclusive hadron kinematic quantities
bool Run(hipo::banklist &banks) const override
Run Function: Process an event's hipo::banklist
void Start(hipo::banklist &banks) override
Initialize this algorithm before any events are processed, with the intent to process banks.
bool Run(hipo::bank const &particle_bank, hipo::bank const &inc_kin_bank, hipo::bank &result_bank) const
Run Function: Process an event's hipo::bank objects
void Stop() override
Finalize this algorithm after all events are processed.