ATLAS Offline Software
Public Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | List of all members
Trk::IDHitPlots Class Reference

#include <IDHitPlots.h>

Inheritance diagram for Trk::IDHitPlots:
Collaboration diagram for Trk::IDHitPlots:

Public Member Functions

 IDHitPlots (PlotBase *pParent, const std::string &sDir)
 
void fill (const xAOD::TrackParticle &trk)
 
void initialize ()
 
void finalize ()
 
void setDetailLevel (int iDetailLevel)
 
void RegisterSubPlot (PlotBase *pPlotBase)
 
std::vector< HistDataretrieveBookedHistograms ()
 Retrieve all booked histograms. More...
 
std::vector< TreeDataretrieveBookedTrees ()
 Retrieve all booked trees. More...
 
std::vector< EfficiencyDataretrieveBookedEfficiencies ()
 Retrieve all booked efficiency objects. More...
 
TTree * BookTree (const std::string &name, bool prependDir=true)
 Book a TTree. More...
 
std::string getDirectory ()
 

Public Attributes

Basic hit content of xAOD::TrackParticle
TH1nBLayerHits
 
TH1nPixelHits
 
TH1nPixelHoles
 
TH1nSCTHits
 
TH1nSCTHoles
 
TH1nTRTHits
 
TH1nTRTHighThresholdHits
 
Expert hit content of xAOD::TrackParticle
TH1nBLayerOutliers
 
TH1nBLayerSharedHits
 
TH1nBLayerSplitHits
 
TH1nPixelOutliers
 
TH1nPixelContribLayers
 
TH1nPixelSharedHits
 
TH1nPixelSplitHits
 
TH1nPixelGangedHits
 
TH1nSCTOutliers
 
TH1nSCTDoubleHoles
 
TH1nSCTSharedHits
 
TH1nTRTOutliers
 
TH1nTRTHighThresholdOutliers
 
TH1nPixelGangedHitsFlaggedFakes
 

Protected Attributes

std::vector< PlotBase * > m_vSubNodes
 
std::vector< HistDatam_vBookedHistograms
 
std::vector< TreeDatam_vBookedTrees
 
std::vector< EfficiencyDatam_vBookedEfficiencies
 
std::string m_sDirectory
 
int m_iDetailLevel
 

Private Member Functions

void init ()
 
void initializePlots ()
 
virtual void finalizePlots ()
 

Static Private Member Functions

static std::string constructPrefix (std::string dir, bool prependDir)
 

Detailed Description

Definition at line 13 of file IDHitPlots.h.

Constructor & Destructor Documentation

◆ IDHitPlots()

Trk::IDHitPlots::IDHitPlots ( PlotBase pParent,
const std::string &  sDir 
)
inline

Definition at line 15 of file IDHitPlots.h.

15 :PlotBase(pParent, sDir){ init();}

Member Function Documentation

◆ Book1D() [1/2]

TH1F * PlotBase::Book1D ( const std::string &  name,
const std::string &  labels,
int  nBins,
float  start,
float  end,
bool  prependDir = true 
)
inherited

Book a TH1D histogram.

Definition at line 88 of file PlotBase.cxx.

89  {
90  std::string prefix = constructPrefix(m_sDirectory, prependDir);
91  Bool_t oldstat = TH1::AddDirectoryStatus();
92  TH1::AddDirectory(false);
93  TH1F *hist = new TH1F((prefix + name).c_str(), labels.c_str(), nBins, start, end);
94  TH1::AddDirectory(oldstat);
95 
96  hist->Sumw2();
97  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
98  return hist;
99 }

◆ Book1D() [2/2]

TH1F * PlotBase::Book1D ( const std::string &  name,
TH1 refHist,
const std::string &  labels,
bool  prependDir = true 
)
inherited

Book a TH1D histogram using refHist as reference for number of bins and axis range.

Definition at line 102 of file PlotBase.cxx.

102  {
103  std::string prefix = constructPrefix(m_sDirectory, prependDir);
104  Bool_t oldstat = TH1::AddDirectoryStatus();
105  TH1::AddDirectory(false);
106  TH1F *hist = new TH1F((prefix + name).c_str(), labels.c_str(), refHist->GetNbinsX(),
107  refHist->GetXaxis()->GetXbins()->GetArray());
108  hist->Sumw2();
109  TH1::AddDirectory(oldstat);
110 
111 
112  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
113  return hist;
114 }

◆ Book2D() [1/3]

TH2F * PlotBase::Book2D ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
Double_t *  binsX,
int  nBinsY,
Double_t  startY,
Double_t  endY,
bool  prependDir = true 
)
inherited

Book a TH2D histogram with variable x axis binning.

Definition at line 138 of file PlotBase.cxx.

139  {
140  std::string prefix = constructPrefix(m_sDirectory, prependDir);
141  Bool_t oldstat = TH2::AddDirectoryStatus();
142  TH2::AddDirectory(false);
143  TH2F *hist = new TH2F((prefix + name).c_str(), labels.c_str(), nBinsX, binsX, nBinsY, startY, endY);
144  hist->Sumw2();
145  TH2::AddDirectory(oldstat);
146  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
147  return hist;
148 }

◆ Book2D() [2/3]

TH2F * PlotBase::Book2D ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float  startX,
float  endX,
int  nBinsY,
float  startY,
float  endY,
bool  prependDir = true 
)
inherited

Book a TH2D histogram.

Definition at line 117 of file PlotBase.cxx.

118  {
119  std::string prefix = constructPrefix(m_sDirectory, prependDir);
120  Bool_t oldstat = TH2::AddDirectoryStatus();
121  TH2::AddDirectory(false);
122  TH2F *hist = new TH2F((prefix + name).c_str(), labels.c_str(), nBinsX, startX, endX, nBinsY, startY, endY);
123  hist->Sumw2();
124  TH2::AddDirectory(oldstat);
125 
126 
127  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
128  return hist;
129 }

◆ Book2D() [3/3]

TH2F * PlotBase::Book2D ( const std::string &  name,
TH2 refHist,
const std::string &  labels,
bool  prependDir = true 
)
inherited

Book a TH2D histogram using refHist as reference for number of bins and axis range.

Definition at line 132 of file PlotBase.cxx.

132  {
133  return Book2D(name, labels, refHist->GetNbinsX(), refHist->GetXaxis()->GetXmin(), refHist->GetXaxis()->GetXmax(),
134  refHist->GetNbinsY(), refHist->GetYaxis()->GetXmin(), refHist->GetYaxis()->GetXmax(), prependDir);
135 }

◆ Book3D() [1/2]

TH3F * PlotBase::Book3D ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float  startX,
float  endX,
int  nBinsY,
float  startY,
float  endY,
int  nBinsZ,
float  startZ,
float  endZ,
bool  prependDir = true 
)
inherited

Book a TH3D histogram.

Definition at line 151 of file PlotBase.cxx.

152  {
153  std::string prefix = constructPrefix(m_sDirectory, prependDir);
154  Bool_t oldstat = TH3::AddDirectoryStatus();
155  TH3::AddDirectory(false);
156  TH3F *hist = new TH3F((prefix + name).c_str(),
157  labels.c_str(), nBinsX, startX, endX, nBinsY, startY, endY, nBinsZ, startZ, endZ);
158  hist->Sumw2();
159  TH3::AddDirectory(oldstat);
160  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
161  return hist;
162 }

◆ Book3D() [2/2]

TH3F * PlotBase::Book3D ( const std::string &  name,
TH3 refHist,
const std::string &  labels,
bool  prependDir = true 
)
inherited

Book a TH3D histogram using refHist as reference for number of bins and axis range.

Definition at line 165 of file PlotBase.cxx.

165  {
166  std::string prefix = constructPrefix(m_sDirectory, prependDir);
167  Bool_t oldstat = TH3::AddDirectoryStatus();
168  TH3::AddDirectory(false);
169  TH3F *hist = new TH3F((prefix + name).c_str(), labels.c_str(), refHist->GetNbinsX(),
170  refHist->GetXaxis()->GetXbins()->GetArray(), refHist->GetNbinsY(),
171  refHist->GetYaxis()->GetXbins()->GetArray(), refHist->GetNbinsZ(),
172  refHist->GetZaxis()->GetXbins()->GetArray());
173  TH3::AddDirectory(oldstat);
174 
175  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
176  return hist;
177 }

◆ BookTEfficiency() [1/2]

TEfficiency * PlotBase::BookTEfficiency ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
const float  xlo,
const float  xhi,
const bool  prependDir = true 
)
inherited

Book a (1-D) TEfficiency histogram.

Definition at line 251 of file PlotBase.cxx.

251  {
252  std::string prefix = constructPrefix(m_sDirectory, prependDir);
253  //Bool_t oldstat = TEfficiency::AddDirectoryStatus();
254  TEfficiency *hist = new TEfficiency((prefix + name).c_str(), labels.c_str(), nBinsX, xlo, xhi);
255  //hist->SetAutoSave(0);
256  //hist->SetAtoFlush(0);
257  hist->SetDirectory(nullptr);
258  m_vBookedEfficiencies.emplace_back(hist, m_sDirectory);
259  //TEfficiency::AddDirectory(oldstat);
260  return hist;
261 }

◆ BookTEfficiency() [2/2]

TEfficiency * PlotBase::BookTEfficiency ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
const float  xlo,
const float  xhi,
const int  nBinsy,
const float  ylo,
const float  yhi,
const bool  prependDir = true 
)
inherited

Book a (2-D) TEfficiency histogram.

Definition at line 264 of file PlotBase.cxx.

264  {
265  std::string prefix = constructPrefix(m_sDirectory, prependDir);
266 
267  TEfficiency *hist = new TEfficiency((prefix + name).c_str(), labels.c_str(), nBinsX, xlo, xhi, nBinsY, ylo, yhi);
268  hist->SetDirectory(nullptr);
269  m_vBookedEfficiencies.emplace_back(hist, m_sDirectory);
270 
271  return hist;
272 }

◆ BookTProfile() [1/2]

TProfile * PlotBase::BookTProfile ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float *  binsX,
bool  prependDir = true 
)
inherited

Book a TProfile histogram with variable binning in x-axis.

Definition at line 198 of file PlotBase.cxx.

198  {
199  std::string prefix = constructPrefix(m_sDirectory, prependDir);
200  TProfile *hist(nullptr);
201  Bool_t oldstat = TProfile::AddDirectoryStatus();
202  TProfile::AddDirectory(false);
203 
204  hist = new TProfile((prefix + name).c_str(), labels.c_str(), nBinsX, binsX);
205  TProfile::AddDirectory(oldstat);
206  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
207  return hist;
208 }

◆ BookTProfile() [2/2]

TProfile * PlotBase::BookTProfile ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
float  startX,
float  endX,
float  startY = -1,
float  endY = -1,
bool  prependDir = true,
bool  useRMS = false 
)
inherited

Book a TProfile histogram.

Definition at line 180 of file PlotBase.cxx.

181  {
182  std::string prefix = constructPrefix(m_sDirectory, prependDir);
183  TProfile *hist(nullptr);
184  Bool_t oldstat = TProfile::AddDirectoryStatus();
185  TProfile::AddDirectory(false);
186  std::string opt = useRMS ? "S" : "";
187  if ((startY == -1) and (endY == -1)) {
188  hist = new TProfile((prefix + name).c_str(), labels.c_str(), nBinsX, startX, endX, opt.c_str());
189  } else {
190  hist = new TProfile((prefix + name).c_str(), labels.c_str(), nBinsX, startX, endX, startY, endY, opt.c_str());
191  }
192  TProfile::AddDirectory(oldstat);
193  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
194  return hist;
195 }

◆ BookTProfile2D() [1/2]

TProfile2D * PlotBase::BookTProfile2D ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
const double  xlo,
const double  xhi,
const int  nBinsY,
const double  ylo,
const double  yhi,
bool  prependDir = true,
bool  useRMS = false 
)
inherited

Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.

Definition at line 225 of file PlotBase.cxx.

227  {
228  std::string prefix = constructPrefix(m_sDirectory, prependDir);
229  Bool_t oldstat = TProfile2D::AddDirectoryStatus();
230  TProfile2D::AddDirectory(false);
231  std::string opt = useRMS ? "S" : "";
232  TProfile2D *hist = new TProfile2D((prefix + name).c_str(), labels.c_str(), nBinsX, xlo, xhi, nBinsY, ylo, yhi, opt.c_str());
233  TProfile2D::AddDirectory(oldstat);
234  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
235  return hist;
236 }

◆ BookTProfile2D() [2/2]

TProfile2D * PlotBase::BookTProfile2D ( const std::string &  name,
const std::string &  labels,
const int  nBinsX,
double *  binsX,
const int  nBinsY,
double *  binsY,
bool  prependDir = true,
bool  useRMS = false 
)
inherited

Book a TProfile 2D histogram with variable binning in x-axis and limits in y-values.

Definition at line 239 of file PlotBase.cxx.

239  {
240  std::string prefix = constructPrefix(m_sDirectory, prependDir);
241  Bool_t oldstat = TProfile2D::AddDirectoryStatus();
242  TProfile2D::AddDirectory(false);
243  std::string opt = useRMS ? "S" : "";
244  TProfile2D *hist = new TProfile2D((prefix + name).c_str(), labels.c_str(), nBinsX, binsX, nBinsY, binsY, opt.c_str());
245  TProfile2D::AddDirectory(oldstat);
246  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
247  return hist;
248 }

◆ BookTProfileRangeY()

TProfile * PlotBase::BookTProfileRangeY ( const std::string &  name,
const std::string &  labels,
int  nBinsX,
double *  binsX,
double  startY,
double  endY,
bool  prependDir = true 
)
inherited

Book a TProfile histogram with variable binning in x-axis and limits in y-values.

Definition at line 211 of file PlotBase.cxx.

212  {
213  std::string prefix = constructPrefix(m_sDirectory, prependDir);
214  TProfile *hist(nullptr);
215  Bool_t oldstat = TProfile::AddDirectoryStatus();
216  TProfile::AddDirectory(false);
217 
218  hist = new TProfile((prefix + name).c_str(), labels.c_str(), (Int_t) nBinsX, binsX, startY, endY);
219  TProfile::AddDirectory(oldstat);
220  m_vBookedHistograms.emplace_back(hist, m_sDirectory);
221  return hist;
222 }

◆ BookTree()

TTree * PlotBase::BookTree ( const std::string &  name,
bool  prependDir = true 
)
inherited

Book a TTree.

Definition at line 275 of file PlotBase.cxx.

275  {
276  std::string prefix = constructPrefix(m_sDirectory, prependDir);
277  TTree *tree = new TTree((prefix + name).c_str(), "");
278 
279  tree->SetAutoSave(0);
280  tree->SetAutoFlush(0);
281  tree->SetDirectory(nullptr);
282  m_vBookedTrees.emplace_back(tree, m_sDirectory);
283  return tree;
284 }

◆ constructPrefix()

std::string PlotBase::constructPrefix ( std::string  dir,
bool  prependDir 
)
staticprivateinherited

Definition at line 287 of file PlotBase.cxx.

287  {
288  if (!prependDir) {
289  return "";
290  }
291  std::replace(dir.begin(), dir.end(), '/', '_');
292  return dir;
293 }

◆ fill()

void Trk::IDHitPlots::fill ( const xAOD::TrackParticle trk)

Definition at line 86 of file IDHitPlots.cxx.

86  {
87  uint8_t iBLayerHits(0), iPixHits(0), iSctHits(0), iTrtHits(0);
88  uint8_t iPixHoles(0), iSCTHoles(0), iTrtHTHits(0);
89 
91  nBLayerHits->Fill(iBLayerHits);
92  }
93  if (trk.summaryValue(iPixHits, xAOD::numberOfPixelHits)) {
94  nPixelHits->Fill(iPixHits);
95  }
96  if (trk.summaryValue(iSctHits, xAOD::numberOfSCTHits)) {
97  nSCTHits->Fill(iSctHits);
98  }
99  if (trk.summaryValue(iTrtHits, xAOD::numberOfTRTHits)) {
100  nTRTHits->Fill(iTrtHits);
101  }
102  if (trk.summaryValue(iPixHoles, xAOD::numberOfPixelHoles)) {
103  nPixelHoles->Fill(iPixHoles);
104  }
105  if (trk.summaryValue(iSCTHoles, xAOD::numberOfSCTHoles)) {
106  nSCTHoles->Fill(iSCTHoles);
107  }
108  if (trk.summaryValue(iTrtHTHits, xAOD::numberOfTRTHighThresholdHits)) {
109  nTRTHighThresholdHits->Fill(iTrtHTHits);
110  }
111 
112  // expert plots
113  if (m_iDetailLevel >= 100) {
114  uint8_t iBLayerOutliers(0), iBLayerShared(0), iBLayerSplit(0);
115  uint8_t iPixelOutliers(0), iPixelContribLayers(0), iPixelShared(0), iPixelSplit(0), iPixelGanged(0),
116  iPixelGangedFakes(0);
117  uint8_t iSCTOutliers(0), iSCTDoubleHoles(0), iSCTShared(0);
118  uint8_t iTRTOutliers(0), iTRTHTOutliers(0);
119  if (trk.summaryValue(iBLayerOutliers, xAOD::numberOfInnermostPixelLayerOutliers)) {
120  nBLayerOutliers->Fill(iBLayerOutliers);
121  }
123  nBLayerSharedHits->Fill(iBLayerShared);
124  }
126  nBLayerSplitHits->Fill(iBLayerSplit);
127  }
128  if (trk.summaryValue(iPixelOutliers, xAOD::numberOfPixelOutliers)) {
129  nPixelOutliers->Fill(iPixelOutliers);
130  }
131  if (trk.summaryValue(iPixelContribLayers, xAOD::numberOfContribPixelLayers)) {
132  nPixelContribLayers->Fill(iPixelContribLayers);
133  }
134  if (trk.summaryValue(iPixelShared, xAOD::numberOfPixelSharedHits)) {
135  nPixelSharedHits->Fill(iPixelShared);
136  }
137  if (trk.summaryValue(iPixelSplit, xAOD::numberOfPixelSplitHits)) {
138  nPixelSplitHits->Fill(iPixelSplit);
139  }
140  if (trk.summaryValue(iPixelGanged, xAOD::numberOfGangedPixels)) {
141  nPixelGangedHits->Fill(iPixelGanged);
142  }
143  if (trk.summaryValue(iPixelGangedFakes, xAOD::numberOfGangedFlaggedFakes)) {
144  nPixelGangedHitsFlaggedFakes->Fill(iPixelGangedFakes);
145  }
146  if (trk.summaryValue(iSCTOutliers, xAOD::numberOfSCTOutliers)) {
147  nSCTOutliers->Fill(iSCTOutliers);
148  }
149  if (trk.summaryValue(iSCTDoubleHoles, xAOD::numberOfSCTDoubleHoles)) {
150  nSCTDoubleHoles->Fill(iSCTDoubleHoles);
151  }
152  if (trk.summaryValue(iSCTShared, xAOD::numberOfSCTSharedHits)) {
153  nSCTSharedHits->Fill(iSCTShared);
154  }
155  if (trk.summaryValue(iTRTOutliers, xAOD::numberOfTRTOutliers)) {
156  nTRTOutliers->Fill(iTRTOutliers);
157  }
158  if (trk.summaryValue(iTRTHTOutliers, xAOD::numberOfTRTHighThresholdOutliers)) {
159  nTRTHighThresholdOutliers->Fill(iTRTHTOutliers);
160  }
161  }
162  }

◆ finalize()

void PlotBase::finalize ( )
inherited

Definition at line 41 of file PlotBase.cxx.

41  {
42  for (auto *subNode: m_vSubNodes) {
43  subNode->finalize();
44  }
45  finalizePlots();
46 }

◆ finalizePlots()

virtual void PlotBase::finalizePlots ( )
inlineprivatevirtualinherited

◆ getDirectory()

std::string PlotBase::getDirectory ( )
inlineinherited

Definition at line 87 of file PlotBase.h.

87 {return m_sDirectory;}

◆ init()

void Trk::IDHitPlots::init ( )
private

Definition at line 12 of file IDHitPlots.cxx.

12  {
13  nBLayerHits = nullptr;
14  nPixelHits = nullptr;
15  nPixelHoles = nullptr;
16  nSCTHits = nullptr;
17  nSCTHoles = nullptr;
18  nTRTHits = nullptr;
19  nTRTHighThresholdHits = nullptr;
20 
21  nBLayerOutliers = nullptr;
22  nBLayerSharedHits = nullptr;
23  nBLayerSplitHits = nullptr;
24  nPixelOutliers = nullptr;
25  nPixelContribLayers = nullptr;
26  nPixelSharedHits = nullptr;
27  nPixelSplitHits = nullptr;
28  nPixelGangedHits = nullptr;
29  nSCTOutliers = nullptr;
30  nSCTDoubleHoles = nullptr;
31  nSCTSharedHits = nullptr;
32  nTRTOutliers = nullptr;
33  nTRTHighThresholdOutliers = nullptr;
35  }

◆ initialize()

void PlotBase::initialize ( )
inherited

Definition at line 33 of file PlotBase.cxx.

33  {
34  for (auto *subNode: m_vSubNodes) {
35  subNode->initialize();
36  }
38 }

◆ initializePlots()

void Trk::IDHitPlots::initializePlots ( )
privatevirtual

Reimplemented from PlotBase.

Definition at line 38 of file IDHitPlots.cxx.

38  {
39  nBLayerHits = Book1D("HitContent_NBlayerHits", "Number of B-Layer clusters;Number of Clusters;Entries", 5, -0.5,
40  4.5, false);
41  nPixelHits = Book1D("HitContent_NPixelHits", "Number of Pixel clusters;Number of Clusters", 10, -0.5, 9.5, false);
42  nPixelHoles = Book1D("HitContent_NPixelHoles", "Number of Pixel holes;Number of Holes", 10, -0.5, 9.5, false);
43  nSCTHits = Book1D("HitContent_NSCTHits", "Number of SCT clusters;Number of Clusters.", 21, -0.5, 20.5, false);
44  nSCTHoles = Book1D("HitContent_NSCTHoles", "Number of SCT holes;Number of Holes", 21, -0.5, 20.5, false);
45  nTRTHits = Book1D("HitContent_NTRTHits", "Number of TRT clusters;Number of Hits", 51, -0.5, 50.5, false);
46  nTRTHighThresholdHits = Book1D("HitContent_NTRTHighThresholdHits",
47  "Number of TRT high threshold Hits;Number of Hits", 51, -0.5, 50.5, false);
48 
49  // debug plots
50  if (m_iDetailLevel >= 100) {
51  nBLayerOutliers = Book1D("HitContent_NBlayerOutliers", "Number of B-layer outliers;Number of Outliers;Entries", 5,
52  -0.5, 4.5, false);
53  ;
54  nBLayerSharedHits = Book1D("HitContent_NBlayerSharedHits",
55  "Number of shared B-layer clusters;Number of Shared Clusters", 5, -0.5, 4.5, false);
56  nBLayerSplitHits = Book1D("HitContent_NBlayerSplitHits",
57  "Number of split B-layer clusters;Number of Split Clusters", 4, -0.5, 2.5, false);
58  nPixelOutliers = Book1D("HitContent_NPixelOutliers", "Number of Pixel outliers;Number of Outliers", 10, -0.5, 9.5,
59  false);
60  nPixelContribLayers = Book1D("HitContent_NPixelContribLayers",
61  "Number of contributed Pixel layers;Number of Layers", 5, -0.5, 4.5, false);
62  nPixelSharedHits = Book1D("HitContent_NPixelSharedHits",
63  "Number of shared Pixel clusters;Number of Shared Clusters", 10, -0.5, 9.5, false);
64  nPixelSplitHits = Book1D("HitContent_NPixelSplitHits", "Number of split Pixel clusters; Number of Split Clusters",
65  5, -0.5, 4.5, false);
66  nPixelGangedHits = Book1D("HitContent_NPixelGangedHits", "Number of ganged Pixel clusters;Number of Clusters", 10,
67  -0.5, 9.5, false);
68  nPixelGangedHitsFlaggedFakes = Book1D("HitContent_NPixelGangedHitsFlaggedFakes",
69  "Number of ganged flagged fake Pixel clusters;Number of Clusters", 10, -0.5,
70  9.5, false);
71  nSCTOutliers = Book1D("HitContent_NSCTOutliers", "Number of SCT Outliers;Number of Outliers", 21, -0.5, 20.5,
72  false);
73  nSCTDoubleHoles = Book1D("HitContent_NSCTDoubleHoles", "Number of SCT double holes;Number of Double Holes", 21,
74  -0.5, 20.5, false);
75  nSCTSharedHits = Book1D("HitContent_NSCTSharedHits", "Number of shared SCT clusters;Number of Shared Clusters",
76  21, -0.5, 20.5, false);
77  nTRTOutliers = Book1D("HitContent_NTRTOutliers", "Number of TRT outliers;Number of Outliers", 51, -0.5, 50.5,
78  false);
79  nTRTHighThresholdOutliers = Book1D("HitContent_NTRTHighThresholdOutliers",
80  "Number of TRT High Threshold outliers;Number of Outliers", 51, -0.5, 50.5,
81  false);
82  }
83  }

◆ RegisterSubPlot()

void PlotBase::RegisterSubPlot ( PlotBase pPlotBase)
inlineinherited

Definition at line 40 of file PlotBase.h.

40 {m_vSubNodes.push_back(pPlotBase);}

◆ retrieveBookedEfficiencies()

std::vector< EfficiencyData > PlotBase::retrieveBookedEfficiencies ( )
inherited

Retrieve all booked efficiency objects.

Definition at line 77 of file PlotBase.cxx.

77  {
78  std::vector<EfficiencyData> vBookedEfficiencies = m_vBookedEfficiencies;
79  for (const auto &subNode: m_vSubNodes) {
80  std::vector<EfficiencyData> subNodeHists = subNode->retrieveBookedEfficiencies();
81  vBookedEfficiencies.insert(vBookedEfficiencies.end(), subNodeHists.begin(), subNodeHists.end());
82  }
83  return vBookedEfficiencies;
84 }

◆ retrieveBookedHistograms()

std::vector< HistData > PlotBase::retrieveBookedHistograms ( )
inherited

Retrieve all booked histograms.

Definition at line 57 of file PlotBase.cxx.

57  {
58  std::vector<HistData> vBookedHistograms = m_vBookedHistograms;
59  for (const auto &subNode: m_vSubNodes) {
60  std::vector<HistData> subNodeHists = subNode->retrieveBookedHistograms();
61  vBookedHistograms.insert(vBookedHistograms.end(), subNodeHists.begin(), subNodeHists.end());
62  }
63  return vBookedHistograms;
64 }

◆ retrieveBookedTrees()

std::vector< TreeData > PlotBase::retrieveBookedTrees ( )
inherited

Retrieve all booked trees.

Definition at line 67 of file PlotBase.cxx.

67  {
68  std::vector<TreeData> vBookedTrees = m_vBookedTrees;
69  for (auto *subNode: m_vSubNodes) {
70  std::vector<TreeData> subNodeTrees = subNode->retrieveBookedTrees();
71  vBookedTrees.insert(vBookedTrees.end(), subNodeTrees.begin(), subNodeTrees.end());
72  }
73  return vBookedTrees;
74 }

◆ setDetailLevel()

void PlotBase::setDetailLevel ( int  iDetailLevel)
inherited

Definition at line 49 of file PlotBase.cxx.

49  {
50  for (auto *subNode: m_vSubNodes) {
51  subNode->setDetailLevel(iDetailLevel);
52  }
53  m_iDetailLevel = iDetailLevel;
54 }

Member Data Documentation

◆ m_iDetailLevel

int PlotBase::m_iDetailLevel
protectedinherited

Definition at line 100 of file PlotBase.h.

◆ m_sDirectory

std::string PlotBase::m_sDirectory
protectedinherited

Definition at line 99 of file PlotBase.h.

◆ m_vBookedEfficiencies

std::vector<EfficiencyData> PlotBase::m_vBookedEfficiencies
protectedinherited

Definition at line 98 of file PlotBase.h.

◆ m_vBookedHistograms

std::vector<HistData> PlotBase::m_vBookedHistograms
protectedinherited

Definition at line 96 of file PlotBase.h.

◆ m_vBookedTrees

std::vector<TreeData> PlotBase::m_vBookedTrees
protectedinherited

Definition at line 97 of file PlotBase.h.

◆ m_vSubNodes

std::vector<PlotBase*> PlotBase::m_vSubNodes
protectedinherited

Definition at line 95 of file PlotBase.h.

◆ nBLayerHits

TH1* Trk::IDHitPlots::nBLayerHits

Definition at line 20 of file IDHitPlots.h.

◆ nBLayerOutliers

TH1* Trk::IDHitPlots::nBLayerOutliers

Definition at line 31 of file IDHitPlots.h.

◆ nBLayerSharedHits

TH1* Trk::IDHitPlots::nBLayerSharedHits

Definition at line 32 of file IDHitPlots.h.

◆ nBLayerSplitHits

TH1* Trk::IDHitPlots::nBLayerSplitHits

Definition at line 33 of file IDHitPlots.h.

◆ nPixelContribLayers

TH1* Trk::IDHitPlots::nPixelContribLayers

Definition at line 35 of file IDHitPlots.h.

◆ nPixelGangedHits

TH1* Trk::IDHitPlots::nPixelGangedHits

Definition at line 38 of file IDHitPlots.h.

◆ nPixelGangedHitsFlaggedFakes

TH1* Trk::IDHitPlots::nPixelGangedHitsFlaggedFakes

Definition at line 44 of file IDHitPlots.h.

◆ nPixelHits

TH1* Trk::IDHitPlots::nPixelHits

Definition at line 21 of file IDHitPlots.h.

◆ nPixelHoles

TH1* Trk::IDHitPlots::nPixelHoles

Definition at line 22 of file IDHitPlots.h.

◆ nPixelOutliers

TH1* Trk::IDHitPlots::nPixelOutliers

Definition at line 34 of file IDHitPlots.h.

◆ nPixelSharedHits

TH1* Trk::IDHitPlots::nPixelSharedHits

Definition at line 36 of file IDHitPlots.h.

◆ nPixelSplitHits

TH1* Trk::IDHitPlots::nPixelSplitHits

Definition at line 37 of file IDHitPlots.h.

◆ nSCTDoubleHoles

TH1* Trk::IDHitPlots::nSCTDoubleHoles

Definition at line 40 of file IDHitPlots.h.

◆ nSCTHits

TH1* Trk::IDHitPlots::nSCTHits

Definition at line 23 of file IDHitPlots.h.

◆ nSCTHoles

TH1* Trk::IDHitPlots::nSCTHoles

Definition at line 24 of file IDHitPlots.h.

◆ nSCTOutliers

TH1* Trk::IDHitPlots::nSCTOutliers

Definition at line 39 of file IDHitPlots.h.

◆ nSCTSharedHits

TH1* Trk::IDHitPlots::nSCTSharedHits

Definition at line 41 of file IDHitPlots.h.

◆ nTRTHighThresholdHits

TH1* Trk::IDHitPlots::nTRTHighThresholdHits

Definition at line 26 of file IDHitPlots.h.

◆ nTRTHighThresholdOutliers

TH1* Trk::IDHitPlots::nTRTHighThresholdOutliers

Definition at line 43 of file IDHitPlots.h.

◆ nTRTHits

TH1* Trk::IDHitPlots::nTRTHits

Definition at line 25 of file IDHitPlots.h.

◆ nTRTOutliers

TH1* Trk::IDHitPlots::nTRTOutliers

Definition at line 42 of file IDHitPlots.h.


The documentation for this class was generated from the following files:
PlotBase::constructPrefix
static std::string constructPrefix(std::string dir, bool prependDir)
Definition: PlotBase.cxx:287
xAOD::numberOfPixelHoles
@ numberOfPixelHoles
number of pixel layers on track with absence of hits [unit8_t].
Definition: TrackingPrimitives.h:261
WritePulseShapeToCool.yhi
yhi
Definition: WritePulseShapeToCool.py:153
replace
std::string replace(std::string s, const std::string &s2, const std::string &s3)
Definition: hcg.cxx:307
PlotBase::m_iDetailLevel
int m_iDetailLevel
Definition: PlotBase.h:100
xAOD::numberOfInnermostPixelLayerSplitHits
@ numberOfInnermostPixelLayerSplitHits
number of Pixel 0th layer barrel hits split by cluster splitting
Definition: TrackingPrimitives.h:240
PlotBase::m_vBookedHistograms
std::vector< HistData > m_vBookedHistograms
Definition: PlotBase.h:96
PlotBase::Book1D
TH1F * Book1D(const std::string &name, const std::string &labels, int nBins, float start, float end, bool prependDir=true)
Book a TH1D histogram.
Definition: PlotBase.cxx:88
xAOD::numberOfSCTSharedHits
@ numberOfSCTSharedHits
number of SCT hits shared by several tracks [unit8_t].
Definition: TrackingPrimitives.h:272
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:575
Trk::IDHitPlots::nPixelSharedHits
TH1 * nPixelSharedHits
Definition: IDHitPlots.h:36
Trk::IDHitPlots::nTRTHighThresholdHits
TH1 * nTRTHighThresholdHits
Definition: IDHitPlots.h:26
TH2F
Definition: rootspy.cxx:420
Trk::IDHitPlots::nPixelSplitHits
TH1 * nPixelSplitHits
Definition: IDHitPlots.h:37
python.copyTCTOutput.sDir
sDir
Definition: copyTCTOutput.py:60
xAOD::numberOfGangedPixels
@ numberOfGangedPixels
number of pixels which have a ganged ambiguity [unit8_t].
Definition: TrackingPrimitives.h:264
xAOD::numberOfGangedFlaggedFakes
@ numberOfGangedFlaggedFakes
number of Ganged Pixels flagged as fakes [unit8_t].
Definition: TrackingPrimitives.h:265
plotmaker.hist
hist
Definition: plotmaker.py:148
xAOD::TrackParticle_v1::summaryValue
bool summaryValue(uint8_t &value, const SummaryType &information) const
Accessor for TrackSummary values.
Definition: TrackParticle_v1.cxx:736
mergePhysValFiles.start
start
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:14
PlotBase::initializePlots
virtual void initializePlots()
Definition: PlotBase.h:90
PlotBase::m_sDirectory
std::string m_sDirectory
Definition: PlotBase.h:99
PlotBase::m_vBookedEfficiencies
std::vector< EfficiencyData > m_vBookedEfficiencies
Definition: PlotBase.h:98
tree
TChain * tree
Definition: tile_monitor.h:30
TProfile2D
Definition: rootspy.cxx:531
PlotBase::Book2D
TH2F * Book2D(const std::string &name, const std::string &labels, int nBinsX, float startX, float endX, int nBinsY, float startY, float endY, bool prependDir=true)
Book a TH2D histogram.
Definition: PlotBase.cxx:117
Trk::IDHitPlots::nSCTDoubleHoles
TH1 * nSCTDoubleHoles
Definition: IDHitPlots.h:40
xAOD::numberOfPixelHits
@ numberOfPixelHits
these are the pixel hits, including the b-layer [unit8_t].
Definition: TrackingPrimitives.h:259
xAOD::numberOfTRTHits
@ numberOfTRTHits
number of TRT hits [unit8_t].
Definition: TrackingPrimitives.h:275
Trk::IDHitPlots::nPixelHoles
TH1 * nPixelHoles
Definition: IDHitPlots.h:22
python.TrigEgammaMonitorHelper.TH2F
def TH2F(name, title, nxbins, bins_par2, bins_par3, bins_par4, bins_par5=None, bins_par6=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:45
Trk::IDHitPlots::nPixelHits
TH1 * nPixelHits
Definition: IDHitPlots.h:21
PlotBase::PlotBase
PlotBase(PlotBase *parent, const std::string &sDir)
Definition: PlotBase.cxx:23
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
xAOD::numberOfTRTHighThresholdHits
@ numberOfTRTHighThresholdHits
number of TRT hits which pass the high threshold (only xenon counted) [unit8_t].
Definition: TrackingPrimitives.h:278
Trk::IDHitPlots::nSCTSharedHits
TH1 * nSCTSharedHits
Definition: IDHitPlots.h:41
xAOD::numberOfInnermostPixelLayerOutliers
@ numberOfInnermostPixelLayerOutliers
number of 0th layer barrel outliers
Definition: TrackingPrimitives.h:238
Trk::IDHitPlots::nPixelOutliers
TH1 * nPixelOutliers
Definition: IDHitPlots.h:34
xAOD::numberOfTRTHighThresholdOutliers
@ numberOfTRTHighThresholdOutliers
number of TRT high threshold outliers (only xenon counted) [unit8_t].
Definition: TrackingPrimitives.h:281
beamspotnt.labels
list labels
Definition: bin/beamspotnt.py:1447
PlotBase::m_vSubNodes
std::vector< PlotBase * > m_vSubNodes
Definition: PlotBase.h:95
xAOD::numberOfPixelSharedHits
@ numberOfPixelSharedHits
number of Pixel all-layer hits shared by several tracks [unit8_t].
Definition: TrackingPrimitives.h:262
Trk::IDHitPlots::nTRTHighThresholdOutliers
TH1 * nTRTHighThresholdOutliers
Definition: IDHitPlots.h:43
Trk::IDHitPlots::nBLayerSharedHits
TH1 * nBLayerSharedHits
Definition: IDHitPlots.h:32
WritePulseShapeToCool.xhi
xhi
Definition: WritePulseShapeToCool.py:152
python.TrigEgammaMonitorHelper.TProfile
def TProfile(*args, **kwargs)
Definition: TrigEgammaMonitorHelper.py:81
ChangeHistoRange.binsY
list binsY
Definition: ChangeHistoRange.py:59
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
Trk::IDHitPlots::nSCTHits
TH1 * nSCTHits
Definition: IDHitPlots.h:23
xAOD::numberOfPixelOutliers
@ numberOfPixelOutliers
these are the pixel outliers, including the b-layer [unit8_t].
Definition: TrackingPrimitives.h:260
WritePulseShapeToCool.xlo
xlo
Definition: WritePulseShapeToCool.py:133
xAOD::numberOfPixelSplitHits
@ numberOfPixelSplitHits
number of Pixel all-layer hits split by cluster splitting [unit8_t].
Definition: TrackingPrimitives.h:263
xAOD::numberOfSCTHoles
@ numberOfSCTHoles
number of SCT holes [unit8_t].
Definition: TrackingPrimitives.h:270
TH1::Fill
int Fill(double)
Definition: rootspy.cxx:285
WritePulseShapeToCool.ylo
ylo
Definition: WritePulseShapeToCool.py:134
beamspotman.dir
string dir
Definition: beamspotman.py:623
Trk::IDHitPlots::nBLayerOutliers
TH1 * nBLayerOutliers
Definition: IDHitPlots.h:31
dumpTgcDigiJitter.nBins
list nBins
Definition: dumpTgcDigiJitter.py:29
Trk::IDHitPlots::nSCTHoles
TH1 * nSCTHoles
Definition: IDHitPlots.h:24
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
pmontree.opt
opt
Definition: pmontree.py:16
Trk::IDHitPlots::nPixelGangedHits
TH1 * nPixelGangedHits
Definition: IDHitPlots.h:38
TH3F
Definition: rootspy.cxx:495
TProfile
Definition: rootspy.cxx:515
Trk::IDHitPlots::nPixelContribLayers
TH1 * nPixelContribLayers
Definition: IDHitPlots.h:35
Trk::IDHitPlots::nTRTOutliers
TH1 * nTRTOutliers
Definition: IDHitPlots.h:42
Trk::IDHitPlots::init
void init()
Definition: IDHitPlots.cxx:12
xAOD::numberOfTRTOutliers
@ numberOfTRTOutliers
number of TRT outliers [unit8_t].
Definition: TrackingPrimitives.h:276
TH1F
Definition: rootspy.cxx:320
xAOD::numberOfSCTOutliers
@ numberOfSCTOutliers
number of SCT outliers [unit8_t].
Definition: TrackingPrimitives.h:269
Trk::IDHitPlots::nTRTHits
TH1 * nTRTHits
Definition: IDHitPlots.h:25
xAOD::numberOfInnermostPixelLayerSharedHits
@ numberOfInnermostPixelLayerSharedHits
number of Pixel 0th layer barrel hits shared by several tracks.
Definition: TrackingPrimitives.h:239
xAOD::numberOfContribPixelLayers
@ numberOfContribPixelLayers
number of contributing layers of the pixel detector [unit8_t].
Definition: TrackingPrimitives.h:230
xAOD::numberOfSCTHits
@ numberOfSCTHits
number of hits in SCT [unit8_t].
Definition: TrackingPrimitives.h:268
ChangeHistoRange.binsX
list binsX
Definition: ChangeHistoRange.py:56
python.TrigEgammaMonitorHelper.TH1F
def TH1F(name, title, nxbins, bins_par2, bins_par3=None, path='', **kwargs)
Definition: TrigEgammaMonitorHelper.py:24
Trk::IDHitPlots::nBLayerHits
TH1 * nBLayerHits
Definition: IDHitPlots.h:20
xAOD::numberOfSCTDoubleHoles
@ numberOfSCTDoubleHoles
number of Holes in both sides of a SCT module [unit8_t].
Definition: TrackingPrimitives.h:271
Trk::IDHitPlots::nSCTOutliers
TH1 * nSCTOutliers
Definition: IDHitPlots.h:39
Trk::IDHitPlots::nPixelGangedHitsFlaggedFakes
TH1 * nPixelGangedHitsFlaggedFakes
Definition: IDHitPlots.h:44
PlotBase::finalizePlots
virtual void finalizePlots()
Definition: PlotBase.h:91
PlotBase::m_vBookedTrees
std::vector< TreeData > m_vBookedTrees
Definition: PlotBase.h:97
xAOD::numberOfInnermostPixelLayerHits
@ numberOfInnermostPixelLayerHits
these are the hits in the 0th pixel barrel layer
Definition: TrackingPrimitives.h:237
Trk::IDHitPlots::nBLayerSplitHits
TH1 * nBLayerSplitHits
Definition: IDHitPlots.h:33