10 #include <cdc/modules/cdcDQM/CDCDQMModule.h>
15 #include <framework/database/DBObjPtr.h>
19 #include <TDirectory.h>
24 #include <cdc/dataobjects/WireID.h>
25 #include <cdc/geometry/CDCGeometryPar.h>
41 addParam(
"MinHits",
m_minHits,
"Include only events with more than MinHits hits in ARICH", 0);
52 TDirectory* oldDir = gDirectory;
56 m_hNEvents =
new TH1F(
"hNEvents",
"hNEvents", 10, 0, 10);
57 m_hNEvents->GetXaxis()->SetBinLabel(1,
"number of events");
58 m_hOcc =
new TH1F(
"hOcc",
"hOccupancy", 150, 0, 1.5);
59 m_hADC =
new TH2F(
"hADC",
"hADC", 300, 0, 300, 200, 0, 1000);
60 m_hTDC =
new TH2F(
"hTDC",
"hTDC", 300, 0, 300, 1000, 4200, 5200);
61 m_hHit =
new TH2F(
"hHit",
"hHit", 56, 0, 56, 400, 0, 400);
73 B2WARNING(
"Missing Tracks array");
81 B2DEBUG(22,
"Missing recoTracks array in beginRun() ");
95 const int nWires = 14336;
110 int lay = hit.getICLayer();
111 int wire = hit.getIWire();
116 for (
const auto& b2track :
m_Tracks) {
119 B2WARNING(
"No track fit result found.");
125 B2WARNING(
"Can not access RecoTrack of this Belle2::Track");
131 if (ndf < 20)
continue;
135 const genfit::TrackPoint* tp = track->getCreatedTrackPoint(track->getRecoHitInformation(hit));
137 UChar_t lay = hit->getICLayer();
138 UShort_t IWire = hit->getIWire();
139 UShort_t adc = hit->getADCCount();
140 unsigned short tdc = hit->getTDCCount();
141 unsigned short tot = hit->getTOT();
142 WireID wireid(lay, IWire);
143 unsigned short bid = cdcgeo.
getBoardID(wireid);
147 if (adc > 50 && tot > 1) {
std::string m_recoTrackArrayName
Belle2::RecoTrack StoreArray name.
void initialize() override
Initialize the Module.
int m_minHits
Minimum hits for processing.
void event() override
Event processor.
StoreArray< CDCRawHit > m_cdcRawHits
CDC raw hits.
void endRun() override
End-of-run action.
StoreObjPtr< TRGSummary > m_trgSummary
Trigger summary.
void terminate() override
Termination action.
TH1F * m_hNEvents
Histogram of num.
TH2F * m_hTDC
Histogram of TDC with track associated hits for all boards (0-299)
void beginRun() override
Called when entering a new run.
StoreArray< CDCHit > m_cdcHits
CDC hits.
virtual ~CDCDQMModule()
Destructor.
TH2F * m_hADC
Histogram of ADC with track associated hits for all boards (0-299)
TH1F * m_hOcc
Histogram of occupancy.
StoreArray< RecoTrack > m_RecoTracks
RecoTracks.
StoreArray< Track > m_Tracks
Tracks.
TH2F * m_hHit
Histogram of hits for all layers (0-55)
void defineHisto() override
Histogram definitions.
Long64_t m_nEvents
Number of events processed.
Class containing the result of the unpacker in raw data and the result of the digitizer in simulation...
The Class for CDC Geometry Parameters.
unsigned short getBoardID(const WireID &wID) const
Returns frontend board id. corresponding to the wire id.
static CDCGeometryPar & Instance(const CDCGeometry *=nullptr)
Static method to get a reference to the CDCGeometryPar instance.
static const ChargedStable pion
charged pion particle
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.
void setReturnValue(int value)
Sets the return value for this module as integer.
@ c_ParallelProcessingCertified
This module can be run in parallel processing mode safely (All I/O must be done through the data stor...
This is the Reconstruction Event-Data Model Track.
bool isOptional(const std::string &name="")
Tell the DataStore about an optional input.
@ TTYP_RAND
random trigger events
Values of the result of a track fit with a given particle hypothesis.
Class to identify a wire inside the CDC.
Class where important numbers and properties of a fit can be stored.
double getNdf() const
Get the degrees of freedom of the fit.
Object containing AbsMeasurement and AbsFitterInfo objects.
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.