Source code for ipfx.bin.generate_pipeline_input

import ipfx.qc_feature_evaluator as qcp
import allensdk.core.json_utilities as ju
import os.path
from ipfx.bin.generate_se_input import generate_se_input, parse_args
import ipfx.lims_queries as lq


[docs]def generate_pipeline_input(cell_dir=None, specimen_id=None, input_nwb_file=None, plot_figures=False, qc_fig_dirname="qc_figs"): se_input = generate_se_input(cell_dir, specimen_id=specimen_id, input_nwb_file=input_nwb_file ) pipe_input = dict(se_input) if specimen_id: pipe_input['manual_sweep_states'] = lq.get_sweep_states(specimen_id) elif input_nwb_file: pipe_input['manual_sweep_states'] = [] if plot_figures: pipe_input['qc_fig_dir'] = os.path.join(cell_dir, qc_fig_dirname) pipe_input['output_nwb_file'] = os.path.join(cell_dir, "output.nwb") pipe_input['qc_criteria'] = ju.read(qcp.DEFAULT_QC_CRITERIA_FILE) return pipe_input
[docs]def main(): """ Usage: > python generate_pipeline_input.py --specimen_id SPECIMEN_ID --cell_dir CELL_DIR > python generate_pipeline_input.py --input_nwb_file INPUT_NWB_FILE --cell_dir CELL_DIR """ kwargs = parse_args() pipe_input = generate_pipeline_input(**kwargs) cell_dir = kwargs["cell_dir"] input_json = os.path.join(cell_dir, 'pipeline_input.json') ju.write(input_json, pipe_input)
if __name__ == "__main__": main()