GCC Code Coverage Report


Directory: ./
File: src/iguana/algorithms/clas12/ZVertexFilter/Validator.h
Date: 2025-05-30 18:32:38
Exec Total Coverage
Lines: 1 1 100.0%
Functions: 4 4 100.0%
Branches: 10 26 38.5%

Line Branch Exec Source
1 #pragma once
2
3 #include "iguana/algorithms/TypeDefs.h"
4 #include "iguana/algorithms/Validator.h"
5
6 #include <TFile.h>
7 #include <TH1.h>
8
9 namespace iguana::clas12 {
10
11 /// @brief `iguana::clas12::ZVertexFilter` validator
12 class ZVertexFilterValidator : public Validator
13 {
14
15
10/26
✓ Branch 0 (2→3) taken 1 times.
✗ Branch 1 (2→6) not taken.
✗ Branch 2 (5→7) not taken.
✓ Branch 3 (5→8) taken 1 times.
✓ Branch 4 (9→10) taken 1 times.
✗ Branch 5 (9→36) not taken.
✓ Branch 6 (10→11) taken 1 times.
✗ Branch 7 (10→17) not taken.
✓ Branch 8 (17→18) taken 1 times.
✗ Branch 9 (17→60) not taken.
✓ Branch 10 (18→19) taken 1 times.
✗ Branch 11 (18→56) not taken.
✓ Branch 12 (19→20) taken 1 times.
✗ Branch 13 (19→52) not taken.
✓ Branch 14 (20→21) taken 1 times.
✗ Branch 15 (20→48) not taken.
✓ Branch 16 (21→22) taken 1 times.
✗ Branch 17 (21→44) not taken.
✓ Branch 18 (28→29) taken 1 times.
✗ Branch 19 (28→44) not taken.
✗ Branch 20 (36→37) not taken.
✗ Branch 21 (36→43) not taken.
✗ Branch 22 (52→53) not taken.
✗ Branch 23 (52→55) not taken.
✗ Branch 24 (56→57) not taken.
✗ Branch 25 (56→59) not taken.
10 DEFINE_IGUANA_VALIDATOR(ZVertexFilterValidator, clas12::ZVertexFilterValidator)
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 }
49