checkQC.qc_engine module

class checkQC.qc_engine.QCEngine(runfolder, parser_configurations, handler_config, qc_handler_factory=None)[source]

Bases: object

The QCEngine will provide a method to apply all specified handler on the specified runfolder.

Internally it will run a number of methods which will do the following:
  • create all handlers specified in the handler config
  • validate all the configs provided, so that all necessary values are preset
  • initiate the parsers based on which parsers are found in the handlers
  • connect the handlers and parsers so that each parser gets the correct subscribers
  • run the parsers, i.e. pick up data and pass it to the handlers
  • compile all reports from the handlers

The QCEngine has a exit_status field which can be checked after calling the run method, to determine if all handlers were successful or not (zero indicates success, 1 indicates failure)

Run the specified parsers and handlers and compile their reports. Will set the exit_status depending
on if there were any errors or not.
Returns:a dict representing the reports gathers.