<?xml version="1.0" encoding="utf-8"?>
<executable>
  <category>Demonstration</category>
  <title>Execution Model Tour</title>
  <description>Shows one of each type of parameter.</description>
  <version>1.0</version>
  <documentationurl></documentationurl>
  <license></license>
  <contributor>Daniel Blezek</contributor>

  <parameters>
    <label>Scalar Parameters</label>
    <description>Variations on scalar parameters</description>
    <integer>
      <name>integerVariable</name>
      <flag>-i</flag>
      <longflag>--integer</longflag>
      <description>An integer without constraints</description>
      <label>Integer Parameter</label>
      <default>30</default>
    </integer>
    <double>
      <name>doubleVariable</name>
      <flag>-d</flag>
      <longflag>--double</longflag>
      <description>A double with constraints</description>
      <label>Double Parameter</label>
      <default>30</default>
      <constraints>
        <minimum>0</minimum>
        <maximum>1.e3</maximum>
        <step>0</step>
      </constraints>
    </double>
  </parameters>

  <parameters>
    <label>Vector Parameters</label>
    <description>Variations on vector parameters</description>
    <float-vector>
      <name>floatVector</name>
      <flag>f</flag>
      <description>A vector of floats</description>
      <label>Float Vector Parameter</label>
      <default>1.3,2,-14</default>
    </float-vector>
    <string-vector>
      <name>stringVector</name>
      <longflag>string_vector</longflag>
      <description>A vector of strings</description>
      <label>String Vector Parameter</label>
      <default>foo,bar,foobar</default>
    </string-vector>
  </parameters>

  <parameters>
    <label>Enumeration Parameters</label>
    <description>Variations on enumeration parameters</description>
    <string-enumeration>
      <name>stringChoice</name>
      <flag>e</flag>
      <longflag>enumeration</longflag>
      <description>An enumeration of strings</description>
      <label>String Enumeration Parameter</label>
      <default>Bill</default>
      <element>Ron</element>
      <element>Eric</element>
      <element>Bill</element>
      <element>Ross</element>
      <element>Steve</element>
      <element>Will</element>
    </string-enumeration>
  </parameters>

  <parameters>
    <label>Boolean Parameters</label>
    <description>Variations on boolean parameters</description>
    <boolean>
      <name>boolean1</name>
      <longflag>boolean1</longflag>
      <description>A boolean default true</description>
      <label>Boolean Default true</label>
      <default>true</default>
    </boolean>
    <boolean>
      <name>boolean2</name>
      <longflag>boolean3</longflag>
      <description>A boolean default false</description>
      <label>Boolean Default false</label>
      <default>false</default>
    </boolean>
  </parameters>

  <parameters>
    <label>File, Directory and Image Parameters</label>
    <description>Parameters that describe files and direcories.</description>
    <file>
      <longflag>file1</longflag>
      <description>An input file</description>
      <label>Input file</label>
      <channel>input</channel>
    </file>
    <directory>
      <longflag>directory1</longflag>
      <description>An input directory. If no default is specified, the current directory is used,</description>
      <label>Input directory</label>
      <channel>input</channel>
    </directory>
    <image>
      <longflag>image1</longflag>
      <description>An input image</description>
      <label>Input image</label>
      <channel>input</channel>
    </image>
    <image>
      <longflag>image2</longflag>
      <description>An output image</description>
      <label>Output image</label>
      <channel>output</channel>
    </image>
  </parameters>

  <parameters>
    <label>Index Parameters</label>
    <description>Variations on parameters that use index rather than flags.</description>
    <image>
      <name>arg0</name>
      <channel>input</channel>
      <index>0</index>
      <description>First index argument is an image</description>
      <label>Second index argument</label>
    </image>
    <image>
      <name>arg1</name>
      <channel>output</channel>
      <index>1</index>
      <description>Second index argument is an image</description>
      <label>Second index argument</label>
    </image>
  </parameters>
</executable>
