Belle II Software  release-05-02-19
MinModule Class Reference
Inheritance diagram for MinModule:
Collaboration diagram for MinModule:

Public Member Functions

def event (self)
 

Detailed Description

Example module to drop into ipython and create some objects to look at.
If you just want to start IPython and create PyStoreArray etc.
interactively in your own steering file, the 'Interactive' module
might be of interest.

Definition at line 65 of file readout.py.

Member Function Documentation

◆ event()

def event (   self)
reimplement Module::event()

Definition at line 74 of file readout.py.

74  def event(self):
75  """
76  reimplement Module::event()
77  """
78  self.return_value(0)
79  # function namespace caching
80  frombuffer = np.frombuffer
81  GetNodeID = Belle2.RawTRG.GetNodeID
82  GetDetectorNwords = Belle2.RawTRG.GetDetectorNwords
83  GetDetectorBuffer = Belle2.RawTRG.GetDetectorBuffer
84  trgary = Belle2.PyStoreArray("RawTRGs")
85 
86  evtmeta = Belle2.PyStoreObj("EventMetaData")
87  trgs = []
88 
89  # integrity check
90  if integrity_check:
91  print(len(trgary), 'copper(s)')
92  for evt in trgary:
93  for entry in range(evt.GetNumEntries()): # flattened. Usually only 1 entry
94  print('{:0x}'.format(GetNodeID(evt, entry)))
95  entrylist = []
96  for bid in range(4):
97  if (GetNodeID(evt, entry), bid) in hslb:
98  count = GetDetectorNwords(evt, entry, bid)
99  print(bid, "exist, ", count, "words.")
100  return
101  dataList = []
102  for evt in trgary:
103  # assuming smaller Copper ID comes first
104  for entry in range(evt.GetNumEntries()): # flattened. Usually only 1 entry
105  # print('{:0x}'.format(GetNodeID(evt, entry)))
106  entrylist = []
107  for bid in range(4):
108  if (GetNodeID(evt, entry), bid) not in hslb:
109  continue
110  count = GetDetectorNwords(evt, entry, bid)
111  if count == 0:
112  # continue
113  pass
114  bf = GetDetectorBuffer(evt, entry, bid)
115  ary = frombuffer(bf, np.uintc, count)
116  # obsolete: skipping dummy buffers
117  # if '{:0x}'.format(ary[0])[:4] == 'dddd':
118  # self.return_value(1)
119  # else:
120  # return
121  self.return_value(1)
122  dataList.append(join(ary))
123 
124  event = evtmeta.getEvent()
125  run = evtmeta.getRun()
126  subrun = evtmeta.getSubrun()
127  meta.append((event, run, subrun))
128  data.append(dataList)
129 
130 
131 # Set the log level to show only error and fatal messages
132 # set_log_level(LogLevel.ERROR)
133 set_log_level(LogLevel.INFO)
134 
135 # Create main path

The documentation for this class was generated from the following file:
Belle2::PyStoreObj
a (simplified) python wrapper for StoreObjPtr.
Definition: PyStoreObj.h:69
ClusterEfficiency.ClusterEfficiency.event
def event(self)
Definition: ClusterEfficiency.py:146
Belle2::PyStoreArray
a (simplified) python wrapper for StoreArray.
Definition: PyStoreArray.h:58