14#include <dqm/analysis/modules/DQMHistAnalysisV0.h>
46 B2INFO(
"DQMHistAnalysisV0: initialized.");
49 for (
int i = 0; i < 32; i++) {
50 m_c_xvsy[i] =
new TCanvas(Form(
"V0Object/c_xvsy[%i]", i), Form(
"c_xvsy[%i]", i), 800, 800);
53 m_c_xvsz =
new TCanvas(
"V0Object/c_xvsz",
"c_xvsz", 1500, 400);
55 auto* m_fh =
new TFile(Form(
"%s/v0cad.root",
m_OverlayPath.c_str()));
58 for (
int i = 0; i < 32; i++) {
61 if (m_fh->cd(Form(
"h_%dc", i))) {
62 for (
int j = 0; j < 500; j++) {
63 auto curv = gDirectory->Get(Form(
"Graph_%d", j));
72 if (m_fh->cd(
"h_xzc")) {
73 for (
int j = 0;
true; j++) {
74 auto curv = gDirectory->Get(Form(
"Graph_%d", j));
89 gStyle->SetOptStat(0);
90 gStyle->SetPalette(kViridis, 0, 0.7);
91 for (
int i = 0; i < 32; i++) {
92 TH2* h = (TH2*)
findHist(Form(
"V0Objects/xvsy[%i]", i));
94 if (h) h->Draw(
"COLZ");
97 if (c && c->GetSize() > 0) {
98 auto* curv = (TGraph*)c->First();
99 for (
int j = 0; j < c->GetSize(); j++) {
103 curv = (TGraph*)c->After(curv);
111 TH2* hxz = (TH2*)
findHist(
"V0Objects/xvsz");
117 if (hxz) hxz->Draw(
"COLZ");
120 if (c && c->GetSize() > 0) {
121 auto* curv = (TGraph*)c->First();
122 for (
int j = 0; j < c->GetSize(); j++) {
126 curv = (TGraph*)c->After(curv);
The base class for the histogram analysis module.
static TH1 * findHist(const std::string &histname, bool onlyIfUpdated=false)
Get histogram from list (no other search).
void initialize() override final
Module functions to be called from main process.
std::vector< TList * > contLevelXY
Vector of TList objects for contour in XY plane.
DQMHistAnalysisV0Module()
Constructor / Destructor.
TCanvas * m_c_xvsz
TCanvas object for x vs z plot.
TList * contLevelXZ
TList objects for contour in XZ plane.
void event() override final
Module functions to be called from event process.
std::string m_OverlayPath
Path to overlay file.
TCanvas * m_c_xvsy[32]
TCanvas objects for x vs y plots.
void addParam(const std::string &name, T ¶mVariable, const std::string &description, const T &defaultValue)
Adds a new parameter to the module.
#define REG_MODULE(moduleName)
Register the given module (without 'Module' suffix) with the framework.
Abstract base class for different kinds of events.