225 def record_beamelem (self, key, frag):
226 cont = ROOT.TileBeamElemContainer()
227
228 coll = ROOT.TileBeamElemCollection (frag)
229 coll.setLvl1Type (123)
230
231 if frag == LASE_PTN_FRAG:
232 v = getattr(ROOT,'vector<unsigned>')()
233 v.resize(16)
234 v[0] = (23 << 8)
235 elem = ROOT.TileBeamElem (ROOT.Identifier(), v)
236 coll.push_back (elem)
237 ROOT.SetOwnership (elem, False)
238
239 elif frag == DIGI_PAR_FRAG:
240 coll.setRODBCID (11)
241 hwidHelper = self.detStore['TileHWID']
242
243 def id (cha):
244 ros = 1
245 drawer = 1
246 adc = 0
247 return hwidHelper.adc_id (ros, drawer, cha, adc)
248
249 for cha in range(15):
250 hwid = id(cha)
251 elem = ROOT.TileBeamElem (hwid, cha + 100)
252 coll.push_back (elem)
253 ROOT.SetOwnership (elem, False)
254
255 hwid = id(15)
256 v = getattr(ROOT,'vector<unsigned>')()
257 v.resize(10)
258 for i in range(10):
259 v[i] = 111 + i
260 v[1] = 2
261 v[2] = 0x08070605
262 elem = ROOT.TileBeamElem (hwid, v)
263 coll.push_back (elem)
264 ROOT.SetOwnership (elem, False)
265
266 elif frag == LASER_OBJ_FRAG:
267 coll.setRODBCID (11)
268
269
270 cont.addCollection (coll, ROOT.IdentifierHash (frag))
271 ROOT.SetOwnership (coll, False)
272
273 return self.evtStore.record (cont, key, False)
274
275