Iguana 1.0.0
Implementation Guardian of Analysis Algorithms
Loading...
Searching...
No Matches
Validator.h
1#pragma once
2
4#include "iguana/algorithms/Validator.h"
5#include <Math/Vector4D.h>
6#include <TCanvas.h>
7#include <TFile.h>
8#include <TH1F.h>
9#include <map>
10
11namespace iguana::clas12 {
12
15 {
16
18
19 public:
20
21 void Start(hipo::banklist& banks) override;
22 bool Run(hipo::banklist& banks) const override;
23 void Stop() override;
24
25 private:
26
27 void FillHistograms(std::vector<ROOT::Math::PxPyPzEVector> const& photons, int idx) const;
28 void InitializeHistograms();
29 void ConfigureHistogram(TH1F* hist, int color);
30
31 hipo::banklist::size_type b_particle;
32
33 std::vector<int> const u_pdg_list = {
34 particle::PDG::electron,
35 particle::PDG::photon};
36
37 TString m_output_file_basename;
38 TFile* m_output_file;
39
40
41 std::map<int, TH1F*> h_Mgg;
42 std::map<int, TH1F*> h_P;
43 std::map<int, TH1F*> h_Th;
44 std::map<int, TH1F*> h_Phi;
45 };
46
47}
#define DEFINE_IGUANA_VALIDATOR(VDOR_NAME, VDOR_FULL_NAME)
common objects used in algorithms
Validator(std::string_view name="validator")
Definition Validator.h:27
iguana::clas12::PhotonGBTFilter validator
Definition Validator.h:15
void Stop() override
Finalize this algorithm after all events are processed.
void Start(hipo::banklist &banks) override
Initialize this algorithm before any events are processed, with the intent to process banks.
bool Run(hipo::banklist &banks) const override
Run Function: Process an event's hipo::banklist
General CLAS12 algorithms.
Definition Algorithm.h:5