Refactors the handling of QC protocols within the QC pipeline code so that the core pipelines take QCProtocol instances as input, leaving the calling subprograms to deal with protocol determination.
The principal changes are:
QCPipeline.add_project now explicitly requires a QCProtocol instance as mandatory input
The QC run metadata stored in qc.info files and handled by the AnalysisProjectQCDirInfo class now includes a protocol_specification field, which the pipeline uses to store the QC protocol specification string; this specification is used to pass protocol information to verification and reporting
The run_qc command and run_qc.py utility now perform QC protocol determination and generate QCProtocol instances that they pass into the pipeline setup
Refactors the handling of QC protocols within the QC pipeline code so that the core pipelines take
QCProtocol
instances as input, leaving the calling subprograms to deal with protocol determination.The principal changes are:
QCPipeline.add_project
now explicitly requires aQCProtocol
instance as mandatory inputqc.info
files and handled by theAnalysisProjectQCDirInfo
class now includes aprotocol_specification
field, which the pipeline uses to store the QC protocol specification string; this specification is used to pass protocol information to verification and reportingrun_qc
command andrun_qc.py
utility now perform QC protocol determination and generateQCProtocol
instances that they pass into the pipeline setup