27 void Start(hipo::banklist& banks)
override;
28 bool Run(hipo::banklist& banks)
const override;
37 hipo::bank& particleBank,
38 hipo::bank
const& caloBank,
39 hipo::bank
const& configBank)
const;
48 struct calo_row_data {
74 bool PidPurityPhotonFilter(
float const E,
float const Epcal,
float const theta)
const;
83 bool Filter(hipo::bank
const& particleBank, hipo::bank
const& caloBank, std::map<int, PhotonGBTFilter::calo_row_data> calo_map,
int const row,
int const runnum)
const;
90 bool ClassifyPhoton(std::vector<float>
const& input_data,
int const runnum)
const;
96 std::map<int, PhotonGBTFilter::calo_row_data> GetCaloMap(hipo::bank
const& bank)
const;
102 ROOT::Math::XYZVector GetParticleCaloVector(PhotonGBTFilter::calo_row_data calo_row)
const;
107 std::function<double(std::vector<float>
const&)> getModelFunction(
int runnum)
const;
110 hipo::banklist::size_type b_particle;
111 hipo::banklist::size_type b_calorimeter;
112 hipo::banklist::size_type b_config;
115 double o_threshold = 0.78;
121 static std::map<std::tuple<int, int, int>, std::function<double(std::vector<float>
const&)>>
const modelMap;
bool Run(hipo::bank &particleBank, hipo::bank const &caloBank, hipo::bank const &configBank) const
Run Function: Process an event's hipo::bank objects