Iguana 0.0.0
Implementation Guardian of Analysis Algorithms
Loading...
Searching...
No Matches
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 <TStyle.h>
9#include <Math/Vector4D.h>
10#include <map>
11
12namespace iguana::clas12 {
13
16 {
17
19
20 public:
21
22 void Start(hipo::banklist& banks) override;
23 void Run(hipo::banklist& banks) const override;
24 void Stop() override;
25
26 private:
27
28 void FillHistograms(const std::vector<ROOT::Math::PxPyPzEVector>& photons, int idx) const;
29 void InitializeHistograms();
30 void ConfigureHistogram(TH1F* hist, int color);
31
32 hipo::banklist::size_type b_particle;
33
34 std::vector<int> const u_pdg_list = {
35 particle::PDG::electron,
36 particle::PDG::photon};
37
38 TString m_output_file_basename;
39 TFile* m_output_file;
40
41
42 std::map<int, TH1F*> h_Mgg;
43 std::map<int, TH1F*> h_P;
44 std::map<int, TH1F*> h_Th;
45 std::map<int, TH1F*> h_Phi;
46
47 };
48
49}
50
#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::PhotonGBTFilter validator
Definition Validator.h:16
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