Belle II Software development
SVDCrossTalkFinderModule.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8
9#ifndef SVDCrossTalkFinderModule_H
10#define SVDCrossTalkFinderModule_H
11
12#include <framework/core/Module.h>
13#include <framework/datastore/StoreArray.h>
14#include <framework/datastore/StoreObjPtr.h>
15
16#include <svd/dataobjects/SVDRecoDigit.h>
17#include <svd/dataobjects/SVDEventInfo.h>
18#include <vxd/dataobjects/VxdID.h>
19#include <svd/calibration/SVDOccupancyCalibrations.h>
20
21#include <TFile.h>
22#include <TH1F.h>
23
24#include <string>
25#include <map>
26
27namespace Belle2 {
36
37 public:
38
39 /* Constructor */
41
43 virtual void initialize() override;
45 virtual void event() override;
47 virtual void terminate() override;
48
49
50 protected:
51
53 void calculateAverage(const VxdID& sensorID, double& mean, int side);
54
57
60
62 std::string m_svdEventInfoName;
63
66
75 std::string m_outputFilename;
77 TFile* m_histogramFile = nullptr;
78 std::map<std::string, TH1F* > m_sensorHistograms;
80 //calibration objects
84 };
85
87} //end namespace Belle2
88
89#endif
Base class for Modules.
Definition: Module.h:72
Flags potential cross talk strips on Origami sensors.
StoreArray< SVDRecoDigit > m_svdRecoDigits
The storeArray for svdRecoDigits.
virtual void initialize() override
Init the module.
StoreObjPtr< SVDEventInfo > m_svdEventInfo
The storeObject for svdEventInfo.
virtual void event() override
Event.
int m_uSideOccupancyFactor
Parameter to define high occupancy strips (some multiple above sensor average occupancy)
bool m_createCalibrationPayload
If true module will produce and write-out payload for SVDCrossTalkStripsCalibrations.
virtual void terminate() override
Final output.
int m_vSideOccupancyFactor
Parameter to define high occupancy strips (some multiple above sensor average occupancy)
std::string m_outputFilename
Filename of root file containing cross-talk strip calibration payload.
std::string m_svdRecoDigitsName
SVDRecoDigit collection name.
std::string m_svdEventInfoName
SVDEventInfo collection name.
std::map< std::string, TH1F * > m_sensorHistograms
map to store cross-talk strip histograms
void calculateAverage(const VxdID &sensorID, double &mean, int side)
Function to calculate sensor average occupancy.
SVDOccupancyCalibrations m_OccupancyCal
SVDOccupancy calibrations db object.
TFile * m_histogramFile
Pointer to root TFile containing histograms for calibration payload.
int m_nAPVFactor
Parameter to set number of sensors with possible cross-talk clusters required for event flagging.
This class defines the dbobject and the method to access SVD calibrations from the noise local runs.
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Class to uniquely identify a any structure of the PXD and SVD.
Definition: VxdID.h:33
Abstract base class for different kinds of events.