<macros>
    <token name="@TOOL_VERSION@">2.2.6</token>
    <token name="@VERSION_SUFFIX@">0</token>
    <xml name="citation">
        <citations>
            <citation type="doi">10.1371/journal.pcbi.1007732</citation> 
            <citation type="doi">10.1093/bioinformatics/btaa792</citation> 
        </citations>
    </xml>
    <xml name="requirements">
        <requirements>
            <requirement type="package" version="@TOOL_VERSION@">ppanggolin</requirement>
        </requirements>
    </xml>
    <xml name="xrefs">
        <xrefs>
            <xref type="bio.tools">ppanggolin</xref>
        </xrefs>
    </xml>
    <token name="@ORGANISM_LIST@"><![CDATA[
        touch ./tmp_ppanggolin/organism_list/organism.list &&
        #set extension_input_files = ""
        #for $counter_input_files, $file in enumerate($genomes):
            #if $counter_input_files == 0:
            	#set extension_input_files = $file.ext
            #else:
                #if $file.ext != $extension_input_files:
                    #raise Exception("All the genome files must be of the same datatype, either all genbank files or all fasta files.")
            	#end if
            #end if
            
            #set base_name = re.sub('[^\w\-_\.]', '_', str($file.element_identifier))
            echo -e '${base_name}\t${file}' >> ./tmp_ppanggolin/organism_list/organism.list &&
        #end for
    ]]></token>
    <xml name="inputs_identity_coverage_do_defrag">
        <param argument="--identity" type="float" value="0.8" min="0" max="1" label="Minimum alignment identity"/>
        <param argument="--coverage" type="float" value="0.8" min="0" max="1" label="Minimum alignment coverage"/>
        <param name="do_defrag" type="boolean" checked="true" label="Gene family defragmentation" truevalue="" falsevalue="--no_defrag" help="Realign gene families to link fragments with their non-fragmented gene family. (--no_defrag)"/>
    </xml>
    <xml name="inputs_nb_of_partitions">
        <param argument="--nb_of_partitions" type="integer" max="20" label="Number of classes used to partition the pangenome" optional="true" help="If empty value (default), it will be automatically determined. Otherwise, the value needs to be between 2 and 20 and it is advised to set a value of 3. See the link for the documentation in the help section for more details.">
            <validator type="expression" message="Value needs to be empty or an integer between 2 and 20">value == "" or int(value) >= 2</validator>
        </param>
    </xml>
    <xml name="inputs_translation_table">
        <param argument="--translation_table" type="select" label="Translation table">
            <option value="1" selected="true">1 - Standard Code</option>
            <option value="2">2 - Vertebrate Mitochondrial</option>
            <option value="3">3 - Yeast Mitochondrial</option>
            <option value="4">4 - Mold, Protozoan, and Coelenterate Mitochondrial</option>
            <option value="5">5 - Invertebrate Mitochondrial</option>
            <option value="6">6 - Ciliate Nuclear</option>
            <option value="9">9 - Echinoderm Mitochondrial</option>
            <option value="10">10 - Euplotid Nuclear</option>
            <option value="11">11 - Bacterial and Plant Plastid</option>
            <option value="12">12 - Alternative Yeast Nuclear</option>
            <option value="13">13 - Ascidian Mitochondrial</option>
            <option value="14">14 - Flatworm Mitochondrial</option>
            <option value="15">15 - Blepharisma Nuclear</option>
            <option value="16">16 - Chlorophycean Mitochondrial</option>
            <option value="21">21 - Trematode Mitochondrial</option>
            <option value="22">22 - Scenedesmus obliquus Mitochondrial</option>
            <option value="23">23 - Thraustochytrium Mitochondrial</option>
            <option value="24">24 - Pterobranchia Mitochondrial</option>
            <option value="25">25 - Candidate Division SR1 and Gracilibacteria</option>
            <option value="26">26 - Pachysolen tannophilus Nuclear</option>
            <option value="27">27 - Karyorelict Nuclear</option>
            <option value="28">28 - Condylostoma Nuclear</option>
            <option value="29">29 - Mesodinium Nuclear</option>
            <option value="30">30 - Peritrich Nuclear</option>
            <option value="31">31 - Blastocrithidia Nuclear</option>
            <option value="32">32 - Balanophoraceae Plastid</option>
            <option value="33">33 - Cephalodiscidae Mitochondrial</option>
        </param>
    </xml>
    <xml name="inputs_pangenome">
        <param argument="--pangenome" name="pangenome_h5" type="data" format="h5" label="Input pangenome h5 file"/>
    </xml>
    <xml name="inputs_soft_core">
        <param argument="--soft_core" type="float" value="0.95" min="0" max="1" label="Soft core threshold used when generating general statistics on the projected genome" help="Default=0.95 .This threshold does not influence PPanGGOLiN's partitioning. The value determines the minimum fraction of genomes that must possess a gene family for it to be considered part of the soft core."/>
    </xml>
    <xml name="inputs_genomes" token_min="1" token_extratexthelp="">
        <param name="genomes" type="data" multiple="true"  min="@MIN@" label="Genome files" format="fasta,genbank" help="All the genome files must be of the same format, either all genbank files or all fasta files. A minimum of @MIN@ genome file(s) is mandatory.@EXTRATEXTHELP@ Special characters and spaces are replaced by underscore."/>
    </xml>
</macros>
