view pycoqc.xml @ 3:fae03f3d4bf7 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pycoqc commit 4850c9f31e2cf1edb05d5c8cd0c8ec8be12329c9
author iuc
date Mon, 11 Mar 2024 15:25:55 +0000
parents dc1500f42073
children
line wrap: on
line source

<?xml version="1.0"?>
<tool id="pycoqc" name="Pycoqc" version="@TOOL_VERSION@+galaxy0" profile="@PROFILE@">
    <description>
        quality control for Nanopore sequencing data
    </description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="xrefs"/>
    <expand macro="requirements"/>

    <expand macro="version_command"/>

    <command detect_errors="exit_code"><![CDATA[
pycoQC
--min_pass_qual '$min_pass_qual'
--min_pass_len '$min_pass_len'
#if $filter_calibration: 
    '$filter_calibration'
#end if
#if $filter_duplicated:
    '$filter_duplicated'
#end if
--min_barcode_percent '$min_barcode_percent'
--report_title '$report_title'
## can be implemented in future - --template_file
## can be implemented in future - --config_file
#if $skip_coverage_plot
    '$skip_coverage_plot'
#end if
--sample '$sample'
## can be implemented in future --default_config
--summary_file '$summary_file'
## can be implemented in future --barcode_file
#if $bam_file:
    --bam_file '$bam_file'
#end if
--html_outfile '$out_html'
#if $out_json:
    --json_outfile '$out_json'
#end if
    ]]></command>
    <inputs>
        <param argument="--summary_file" type="data" format="txt,tabular" label="A sequencing_summary file" help="Must be generated by Albacore 1.0.0 + (read_fast5_basecaller.py) / Guppy 2.1.3+ (guppy_basecaller)"  />
        <!-- <param argument="barcode_file" type="data" format="txt" label=""  /> -->
        <param argument="--bam_file" type="data" format="bam" label="An alignment file generated by aligning the reads described in the sequencing_summary file" optional="true"/>
        <param name="output_json_bool" type="boolean" checked="true" label="Output JSON Summary File?"/>
        <param argument="--min_pass_qual" type="integer" value="7" min="0" label="Minimum quality to consider a read as 'pass'"  />
        <param argument="--min_pass_len" type="integer" value="0" min="0" label="Minimum read length to consider a read as 'pass'"/>
        <param argument="--filter_calibration" type="boolean" checked="false" truevalue="--filter_calibration" falsevalue="" label="Filter Calibration?" help="If yes, reads flagged as calibration strand by the basecaller are removed" />
        <param argument="--filter_duplicated" type="boolean" checked="false" truevalue="--filter_duplicated" falsevalue="" label="Filter Duplicated?" help="If yes, duplicated read_ids are removed but the first occurence is kept (Guppy sometimes outputs the same read multiple times)" />
        <param argument="--min_barcode_percent" type="float" value="0.1" label="Minimal percent of total reads to retain barcode label" help="If below, the barcode value is set as unclassified" />
        <param argument="--report_title" type="text" value="PycoQC report" label="Title to use in the html report" />
        <param argument="--skip_coverage_plot" type="boolean" checked="false" truevalue="--skip_coverage_plot" falsevalue="" label="Skip the coverage plot in HTML report?" help="Useful when using a reference file containing many sequences, i.e. transcriptome" />
        <param argument="--sample" type="integer" label="Number of reads will be randomly selected instead of the entire dataset for ploting function" help="(deterministic sampling)" value="100000"/>
    </inputs>
    <outputs>
        <!-- standard -->
        <data name="out_html" format="html" label="${tool.name} on ${on_string}: HTML Report"/>
        <data name="out_json" format="json" label="${tool.name} on ${on_string}: JSON Summary">
            <filter>output_json_bool</filter>
        </data>
    </outputs>
    <tests>
        <!-- #1 default -->
        <test expect_num_outputs="2">
            <param name="summary_file" value="test.txt"/>
            <output name="out_html">
                <assert_contents>
                    <has_line line="&lt;!doctype html&gt;"/>
                    <has_n_lines n="300"/>
                </assert_contents>
            </output>
            <output name="out_json" file="test.json" lines_diff="2"/>
        </test>
    </tests>
    <help><![CDATA[
.. class:: infomark

**What it does**

@WID@

**Input**

- Guppy Sequencing Summary Output (tsv)
- Aligned Reads (bam) (Optional)

**Output**

- Output QC Report (HTML)
- Output QC Metrics (JSON)


**References**

@REFERENCES@
    ]]></help>
    <expand macro="citations"/>
</tool>