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 <TFile.h>
7#include <TH1.h>
8
9namespace iguana::clas12 {
10
13 {
14
16
17 public:
18
19 void Start(hipo::banklist& banks) override;
20 void Run(hipo::banklist& banks) const override;
21 void Stop() override;
22
23 private:
24
25 hipo::banklist::size_type b_particle;
26
27 // add pdgs not to cut to check we're
28 // only cutting on right particles
29 std::vector<int> const u_pdg_list = {
30 particle::PDG::electron,
31 particle::PDG::pi_plus,
32 particle::PDG::pi_minus,
33 particle::PDG::proton,
34 particle::PDG::neutron};
35
36 std::vector<int> const u_pdgtocut_list = {
37 particle::PDG::electron};
38
39 std::vector<double> const u_cuts_list = {
40 -5,
41 5};
42
43 TString m_output_file_basename;
44 TFile* m_output_file;
45 mutable std::unordered_map<int, std::vector<TH1D*>> u_zvertexplots;
46 };
47
48}
#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::ZVertexFilter validator
Definition Validator.h:13
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