Belle II Software
release-05-01-25
EventCountLimiter.py
1
#!/usr/bin/env python3
2
# -*- coding: utf-8 -*-
3
4
# Purpose:
5
# basf module to return false if the event counter equals or exceeds the user-defined limit
6
#
7
import
basf2
8
9
# =========================================================================
10
#
11
# EventCountLimiter
12
#
13
# =========================================================================
14
15
16
class
EventCountLimiter
(basf2.Module):
17
"""Report when the event counter has reached or exceeded its limit"""
18
19
def
__init__
(self, maxCount):
20
"""Constructor
21
22
Argument:
23
maxCount (int): number of events to be processed
24
"""
25
super().
__init__
()
26
27
self.
maxCount
= maxCount
if
(maxCount >= 0)
else
(1 << 31)
28
29
self.
eventCounter
= 0
30
31
def
initialize
(self):
32
"""Handle job initialization (nothing to do here)"""
33
pass
34
35
def
terminate
(self):
36
"""Handle job termination (nothing to do here)"""
37
pass
38
39
def
beginRun
(self):
40
"""Handle begin of run (nothing to do here)"""
41
pass
42
43
def
endRun
(self):
44
"""Handle end of run (nothing to do here)"""
45
pass
46
47
def
event
(self):
48
"""Process one event: has eventCounter reached or exceeded its limit?"""
49
self.eventCounter += 1
50
super().return_value(self.eventCounter < self.maxCount)
EventCountLimiter.EventCountLimiter.eventCounter
eventCounter
internal event counter
Definition:
EventCountLimiter.py:29
EventCountLimiter.EventCountLimiter.__init__
def __init__(self, maxCount)
Definition:
EventCountLimiter.py:19
EventCountLimiter.EventCountLimiter.initialize
def initialize(self)
Definition:
EventCountLimiter.py:31
EventCountLimiter.EventCountLimiter.event
def event(self)
Definition:
EventCountLimiter.py:47
EventCountLimiter.EventCountLimiter.beginRun
def beginRun(self)
Definition:
EventCountLimiter.py:39
EventCountLimiter.EventCountLimiter.terminate
def terminate(self)
Definition:
EventCountLimiter.py:35
EventCountLimiter.EventCountLimiter
Definition:
EventCountLimiter.py:16
EventCountLimiter.EventCountLimiter.maxCount
maxCount
internal copy of the event-counter upper limit
Definition:
EventCountLimiter.py:27
EventCountLimiter.EventCountLimiter.endRun
def endRun(self)
Definition:
EventCountLimiter.py:43
klm
bklm
scripts
EventCountLimiter.py
Generated on Fri Nov 5 2021 03:54:54 for Belle II Software by
1.8.17