Hook to the event builder task after the reception of all fragments of the same serial number. The destination event has already the final EVENT_HEADER setup with the data size set to 0. It is than possible to add private data at this point using the proper bank calls.
The ebch[] array structure points to nfragment channel structure with the following content: typedef struct {
char name[32];
DWORD serial;
char *pfragment;
...
} EBUILDER_CHANNEL;
The correct code for including your own MIDAS bank is shown below where TID_xxx is one of the valid Bank type starting with TID_ for midas format or xxx_BKTYPE for Ybos data format. bank_name is a 4 character descriptor. pdata has to be declared accordingly with the bank type. Refers to the ebuser.c source code for further description.
It is not possible to mix within the same destination event different event format!
For YBOS format, use the following example.
ybk_init(pevent);
ybk_create(pevent, "EBBK", I4_BKTYPE, &pdata);
*pdata++ = 0x12345678;
*pdata++ = 0x87654321;
*dest_size = ybk_close(pevent, pdata);
*dest_size *= 4;
pheader->data_size = *dest_size + sizeof(YBOS_BANK_HEADER);
- Parameters:
-
| nfrag | Number of fragment. |
| mismatch | Midas Serial number mismatch flag. |
| ebch | Structure to all the fragments. |
| pheader | Destination pointer to the header. |
| pevent | Destination pointer to the bank header. |
| dest_size | Destination event size in bytes. |
- Returns:
- EB_SUCCESS
Definition at line 187 of file ebuser.c.
Referenced by source_scan(). |