Loading [MathJax]/extensions/tex2jax.js
Iguana 0.8.0
Implementation Guardian of Analysis Algorithms
Validator.h
1#pragma once
2
3#include "iguana/algorithms/Validator.h"
5#include <TH1F.h>
6#include <TFile.h>
7#include <TCanvas.h>
8#include <Math/Vector4D.h>
9#include <map>
10
11namespace iguana::clas12 {
12
15 {
16
18
19 public:
20
21 void Start(hipo::banklist& banks) override;
22 void Run(hipo::banklist& banks) const override;
23 void Stop() override;
24
25 private:
26
27 void FillHistograms(const std::vector<ROOT::Math::PxPyPzEVector>& 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
48}
49
#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 Run(hipo::banklist &banks) const override
Run this algorithm for an event.
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
CLAS12 algorithms.
Definition Algorithm.h:5