8#ifndef SVDHOTSTRIPFINDERMODULE_H
9#define SVDHOTSTRIPFINDERMODULE_H
11#include <framework/core/Module.h>
12#include <framework/datastore/StoreArray.h>
13#include <framework/datastore/StoreObjPtr.h>
14#include <framework/dataobjects/EventMetaData.h>
16#include <svd/dataobjects/SVDShaperDigit.h>
17#include <vxd/dataobjects/VxdID.h>
19#include <svd/dataobjects/SVDHistograms.h>
20#include <svd/dataobjects/SVDSummaryPlots.h>
62 virtual void event()
override;
68 virtual void endRun()
override;
128 Int_t nbins, Double_t min, Double_t max,
129 const char* xtitle, TList* histoList =
nullptr);
133 Int_t nbinsX, Double_t minX, Double_t maxX,
const char* titleX,
134 Int_t nbinsY, Double_t minY, Double_t maxY,
const char* titleY,
135 TList* histoList =
nullptr);
138 bool theHSFinder(
double* stripOccAfterAbsCut,
int* hsflag,
int nstrips);
template class for SVd histograms
std::string m_rootFileName
root file name
TH1F * createHistogram1D(const char *name, const char *title, Int_t nbins, Double_t min, Double_t max, const char *xtitle, TList *histoList=nullptr)
create 1D histograms
StoreArray< SVDShaperDigit > m_storeDigits
shaper digits store array
float m_absThr
Absolute Occupancy Threshold cut for Hot strip finder.
SVDHistograms< TH1F > * hm_occupancy
strip occupancy per sensor
SVDHotStripFinderModule()
Constructor, for setting module description and parameters.
std::string m_ShaperDigitName
shaper digits name
SVDHistograms< TH1F > * hm_hot_strips
hot strips per sensor
virtual void initialize() override
Use this to initialize resources or memory your module needs.
SVDHistograms< TH2F > * hm_dist12
true occupancy VS sensor histograms
virtual void event() override
Called once for each event.
TList * m_histoList_occu
occupancy for low charge clusters
float m_relOccPrec
Relative precision on occupancy which is defined to be negligible for the hit background rate estimat...
virtual void endRun() override
Called once when a run ends.
TH1F * h_tot_dist1
absolute occupany histogram
static const int m_nLayers
number of layers
SVDHistograms< TH1F > * hm_dist1
true occupancy histograms
virtual void terminate() override
Clean up anything you created in initialize().
SVDSummaryPlots * m_hHotStripsSummary
hot strip summary histo
bool theHSFinder(double *stripOccAfterAbsCut, int *hsflag, int nstrips)
return true if the strip is hot
static const int m_nSides
number of sides
StoreObjPtr< EventMetaData > m_eventMetaData
event meta data store array
SVDHistograms< TH1F > * hm_dist
occupancy histograms
virtual void beginRun() override
Called once before a new run begins.
SVDHistograms< TH1F > * hm_occAll
occupancy distribution - all strips
float m_zs
zero suppression cut for the input shaper digits
int m_lastExp
last valid experiment
virtual ~SVDHotStripFinderModule()
Use to clean up anything you created in the constructor.
int m_lastRun
last valid run
TH1F * h_nevents
number of events counting
TH1F * h_tot_dist
relative occupancy histogram
SVDHistograms< TH1F > * hm_occAfter
occupancy distribution - not hot strips
int m_firstExp
first valid experiment
TH2F * h_tot_dist12
2d distributiuons of occupancies
static const int m_nSensors
max number of sensors
SVDHistograms< TH1F > * hm_occHot
occupancy distribution - hot strips
int m_firstRun
first valid run
TH1F * h_tot_dqm
number of hot strips per sensor
TH2F * createHistogram2D(const char *name, const char *title, Int_t nbinsX, Double_t minX, Double_t maxX, const char *titleX, Int_t nbinsY, Double_t minY, Double_t maxY, const char *titleY, TList *histoList=nullptr)
create 2D histograms
SVDHistograms< TH1F > * hm_occupancy_after
strip occupancy after removal of hot strips, per sensor
TFile * m_rootFilePtr
pointer at root file used for storing histograms
TH1F * h_tot_dqm1
number of hot strips per sensor for layer 3
static const int m_nLadders
max number of ladders
bool m_verbose
False by default, it allows to switch on the printing of all found HS.
bool m_useHSFinderV1
use V1 finder
class to summarize SVD quantities per sensor and side
Accessor to arrays stored in the data store.
Type-safe access to single objects in the data store.
Abstract base class for different kinds of events.