felis_handler
Handler to execute Felis commands. Felis is a submodule that checks results and uploads them to a database
Classes
Filler to handle calls to Felis if it is not used. |
|
|
FelisDummy
FelisHandler
- class module_testing.dirigent.felis_handler.FelisHandler(module_list, sequence_name='unnamed', **kwargs)
Bases:
object- __init__(module_list, sequence_name='unnamed', **kwargs)
Initialising function for the felis handler :param module_list: List of dictionaries, each defining the properties of one of the modules. Extracted from modules.json :param dummy: If True, all functions called do nothing :param sequence_name: the sequence can only be named at felis.upload_result(), which is called at context exit but the sequence name must be set from within add_result()
- FELIS_DIR = 'Felis_Results'
- add_result(context, file_path, test_name, test_type, comment='')
- IV and SLDO result upload for set_result() from felis/felis.py:
file_path = e.g. “Results_dirigent/iv_curve”. test_name = Name of test. The name of the test result belongs to.
Test names must be unique (str)
- test_type = Type of test. Must be from official list (str)
comment = User comment. defaults to “” (str)
- add_result_Ph2_ACF(context, run, testtype, label)
- add_result_basic(context, felis_files, module_name, test_name, test_type, comment='')
Only works for single modules currently
- add_result_sequence(context, file_path, scan_name, test_type, test_name, comment='')
- calibration sequence (e.g. assembly_test) result upload for set_result() from felis/felis.py:
file_path = e.g. “Felis_Results/2025-07-01_15-46-58”. scan_name = Name of scan e.g. “07_PixelAlive”. This is used to find the folder name during calibraiton seqs. test_type = e.g. “ivcurve”. Must be from official list (str) test_name = Name of test e.g. “07_CrossTalk”. Must be unique (str). This is the one that’s actually passed to Panthera
comment = User comment. defaults to “” (str)
- property context
- do_upload()
- get_names(module_list)
- get_prefix(hybrid)
- get_rootpath(hybrid, chip)
- get_sequence_name()
Return value stored in sequence name
- return_add_status(status, message, sanity, explanation)
- set_dirigent_version(dirigent_ver)
Sets the dirigent version string instance variable. The string ‘dirigent ‘ will be appended to distinguish between QC softwares.
- Parameters:
dirigent_ver – String to be sent to Panthera via Felis and displayed in ‘Test Station Software Version: ‘ in the Sequence.
- set_ph2acf_version(ph2acf_ver)
Sets the Ph2 ACF version string instance variable.
- Parameters:
ph2acf_ver – String to be sent to Panthera via Felis and displayed in ‘Ph2_ACF Version: ‘ in the Sequence.
- set_sequence_name(new_sequence_name)
Allow external scripts/functions to update the value
- set_versions(ph2acf_ver, dirigent_ver)