In makePresets.sql, locate the AVAILABLE PARAMS section.
Depending on the type of param you’re trying to create (major,minor,operand) locate the following line:
INSERT INTO heatmap_PARAMTYPE (value, verbose) VALUES
Append your desired param to the list in the following format:
(“column name in the datatable”,“Name to display on the interface”)
Entries in the list must be separated by a comma and terminated by a semi-colon.
NOTE: you can boost a param’s display priority by adding "*" at the beginning of it or “~” to decrease it.
Locate the following line:
INSERT INTO heatmap_PARAMTYPEList_param (list_id, id) VALUES
Locate the List ID in the list and append a new entry with parameters: (LIST ID, param value)
Example using an operand with value “brain” in the list “ALL-OPS”:
INSERT INTO heatmap_operandlist_param (operandlist_id, operand_id) VALUES
...,
("ALL-OPS","brain"),
...
;
Locate the PARAM LISTS section.
Depending on the type of paramlist you’re trying to create (major,minor,operand) locate the following line:
INSERT INTO heatmap_PARAMTYPElist (name,desc) VALUES
Append your new param list in the following format:
(“List ID name”,“Description for documentary purposes”)
Proceed like Adding the param to an existing list.
In static/heatmapUtils.js locate the UnitsTPM or UnitsNucleotides array or create a new array of the unit type and append the param value.
If you’ve created a new unit type, in static/heatmapToolbox.js CTRL+F and search for “UNITS PARSER”.
Insert the following between the last else if and else:
else if (YOUR_ARRAY_NAME.indexOf(column.name)!= -1){units = “YOUR_UNIT”}
In static/heatmapToolbox.js locate all parseSpecialOperands methods.
The first line should contain something reseembling the following: opList.forEach(function(op))
Append your new behaviour to the if tree within.
In static/heatmapUtils.js, append the special operand’s value to the SpecialOps array.
NOTE: A special operand can have different behaviours in different tools.