As soon as the Midas header is striped out from the event, the YBOS remaining data has lost the event synchonization unless included by the user. It is therefore necessary to have a YBOS bank duplicating this information usually done in the FE by creating a "EVID" bank filled with the Midas info and other user information.
Unfortunately the format of this EVID is flexible and I couldn't force user to use a default structure. For this reason, I'm introducing a preprocessor flag for selecting such format.
Omitting the declaration of the pre-processor flag the EVID_TRINAT is taken by default see Midas build options and operation considerations.
Special macros are avaialbe to retrieve this information based on the EVID content and the type of EVID structure.
The Macro parameter should point to the first data of the EVID bank.
The current type of EVID bank are:
- [EVID_TRINAT] Specific for Trinat experiment.
ybk_create((DWORD *)pevent, "EVID", I4_BKTYPE, (DWORD *)(&pbkdat));
*((WORD *)pbkdat) = EVENT_ID(pevent); ((WORD *)pbkdat)++;
*((WORD *)pbkdat) = TRIGGER_MASK(pevent); ((WORD *)pbkdat)++;
*(pbkdat)++ = SERIAL_NUMBER(pevent);
*(pbkdat)++ = TIME_STAMP(pevent);
*(pbkdat)++ = gbl_run_number;
- [EVID_TWIST] Specific to Twist Experiment (Triumf).
ybk_create((DWORD *)pevent, "EVID", I4_BKTYPE, &pbkdat);
*((WORD *)pbkdat) = EVENT_ID(pevent); ((WORD *)pbkdat)++;
*((WORD *)pbkdat) = TRIGGER_MASK(pevent); ((WORD *)pbkdat)++;
*(pbkdat)++ = SERIAL_NUMBER(pevent);
*(pbkdat)++ = TIME_STAMP(pevent);
*(pbkdat)++ = gbl_run_number;
*(pbkdat)++ = *((DWORD *)frontend_name);
ybk_close((DWORD *)pevent, pbkdat);
Definition at line 211 of file ybos.h. |