Belle II Software development
TOPXTalkChargeShareSetterModule.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#pragma once
10
11#include <framework/core/Module.h>
12
13#include <framework/datastore/StoreArray.h>
14#include <top/dataobjects/TOPDigit.h>
15
16namespace Belle2 {
27
28 public:
32 enum { c_NPixelsPerRow = 64 };
33
38
40 virtual ~TOPXTalkChargeShareSetterModule() override;
41
43 virtual void initialize() override;
44
46 virtual void beginRun() override;
47
49 virtual void event() override;
50
52 virtual void endRun() override;
53
55 virtual void terminate() override;
56
65 bool isCrossTalk(std::vector<short> wfm, int iRawTime, short height);
66
67
68 private:
69
70 bool m_sumChargeShare = false;
71 float m_timeCut = 1;
73 0;
76 50;
78 30;
80 0.2;
82 5;
84 10;
87 true;
90 true;
91 };
93};
Base class for Modules.
Definition: Module.h:72
int m_nSampleAfter
the number of samples by which the second peak should exist from the CFD timing, used for cross talk ...
double m_nCrossTalkRingingSamples
the number of samples to identify the hit as a cross talk hit when there is another cross talk hit in...
bool m_checkPreValleyForXTalkId
require existence of pre-valley.
int m_preValleyDepthLoose
loose threshold for depth of pre valley [ADC counts], for corss talk identification
TOPXTalkChargeShareSetterModule()
Constructor: Sets the description, the properties and the parameters of the module.
int m_2ndPeakAmplitudeLoose
loose threshold for amplitude of the second peak [ADC counts] for cross talk identification.
bool isCrossTalk(std::vector< short > wfm, int iRawTime, short height)
Examine whether the give hit is cross talk hits using waveform information Thresholds for such as pre...
float m_timeCut
cut range of hittiming for chargeshare
int m_preValleyDepthTight
tight threshold for depth of pre valley [ADC counts], identified as cross talk with loose threshold f...
double m_2ndPeakAmplitudeRatioTight
tight threshold for amplitude ratio of the second peak to the main peak height [ADC counts]
bool m_sumChargeShare
sum charge of PrimaryChargeShare and SecondaryChargeShare
bool m_checkPostValleyForXTalkId
require existence of post-valley and 2nd peak.
int m_nSampleBefore
the number of samples by which the pre-valley should exist from the CFD timing, used for cross talk i...
Abstract base class for different kinds of events.