GCC Code Coverage Report


Directory: ./
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 5 / 0 / 5
Functions: 100.0% 3 / 0 / 3
Branches: 45.0% 9 / 0 / 20

src/iguana/algorithms/physics/Depolarization/Validator.h
Line Branch Exec Source
1 #pragma once
2
3 #include "iguana/algorithms/Validator.h"
4
5 #include <TCanvas.h>
6 #include <TFile.h>
7 #include <TH2.h>
8
9 namespace iguana::physics {
10
11 /// @brief `iguana::physics::Depolarization` validator
12 class DepolarizationValidator : public Validator
13 {
14
15
7/16
✓ Branch 2 → 3 taken 1 time.
✗ Branch 2 → 6 not taken.
✗ Branch 5 → 7 not taken.
✓ Branch 5 → 8 taken 1 time.
✓ Branch 9 → 10 taken 1 time.
✗ Branch 9 → 33 not taken.
✓ Branch 10 → 11 taken 1 time.
✗ Branch 10 → 17 not taken.
✓ Branch 17 → 18 taken 1 time.
✗ Branch 17 → 43 not taken.
✓ Branch 18 → 19 taken 1 time.
✗ Branch 18 → 41 not taken.
✓ Branch 25 → 26 taken 1 time.
✗ Branch 25 → 41 not taken.
✗ Branch 33 → 34 not taken.
✗ Branch 33 → 40 not taken.
9 DEFINE_IGUANA_VALIDATOR(DepolarizationValidator, physics::DepolarizationValidator)
16
17 private: // hooks
18 void StartHook(hipo::banklist& banks) override;
19 bool RunHook(hipo::banklist& banks) const override;
20 void StopHook() override;
21
22 private:
23
24 hipo::banklist::size_type b_inc_kin;
25 hipo::banklist::size_type b_depol;
26
27
2/4
✓ Branch 3 → 4 taken 60 times.
✗ Branch 3 → 5 not taken.
✓ Branch 7 → 8 taken 15 times.
✗ Branch 7 → 9 not taken.
180 struct Plot2D {
28 TH2D* hist;
29 std::function<double(hipo::bank const&, int const)> get_val;
30 };
31 std::vector<Plot2D> plots_vs_Q2;
32 std::vector<Plot2D> plots_vs_x;
33 std::vector<Plot2D> plots_vs_y;
34
35 TString m_output_file_basename;
36 TFile* m_output_file;
37 };
38
39 }
40