Ingest Data File Format

Each ingest data file contains one data type from one sweep of a volume.

If extended headers are recorded, they are treated as another data type and are placed in a separate file. A the following table shows, each of these files consists of:

  • fixed length ingest_data_header structure
  • variable-length ray pointer table
  • variable-length segment of data

The ray pointer table contains a 32-bit pointer for each ray in the file. These are byte pointers (origin one) referenced to the beginning of the data area. A pointer value of 1 refers to the first byte of the data area. Ray data are forced onto 16-bit word boundaries, so all the pointers are odd. A pointer value of 0 indicates that no data are available for that slot.

Ingest Data File Format
<ingest_data_header> 76 Bytes
Pointer Table4 Bytes per expected ray
Data Area Undetermined Size

Ray data are partially compressed with a truncation scheme. If a ray does not contain data all the way out to the last range bin, the trailing bins are removed from the archive.

This means that the storage space required for each ray varies, which requires the pointer table for quick random access. The pointer points to a ray_header structure, which is followed by an array of range bins. The count of the number of range bins could be zero, in which case the ray contains only the 12-byte ray header.