<!--
  ~ Copyright (C) 2009-2010 Institute for Computational Biomedicine,
  ~                    Weill Medical College of Cornell University
  ~
  ~  This program is free software; you can redistribute it and/or modify
  ~  it under the terms of the GNU General Public License as published by
  ~  the Free Software Foundation; either version 3 of the License, or
  ~  (at your option) any later version.
  ~
  ~  This program is distributed in the hope that it will be useful,
  ~  but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  ~  GNU General Public License for more details.
  ~
  ~  You should have received a copy of the GNU General Public License
  ~  along with this program.  If not, see <http://www.gnu.org/licenses/>.
  -->

<jsap>
    <parameters>
        <flaggedOption>
            <id>output</id>
            <shortFlag>o</shortFlag>
            <longFlag>output</longFlag>
            <required>false</required>
            <help>The alignments in text format</help>
        </flaggedOption>
        <unflaggedOption>
            <id>input</id>
            <required>true</required>
            <help>The compact alignment file to read as input.</help>
        </unflaggedOption>
        <flaggedOption>
            <id>format</id>
            <shortFlag>f</shortFlag>
            <longFlag>format</longFlag>
            <required>false</required>
            <defaults>
                <string>plain</string>
            </defaults>
            <help>Format of the output file (plain, html, prototext). Especially if writing to HTML,
                you should consider using the -s and -e flags to limit how much of the alignment
                file will be processed and the -n flag to control how many alignment entries to output.
                Realistically, most browsers probably cannot handle more than about 50,000 entries.
                For HTML, it is recommended that you only output the first portion of the file,
                which can be accomplished with "-e 1".
                The format prototext is an automatic rendering of protocol buffer messages to text which shows
                the message structure and field values.
            </help>
        </flaggedOption>
        <flaggedOption>
            <id>constant-read-length</id>
            <shortFlag>l</shortFlag>
            <longFlag>constant-read-length</longFlag>
            <stringParser>
                <classname>IntegerStringParser</classname>
            </stringParser>
            <required>false</required>
            <defaults>
                <string>0</string>
            </defaults>
            <help>Use this number as read length for every read when the query length is not included in the alignment.</help>
        </flaggedOption>
         <flaggedOption>
            <id>include-reference-names</id>
            <shortFlag>r</shortFlag>
            <longFlag>include-reference-names</longFlag>
            <required>false</required>
            <help>When provided, only write counts for reference identifiers listed in this comma separated list. To process only counts for chromosome 19 and 1, if sequences are identified by 1 and 19, use: --include-reference-names 1,19</help>
        </flaggedOption>
        <flaggedOption>
            <id>start-position</id>
            <shortFlag>s</shortFlag>
            <longFlag>start-position</longFlag>
            <stringParser>
                <classname>LongStringParser</classname>
            </stringParser>
            <required>false</required>
            <help>The start position within the file, which should be number of bytes into the file to start reading from. The read will actually start at the first record on or after start-position.</help>
        </flaggedOption>
        <flaggedOption>
            <id>end-position</id>
            <shortFlag>e</shortFlag>
            <longFlag>end-position</longFlag>
            <stringParser>
                <classname>LongStringParser</classname>
            </stringParser>
            <required>false</required>
            <help>The end position within the file, which should be number of bytes into the file to end reading from. The read will actually end at the end of the record on or after end-position.</help>
        </flaggedOption>
        <flaggedOption>
            <id>max-to-output</id>
            <shortFlag>n</shortFlag>
            <longFlag>max-to-output</longFlag>
            <stringParser>
                <classname>LongStringParser</classname>
            </stringParser>
            <required>false</required>
            <defaults>
                <string>-1</string>
            </defaults>
            <help>The maximum number of alignment entries to output or -1 to output all entries. The default is to output the entire alignment.</help>
        </flaggedOption>
    </parameters>
</jsap>
