Pulse Building uses the following rules when importing a CSV file.
The CSV file import file name and directory are specified by the user.
The CSV file import loads the Pulse Building Signal Properties before loading the pulse pattern properties.
The CSV file import uses default values when values are left blank. For example if the PRI Pattern Type is left blank, the PRI Pattern Type is set to none.
The CSV file import handles properties that contain a variable length data (custom data) with a separate file. These files are referred to as “Support” files. For example, the non-linear chirp requires a list of polynomial coefficients. Instead of trying to read in an indeterminate number of coefficients the property should contain a file name. The file specified by file name contains the coefficients. The import algorithm can read until end-of-file to load the coefficients. If no supporting file name is specified for a variable length property, the property is set to the default. The default is property specific.
The CSV file import supporting files do not have to be in the same directory as the base CSV file. The user can specify an absolute or relative path to the support files.
The CSV file import maps the values from the CSV file to the correct Pulse Building Properties.
The CSV file import is to the named pattern in the Pulse Building Pattern Library.
The CSV file import uses version control so that we can add new columns as necessary. If no version number is found the latest file format is assumed. The user can translate files with older version numbers to the latest version by importing and then exporting the file.
The CSV file import expects specific column labels. These label names cannot be changed. They are the keyword to identify the properties for the pattern. The column order can be changed and columns may be excluded from the import file. The properties associated with excluded columns are set to their default values.
The CSV file import assumes all time values are in us (microsecond), and all frequency values are in MHz except for the Antenna Scan Rate and the PRI wobbulation rate. The Antenna Scan rate units are determined by the antenna scan type and can be RPM (Revolutions per Minute), Hz, or degrees per second. The PRI wobbulation rate is in Hz.
The CSV file import is not case sensitive.
The CSV file import ignores lines that start with the symbol #. This allows minimal comments in the file.
When the CSV file importation fails, Pulse Building generates an error with enough information to help you find and fix the error.
Successful CSV file importation does not ensure that the signal can be generated. Final property range checking is performed during a download. (This is normal Pulse Building behavior.)
If the import line in the CSV file is a pulse and no pulse name is given, Pulse Building will assign a unique name and create a new pulse in the Pulse library. (This is normal Pulse Building behavior when you create a new pulse.)
If the import line in the CSV file is a pulse and the name is not found in the pulse library a new pulse is added to the pulse library using the name and property values in the line.
If the import line in the CSV file is a pulse and the name is found in the pulse library the existing pulse properties are updated to agree with the property values in the line. If the pulse appears on multiple lines in the import file the pulse properties from the last instance are used.
If the import line in the CSV file is a pattern and the pattern name is not specified or the pattern is not found in the pattern library a new empty pattern is created.
If the import line in the CSV file is a pattern and the pattern name is found in the pattern library, the existing pattern item is used.
A circular reference of patterns within patterns is an error condition.
Some of the values in the import file may be changed based on calculations of certain fields.