 |
Belle II Software
release-05-02-19
|
13 #include <framework/core/HistoModule.h>
14 #include <framework/datastore/StoreArray.h>
16 #include <vxd/geometry/GeoCache.h>
18 #include <tracking/dataobjects/ROIid.h>
19 #include <tracking/dataobjects/PXDIntercept.h>
20 #include <pxd/dataobjects/PXDDigit.h>
22 #include <unordered_map>
41 class ROIDQMModule :
public HistoModule {
76 std::function< void (TH1*,
double&) >
fill;
96 void event(
void)
override final;
Class to uniquely identify a any structure of the PXD and SVD.
double value
value used to fill
TH1 * hPtr
histogram pointer
TH1F * m_hnROIs
number of ROIs
std::unordered_multimap< Belle2::VxdID, ROIHistoAccumulateAndFill &, std::function< size_t(const Belle2::VxdID &) > > m_hROIDictionaryEvt
map of histograms to be filled once per event
int m_numModules
number of modules
StoreArray< ROIid > m_roiIDs
the ROIids dataobjects collection
void terminate(void) override final
Function to terminate module.
std::function< void(TH1 *, double &) > fill
fill function
std::unordered_multimap< Belle2::VxdID, InterHistoAndFill, std::function< size_t(const Belle2::VxdID &)> > m_hInterDictionary
map of histograms to be filled once per intercept
struct: histograms to be filled once per event + filling fucntion + accumulate function
void fillSensorInterHistos(const PXDIntercept *inter)
fill histograms per sensor, filled once per intercept
std::unordered_multimap< Belle2::VxdID, ROIHistoAndFill, std::function< size_t(const Belle2::VxdID &)> > m_hROIDictionary
map of histograms to be filled once per roi
VXD::GeoCache & m_aGeometry
the geometry
std::string m_ROIsName
Name of the ROIid StoreArray.
StoreArray< PXDIntercept > m_pxdIntercept
the PXDIntercepts dataobjects collection
TH1F * m_hnInter
number of intercpets
TDirectory * m_ROIDir
ROI directory in the root file.
void createHistosDictionaries()
create the dictionary
ROIid stores the U and V ids and the sensor id of the Region Of Interest.
static GeoCache & getInstance()
Return a reference to the singleton instance.
Abstract base class for different kinds of events.
TDirectory * m_InterDir
intercepts directory in the root file
TH1F * m_hredFactor
reduction factor
void fillSensorROIHistos(const ROIid *roi)
fill histograms per sensor, filled once per ROI
std::string m_InterceptsName
Name of the PXDIntercept StoreArray.
void initialize(void) override final
Function for dynamic initialization of module.
Class to faciliate easy access to sensor information of the VXD like coordinate transformations or pi...
std::function< void(const ROIid *, double &) > accumulate
accumulate function
Accessor to arrays stored in the data store.
void defineHisto() override final
define histograms
void event(void) override final
Function to process event record.
StoreArray< PXDDigit > m_pxdDigits
the PXDDigits dataobjects collection
PXDIntercept stores the U,V coordinates and uncertainties of the intersection of a track with an PXD ...
std::pair< TH1 *, std::function< void(TH1 *, const PXDIntercept *) > > InterHistoAndFill
typedef: histograms to be filled once per intercept + filling function
std::string m_PXDDigitsName
digit list name
std::pair< TH1 *, std::function< void(TH1 *, const ROIid *) > > ROIHistoAndFill
typedef: histograms to be filled once per roi + filling function