64.2. Using the Offline EVB and Orderer

64.2.1. Setting up Jobs

The offline event builder processes "jobs." A job is simply a set of configuration parameters that are attached to a set of run segments for processing. The user is expected to configure the parameters for each set of run segments that are to be processed. The initial display that the user is presented with is the job configuration interface (see Figure 64-1). From here, the user can add, edit, and remove jobs that are staged for processing.

Figure 64-1. The Offline Orderer's job configuration interface

64.2.2. Creating a job

  1. Click "Add Job"

  2. At this point, the user will be presented with a configuration dialogue. Add all run segments for the given run by clicking "Add Files." (Tip: it is possible to select more than one file in the browser). Note that any file added should have the proper file name format (prefix-xxxx-yy.evt) where the xxxx is the run number and yy is the run segment. If this format is not found, an error will be given because the offline orderer will not be able to know the run number and subsequently where to store the output data file.

  3. Adjust the "Number of end runs to expect" to correspond to how many end runs are in the file. This is VERY IMPORTANT to get right because a job will not properly finish processing unless the number of end runs specified are found.

  4. If all of the ring items in the file have body headers embedded in them and the user does not desire to have correlated data in the output file, then the configuration of this job is done. Skip to step 7. Otherwise, the following two steps are to be completed on an as needed basis.

  5. By default, the processed data written to disk will be written without correlating fragments. If the user wants to output correlated data, he/she should select the "Enable event building" checkbox and then specify the correlation window width in units of clock ticks.

  6. For data that has ring items without body headers, it is required that the user provides the missing information. Select the "Missing body headers" checkbox to see the additional data entries. It is required that the user fill in the details for the timestamp extraction library and source id.

  7. Once the job has been fully configured, press the "Create" button. You will find that the job has been added to the list of jobs.

  8. Repeat steps 1-7 for as many jobs as are needed. To streamline the process of configuring jobs, new jobs retain the same entry information as the last created job. Be sure that you do not enter the same run segments in different jobs, see Limitation 1.

  9. When all the jobs are configured, press "Process Jobs."

64.2.3. Configuring Global Options

64.2.3.1. Data Flow

The offline event builder and orderer constructs an entire data stream that involves two ring buffers. One of the ring buffers precedes the event builder ("input") and the other follows it ("output"). It is typically not necessary for the user to change which rings that these use, however, the user has been given control to change these options. To configure these, from the configuration interface:

  1. Click on "Config" in the menu bar.

  2. Enter the name of the rings that the user wants to use for the input and output rings.

  3. To apply these changes to all existing and subsequent jobs, click the "Apply" button. To refrain from using the changes, do not click "Apply."

  4. To return to the job configuration interface, click the "Back" button. Note that doing so does NOT apply the changes.

64.2.3.2. Output Directory

You may recall that during a ReadoutGUI session, the ReadoutGUI manages a directory called the "stagearea." During a run, the data files are written into stagearea/experiment/current and then after the run ends, these files are copied/moved into the appropriate stagearea/experiment/run# directory and a link created in the stagearea/complete directory. The offline event builder and orderer operates the exact same way. It is imperative that the user configures their system to avoid clashes caused by output files. In the global configuration dialogue, the user can choose the location of their stagearea directory. Such a stagearea must have the following directory structure:

  1. Click on "Config" in the menu bar.

  2. Enter the name of the rings that the user wants to use for the input and output rings.

  3. To apply these changes to all existing and subsequent jobs, click the "Apply" button. To refrain from using the changes, do not click "Apply."

  4. To return to the job configuration interface, click the "Back" button. Note that doing so does NOT apply the changes.