3#include "iguana/algorithms/Algorithm.h"
23 void Start(hipo::banklist& banks)
override;
24 void Run(hipo::banklist& banks)
const override;
74 hipo::banklist::size_type b_particle;
75 hipo::banklist::size_type b_sector;
76 hipo::banklist::size_type b_config;
#define DEFINE_IGUANA_ALGORITHM(ALGO_NAME, ALGO_FULL_NAME)
Type definitions for common objects used in algorithms.
Base class for all algorithms to inherit from.
Algorithm: Momentum Corrections
double EnergyLossOutbending(vector_element_t const px, vector_element_t const py, vector_element_t const pz, int const pid) const
Action Function: Energy loss correction for outbending data
void Start(hipo::banklist &banks) override
Initialize this algorithm before any events are processed, with the intent to process banks
double EnergyLossInbending(vector_element_t const px, vector_element_t const py, vector_element_t const pz, int const pid) const
Action Function: Energy loss correction for inbending data
void Stop() override
Finalize this algorithm after all events are processed.
Momentum3 Transform(vector_element_t const px, vector_element_t const py, vector_element_t const pz, int const sec, int const pid, float const torus) const
Action Function: Apply the momentum correction
void Run(hipo::banklist &banks) const override
Run this algorithm for an event.
double CorrectionInbending(vector_element_t const px, vector_element_t const py, vector_element_t const pz, int const sec, int const pid) const
Action Function: Calculate the correction factor for inbending data
double CorrectionOutbending(vector_element_t const px, vector_element_t const py, vector_element_t const pz, int const sec, int const pid) const
Action Function: Calculate the correction factor for outbending data
double vector_element_t
Vector element type.