 |
Belle II Software
release-05-02-19
|
13 #include <framework/core/HistoModule.h>
29 class TOPInterimFENtupleModule :
public HistoModule {
58 virtual void event()
override;
64 virtual void endRun()
override;
82 enum { c_NWindow = 4, c_NModule = 16, c_NSamplePerWindow = 64, c_NWaveformSample = 256,
83 c_NSampleTBC = 256, c_NPixelPerModule = 512, c_NWindowRingBuffer = 512,
84 c_NMaxHitPerChannel = 5, c_NMaxHitEvent = 5000, c_NTotalScrod = 64
147 unsigned short m_phase[c_NTotalScrod] = { 0 };
virtual ~TOPInterimFENtupleModule()
Destructor.
unsigned short m_phase[c_NTotalScrod]
event phase
float m_calibrationPulseIntervalRange
tolerable shift of DeltaT from its nominal before calibration in a unit of ns
short m_eventWinNum[c_NMaxHitEvent]
"m_firstWindow" in TOPDigit
float m_time[c_NMaxHitEvent]
time in a unit of ns, defined as m_rawTime+64*m_winNum.
unsigned m_eventNumCopper[c_NModule]
event number stored in COPPER
float m_rawTime[c_NMaxHitEvent]
"m_rawTime" [0-256] in new TOPDigit (update at May, 2017) in sample(time bin) unit
bool m_useDoublePulse
set true when you require both of double calibration pulses for reference timing
unsigned short m_nWaveformSample[c_NMaxHitEvent]
number of waveform samples
int m_globalRefSlotNum
slot number used to define "global" reference timing (a single reference timing in an event for all t...
bool m_isCalCh[c_NMaxHitEvent]
true if the hit is in the calibration channel
virtual void event() override
Event processor.
short m_nHitOfflineFE[c_NMaxHitEvent]
number of hits for each pixel
short m_waveformStartSample[c_NMaxHitEvent]
start sample number of waveform segment (only for production FW)
virtual void terminate() override
Termination action.
TOPInterimFENtupleModule()
Constructor.
unsigned m_calibrationChannel
asic channel number where the calibration pulses are routed
int m_globalRefAsicNum
asic number used to define "global" reference timing.
unsigned char m_hitQuality[c_NMaxHitEvent]
"m_quality" in TOPDigit, =0:junk, =1:good, =2:charge sharing, =3:cross talk, =4:cal.
unsigned short m_sample[c_NMaxHitEvent]
(m_rawTDC+m_winNum*64)%256, for time base correction
short m_nFEHeader
m_FEHeaders in TOPInterimFEInfo, the total # of FE headers found
bool m_saveWaveform
set true when you want to save waveform data
short m_waveform[c_NMaxHitEvent][c_NWaveformSample]
waveform from TOPRawWaveform, if not exist, filled with -32767
short m_revo9Counter[c_NMaxHitEvent]
"m_revo9Counter" in TOPRawDigit
int m_nHit
number of hits for the event
float m_height[c_NMaxHitEvent]
"m_pulseHeight" in new TOPDigit (update at May, 2017)
virtual void beginRun() override
Called when entering a new run.
short m_nEmptyFEHeader
m_emptyFEHeaders in TOPInterimFEInfo, the total # of empty FE headers
unsigned m_errorFlag
m_errorFlags in TOPInterimFEInfo, defined in the TOPInterimFEInfo.h
float m_timePerWin
time interval of onw window (=64 samples) [ns]
float m_calibrationPulseThreshold1
minimum pulse height for the first calibration pulse to be qualified as calibration signals
int m_nDebugInfo
number of ProductionEventDebug (in a unit of number of boardstack)
virtual void endRun() override
End-of-run action.
unsigned short m_asicMask[c_NTotalScrod]
asic mask bit pattern
void getReferenceTiming()
Find reference timing.
float m_integral[c_NMaxHitEvent]
"m_integral" in TOPDigit, but not available
Abstract base class for different kinds of events.
unsigned short m_eventQueuDepth[c_NTotalScrod]
trigger FIRO queue depth
unsigned short m_peakSample[c_NMaxHitEvent]
sample number for peak
float m_calibrationPulseInterval
nominal DeltaT value (time interval of two calibration signals) in a unit of ns
bool m_windowsInOrder[c_NMaxHitEvent]
"areWindowsInOrder()" ; false if the window number of all (4) windows taken from TOPRawWaveform::getR...
unsigned m_eventNum
event number taken from EventMetaData
float m_globalRefTime
refTime of the specific asic, which is specified by parameters "globalRefSlotNum" and "globalRefAsicN...
short m_nWaveform
m_waveforms in TOPInterimFEInfo, # of waveformes
unsigned short m_eventNumberByte[c_NTotalScrod]
least significant byte of FE event number
unsigned m_ttcTime[c_NModule]
counter for TTclock, stored in COPPER
virtual void initialize() override
Initialize the Module.
virtual void defineHisto() override
Module funcions to define histograms.
short m_pixelId[c_NMaxHitEvent]
"m_pixelID" in TOPDigit
short m_slotNum[c_NMaxHitEvent]
"m_moduleID" in TOPDigit, slot number
bool m_isReallyJunk[c_NMaxHitEvent]
true if pedestal jump or other invalid hit is detected, not saved
float m_width[c_NMaxHitEvent]
"m_pulseWidth" in TOPDigit, full width at half maximum of the pulse, converted into unit of samples f...
short m_winNumList[c_NMaxHitEvent][c_NWindow]
list of window numbers for recorded waveform, valid only when waveform analysis is enabled
float m_refTime[c_NMaxHitEvent]
time of the first calibration signal as reference timing.
float m_calibrationPulseThreshold2
minimum pulse height for the secon calibration pulse to be qualified as calibration signals
unsigned m_eventErrorFlag
m_errorFlags in EventMetaData, 0x1 : CRC error
short m_channelId[c_NMaxHitEvent]
"m_channel" in TOPDigit
unsigned m_ttuTime[c_NModule]
counter for TTclock, stored in COPPER
short m_winNum[c_NMaxHitEvent]
"m_window" in TOPRawDigit
unsigned short m_scrodCtime[c_NTotalScrod]
ctime recorded in scrod header
short m_trigWinNum[c_NMaxHitEvent]
"m_lastWriteAddr" in TOPRawDigit, window # when trigger is issued
char m_offlineFlag[c_NMaxHitEvent]
=-1 if the channel does not have waveform information, =0 when the hit comes from online FE,...