Iguana 0.0.0
Implementation Guardian of Analysis Algorithms
Loading...
Searching...
No Matches
Validator.h
1#pragma once
2
4#include "iguana/algorithms/Validator.h"
5
6#include <TCanvas.h>
7#include <TFile.h>
8#include <TH2.h>
9
10namespace iguana::clas12 {
11
14 {
15
17
18 public:
19
20 void Start(hipo::banklist& banks) override;
21 void Run(hipo::banklist& banks) const override;
22 void Stop() override;
23
24 private:
25
26 hipo::banklist::size_type b_particle;
27 hipo::banklist::size_type b_sector;
28
29 double const m_p_max = 12.0;
30 double const m_deltaP_max = 1.0;
31 double const m_deltaP_zoom = 0.2;
32
33 std::vector<int> const u_pdg_list = {
34 particle::PDG::electron,
35 particle::PDG::pi_plus,
36 particle::PDG::pi_minus,
37 particle::PDG::proton};
38
39 TString m_output_file_basename;
40 TFile* m_output_file;
41 mutable std::unordered_map<int, std::vector<TH2D*>> u_deltaPvsP;
42 };
43
44}
#define DEFINE_IGUANA_VALIDATOR(VDOR_NAME, VDOR_FULL_NAME)
Type definitions for common objects used in algorithms.
Base class for all algorithm validators to inherit from.
Definition Validator.h:18
iguana::clas12::MomentumCorrection validator
Definition Validator.h:14
void Run(hipo::banklist &banks) const override
Run this algorithm for an event.
void Start(hipo::banklist &banks) override
Initialize this algorithm before any events are processed, with the intent to process banks
void Stop() override
Finalize this algorithm after all events are processed.
CLAS12 algorithms.
Definition Algorithm.h:5