Tables are resources in CertSAFE. There are two types of tables in CertSAFE: Case Tables and Interpolation Tables. A new Case Table can be created by going to File ‣ New ‣ New Case Table and a new interpolation table can be created by going to File ‣ New ‣ New Interpolation Table.

Creating Tables:


Case tables and Interpolation table both share a similar UI. This UI is broken up into two tabs, an I/Os tab and a values tab. The I/Os tab is broken up into 3 tables. The upper left table is devoted to inputs, the upper right table is devoted to the values the currently selected input has specified, and the bottom table is devoted to what the table outputs are. There are slight differences in the sections between Case Tables and Interpolation Tables, which will be covered in the relevant section of this document.


The Values tab is a table where each cell corresponds to an output value, and each row and column corresponds to an input value. If there are multiple outputs, each output can be specified in the Output Drop-down Box located in the upper right corner. If there are more than 2 inputs to the table, all but 2 inputs will need to be specified. This is done through the Input Drop-down Boxes located on the upper left side of the tab. These drop down boxes contain the values that the inputs can take on.

Case Tables:

At the most simple level, case tables map discrete input values to output values. As such, Case Tables can only take Integer, Boolean, and Enumeration inputs as its values, though they can output to any data type. Each input and output can be of a different data type. The data type for the input or output is set via drop down box

Case Tables are primarily used for looking up a given value based upon the provided inputs. Case Tables are often also used as a quick way of converting Enumerations into other data types.

When simulating a case table, if the value inputted into the table does not correspond to one of the provided input values, the output will be set to the default value.

Case tables can have multiple inputs and outputs. As such, the output will need to be defined for each combination of inputs values. When it receives values for inputs that were not specified by the user, it will user the value defined for the default value.

Interpolation tables

Interpolation tables linearly interpolate the incoming value to determine what the output value should be. Interpolation tables can only take in inputs of a floating point type, and all inputs and outputs of an interpolation table will be set to the same type.

When simulating an interpolation table, if the input is below the lowest value entered or above the highest value entered, the input will be clipped to that value.