9#include <pxd/modules/pxdDQM/PXDROIDQMModule.h>
10#include "TDirectory.h"
32 std::string(
"pxdrawroi"));
33 addParam(
"PXDRawROIsName",
m_PXDRawROIsName,
"The name of the StoreArray of PXDRawROIs to be processed", std::string(
""));
40 TDirectory* oldDir = gDirectory;
46 hrawROIcount =
new TH1F(
"hrawROIcount",
"ROI count;Nr per Event", 250, 0, 250);
47 hrawROItype =
new TH1F(
"hrawROItype",
"ROI type;Nr per Event", 2, 0, 2);
49 hrawROIHLT_DHHID =
new TH1F(
"hrawROIHLT_DHHID",
"HLT ROI per Module;DHH ID;ROIs per Module", 64, 0, 64);
50 hrawROIDC_DHHID =
new TH1F(
"hrawROIDC_DHHID",
"DATCON ROI per Module;DHH ID;ROIs per Module", 64, 0, 64);
53 hrawROIHLTmap =
new TH2F(
"hrawROIHLTmap",
"HLT ROI Middle Map;Ucell;Vcell", 250 / 5, 0, 250, 768 / 4, 0, 768);
54 hrawROIHLTsize =
new TH2F(
"hrawROIHLTsize",
"HLT ROI Size Map;;Ucell;Vcell", 50, 0, 200, 50, 0, 200);
55 hrawROIHLTminV =
new TH1F(
"hrawROIHLTminV",
"HLT ROI minV;V", 768, 0, 768);
56 hrawROIHLTmaxV =
new TH1F(
"hrawROIHLTmaxV",
"HLT ROI maxV;V", 768, 0, 768);
57 hrawROIHLTminU =
new TH1F(
"hrawROIHLTminU",
"HLT ROI minU;U", 250, 0, 250);
58 hrawROIHLTmaxU =
new TH1F(
"hrawROIHLTmaxU",
"HLT ROI maxU;U", 250, 0, 250);
59 hrawROIHLTsizeV =
new TH1F(
"hrawROIHLTsizeV",
"HLT ROI size;V", 768, 0, 768);
60 hrawROIHLTsizeU =
new TH1F(
"hrawROIHLTsizeU",
"HLT ROI size;U", 250, 0, 250);
62 hrawROIDCmap =
new TH2F(
"hrawROIDCmap",
"DATCON ROI Middle Map ;U;V", 250 / 5, 0, 250, 768 / 4, 0, 768);
63 hrawROIDCsize =
new TH2F(
"hrawROIDCsize",
"DATCON ROI Size Map ;U;V", 50, 0, 200, 50, 0, 200);
64 hrawROIDCminV =
new TH1F(
"hrawROIDCminV",
"DATCON ROI minV;V", 768, 0, 768);
65 hrawROIDCmaxV =
new TH1F(
"hrawROIDCmaxV",
"DATCON ROI maxV;V", 768, 0, 768);
66 hrawROIDCminU =
new TH1F(
"hrawROIDCminU",
"DATCON ROI minU;U", 250, 0, 250);
67 hrawROIDCmaxU =
new TH1F(
"hrawROIDCmaxU",
"DATCON ROI maxU;U", 250, 0, 250);
68 hrawROIDCsizeV =
new TH1F(
"hrawROIDCsizeV",
"DATCON ROI size;V", 768, 0, 768);
69 hrawROIDCsizeU =
new TH1F(
"hrawROIDCsizeU",
"DATCON ROI size;U", 250, 0, 250);
71 hrawROINrDCvsNrHLT =
new TH2F(
"hrawROINrDCvsNrHLT",
"Nr DATCON ROI vs Nr HLT ROI; Nr HLT ROI;Nr DATCON ROI",
72 100, 0, 100, 100, 0, 100);
76 for (
VxdID& avxdid : sensors) {
81 TString buff = (std::string)avxdid;
82 TString bufful = buff;
83 bufful.ReplaceAll(
".",
"_");
85 int dhh_id = ((avxdid.getLayerNumber() - 1) << 5) | ((avxdid.getLadderNumber()) << 1) | (avxdid.getSensorNumber() - 1);
88 "HLT ROI Middle Map " + buff +
";Ucell;Vcell", 250, 0, 250, 768, 0, 768);
90 "HLT ROI Size Map " + buff +
";Ucell;Vcell", 50, 0, 200, 50, 0, 200);
92 "DC ROI Middle Map " + buff +
";Ucell;Vcell", 250, 0, 250, 768, 0, 768);
94 "DC ROI Size Map " + buff +
";Ucell;Vcell", 50, 0, 200, 50, 0, 200);
152 for (
auto j = 0; j < nr; j++) {
154 int Vmin, Vmax, Umin, Umax, Vmean, Umean, Vsize, Usize;
155 Vmin = it.getMinVid(j);
156 Vmax = it.getMaxVid(j);
158 Vmean = (Vmin + Vmax) / 2;
159 Umin = it.getMinUid(j);
160 Umax = it.getMaxUid(j);
162 Umean = (Umin + Umax) / 2;
163 auto id = it.getDHHID(j);
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
void setDescription(const std::string &description)
Sets the description of the module.
void setPropertyFlags(unsigned int propertyFlags)
Sets the flags for the module properties.
@ c_ParallelProcessingCertified
This module can be run in parallel processing mode safely (All I/O must be done through the data stor...
TH1F * hrawROItype
Histogram
TH1F * hrawROIHLTsizeU
Histogram
TH1F * hrawROIHLTminV
Histogram
void initialize() override final
Initialize.
TH1F * hrawROIDCsizeV
Histogram
TH1F * hrawROIDCsizeU
Histogram
TH1F * hrawROIHLTmaxV
Histogram
TH1F * hrawROIDCminU
Histogram
TH1F * hrawROIHLTsizeV
Histogram
StoreArray< PXDRawROIs > m_storeROIs
Storearray for ROIs
TH1F * hrawROIHLTmaxU
Histogram
TH1F * hrawROIDC_DHHID
Histogram
void defineHisto() override final
Define histograms.
TH2F * hrawROINrDCvsNrHLT
Histogram
TH2F * hrawROIHLTsize
Histogram
TH1F * hrawROIDCmaxV
Histogram
TH1F * hrawROIDCmaxU
Histogram
bool m_eachModule
create a histo per module
TH1F * hrawROIHLTminU
Histogram
bool m_offlineDQM
create 2d plots for offline checks
void event() override final
Event.
TH2F * hrawROIDCmap
Histogram
std::string m_histogramDirectoryName
Name of the histogram directory in ROOT file.
TH1F * hrawROIDCminV
Histogram
TH2F * hrawROIDCsize
Histogram
std::map< int, TH2F * > hrawROIHLTmapModule
Histogram
void beginRun() override final
Begin run.
VXD::GeoCache & m_vxdGeometry
the VXD geometry
TH1F * hrawROIHLT_DHHID
Histogram
std::map< int, TH2F * > hrawROIHLTsizeModule
Histogram
TH1F * hrawROIcount
Histogram 2d hitmap.
PXDROIDQMModule()
Constructor defining the parameters.
std::map< int, TH2F * > hrawROIDCmapModule
Histogram
TH2F * hrawROIHLTmap
Histogram
std::map< int, TH2F * > hrawROIDCsizeModule
Histogram
std::string m_PXDRawROIsName
RawROI StoreArray name.
Class to faciliate easy access to sensor information of the VXD like coordinate transformations or pi...
const std::vector< VxdID > getListOfSensors() const
Get list of all sensors.
const SensorInfoBase & getSensorInfo(Belle2::VxdID id) const
Return a referecne to the SensorInfo of a given SensorID.
Base class to provide Sensor Information for PXD and SVD.
Class to uniquely identify a any structure of the PXD and SVD.
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.
Namespace to encapsulate code needed for simulation and reconstrucion of the PXD.
Namespace to provide code needed by both Vertex Detectors, PXD and SVD, and also testbeam telescopes.
Abstract base class for different kinds of events.