ATLAS Offline Software
Loading...
Searching...
No Matches
TreeShapeErrorGetter.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
9
10#ifndef LArSamples_TreeShapeErrorGetter_H
11#define LArSamples_TreeShapeErrorGetter_H
12
14
15
16#include <vector>
18
19class TH2D;
20class TFile;
21class TTree;
22class TString;
23
24namespace LArSamples {
25
26 class ShapeErrorData;
27 class ResidualCalculator;
28 class Interface;
29
31
32 public:
33
34 TreeShapeErrorGetter(const TString& fileName, bool recreate = false);
36 TreeShapeErrorGetter& operator = (const TreeShapeErrorGetter &) = delete;
37 virtual ~TreeShapeErrorGetter();
38
39 ShapeErrorData* shapeErrorData(unsigned int hash, CaloGain::CaloGain gain, const Residual* toExclude = 0) const;
40 ShapeErrorData* phiSymShapeErrorData(short ring, CaloGain::CaloGain gain, const Residual* toExclude = 0) const;
41
42 int addCell(const ResidualCalculator& calc, CaloGain::CaloGain gain);
43 int addRing(const ResidualCalculator& calc, CaloGain::CaloGain gain);
44
45 void dump(CaloGain::CaloGain gain) const;
46 TH2D* correlate(const TreeShapeErrorGetter& other, CaloGain::CaloGain gain, unsigned short sample, bool xip,
47 unsigned int nBins, double xMin, double xMax) const;
48
49 bool compare(const TreeShapeErrorGetter& other, const TString& fileName, const Interface* tmpl = 0) const;
50
51 const ResidualCalculator* cellCalc() const { return m_cellCalc; }
52 const ResidualCalculator* ringCalc() const { return m_ringCalc; }
53
54 TTree* cellTree(CaloGain::CaloGain gain) const;
55 TTree* ringTree(CaloGain::CaloGain gain) const;
56
57 static bool merge(const TString& listFile, const TString& outputFile);
58 static bool merge(const std::vector<const TreeShapeErrorGetter*>& getters, const TString& outputFile);
59
60 TFile* file() const { return m_file; }
61
62 private:
63
64 TFile* m_file;
65 std::vector<TTree*> m_cellTrees;
66 std::vector<TTree*> m_ringTrees;
68 };
69}
70#endif
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
the btagging tool(s).
const ResidualCalculator * cellCalc() const
TreeShapeErrorGetter(const TreeShapeErrorGetter &)=delete
int addCell(const ResidualCalculator &calc, CaloGain::CaloGain gain)
TreeShapeErrorGetter(const TString &fileName, bool recreate=false)
bool compare(const TreeShapeErrorGetter &other, const TString &fileName, const Interface *tmpl=0) const
const ResidualCalculator * ringCalc() const
TH2D * correlate(const TreeShapeErrorGetter &other, CaloGain::CaloGain gain, unsigned short sample, bool xip, unsigned int nBins, double xMin, double xMax) const
ShapeErrorData * shapeErrorData(unsigned int hash, CaloGain::CaloGain gain, const Residual *toExclude=0) const
ShapeErrorData * phiSymShapeErrorData(short ring, CaloGain::CaloGain gain, const Residual *toExclude=0) const
int addRing(const ResidualCalculator &calc, CaloGain::CaloGain gain)
Liquid Argon class for standalone storage of cell shape information.
-event-from-file
Definition merge.py:1