Belle II Software development
WireEfficiencyAlgorithm.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#pragma once
10
11#include <TEfficiency.h>
12#include <calibration/CalibrationAlgorithm.h>
13#include <framework/database/DBObjPtr.h>
14
15#include <cdc/dbobjects/CDCGeometry.h>
16#include <cdc/dbobjects/CDCBadWires.h>
17
18#include "string"
19
20namespace Belle2 {
25 namespace CDC {
30 public:
35
37 void setHistFileName(const std::string& name) {m_outputFileName = "histWireEff_" + name + ".root";}
38 protected:
40 EResult calibrate() override;
42 bool buildEfficiencies();
44 void detectBadWires();
46 double chiTest(TGraphAsymmErrors* graph1, TGraphAsymmErrors* graph2, double minVale, double maxValue);
47 private:
48 TList* m_efficiencyList = new TList();
49 std::string m_outputFileName = "wire_efficiencies.root";
52 };
53
54
55 }
57}
Database object for bad wires.
Definition: CDCBadWires.h:27
Class for Wire Efficiency estimation.
TList * m_efficiencyList
TList of efficiencies.
double chiTest(TGraphAsymmErrors *graph1, TGraphAsymmErrors *graph2, double minVale, double maxValue)
chitest
CDCBadWires * m_badWireList
BadWireList that willbe built.
DBObjPtr< CDCGeometry > m_cdcGeo
Geometry of CDC.
void setHistFileName(const std::string &name)
Set name for histogram output.
EResult calibrate() override
Run algo on data.
bool buildEfficiencies()
create 2D TEfficiency for each wire and return True if more than 1000 entries
std::string m_outputFileName
name of the output file
Base class for calibration algorithms.
EResult
The result of calibration.
Class for accessing objects in the database.
Definition: DBObjPtr.h:21
Abstract base class for different kinds of events.