<root>
  <key>ManageNoData</key>
  <exec>otbcli_ManageNoData</exec>
  <longname>No Data management</longname>
  <group>Image Manipulation</group>
  <description>Manage No-Data</description>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_InputImage">ParameterRaster</parameter_type>
    <key>in</key>
    <name>Input image</name>
    <description>Input image</description>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_OutputImage">OutputRaster</parameter_type>
    <key>out</key>
    <name>Output Image</name>
    <description>Output image</description>
    <hidden />
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_Empty">ParameterBoolean</parameter_type>
    <key>usenan</key>
    <name>Consider NaN as no-data</name>
    <description>If active, the application will consider NaN as no-data values as well</description>
    <default>True</default>
    <optional>True</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_Choice">ParameterSelection</parameter_type>
    <key>mode</key>
    <name>No-data handling mode</name>
    <description>Allows choosing between different no-data handling options</description>
    <options>
      <choices>
        <choice>buildmask</choice>
        <choice>changevalue</choice>
        <choice>apply</choice>
      </choices>
    </options>
    <default>0</default>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_Float">ParameterNumber</parameter_type>
    <key>mode.buildmask.inv</key>
    <name>Inside Value</name>
    <description>Value given in the output mask to pixels that are not no data pixels</description>
    <minValue />
    <maxValue />
    <default>1</default>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_Float">ParameterNumber</parameter_type>
    <key>mode.buildmask.outv</key>
    <name>Outside Value</name>
    <description>Value given in the output mask to pixels that are no data pixels</description>
    <minValue />
    <maxValue />
    <default>0</default>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_Float">ParameterNumber</parameter_type>
    <key>mode.changevalue.newv</key>
    <name>The new no-data value</name>
    <description>The new no-data value</description>
    <minValue />
    <maxValue />
    <default>0</default>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_InputImage">ParameterRaster</parameter_type>
    <key>mode.apply.mask</key>
    <name>Mask image</name>
    <description>Mask to be applied on input image (valid pixels have non null values)</description>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_Float">ParameterNumber</parameter_type>
    <key>mode.apply.ndval</key>
    <name>Nodata value used</name>
    <description>No Data value used according to the mask image</description>
    <minValue />
    <maxValue />
    <default>0</default>
    <optional>False</optional>
  </parameter>
  <parameter>
    <parameter_type source_parameter_type="ParameterType_RAM">ParameterNumber</parameter_type>
    <key>ram</key>
    <name>Available RAM (Mb)</name>
    <description>Available memory for processing (in MB)</description>
    <minValue />
    <maxValue />
    <default>128</default>
    <optional>True</optional>
  </parameter>
</root>
