Task Template for ENVI 5.4
This topic describes the fields (also called keys) in a task template for use with ENVI 5.4.
Task Keys
The following table describes the keys that provide an overview of the task. The envitask_3.0
schema simplifies this table, as the JSON keys have the same names as the ENVITask properties. The "Mapping" field lists the ENVITask property that corresponds to the key.
Key |
Required |
Description |
Mapping |
---|---|---|---|
|
Yes |
A string with the name of the task, excluding the prefix |
NAME |
|
Yes |
A string with the name of the class to use; the most common is ENVITaskFromProcedure. Use ENVIMetatask if you are creating a metatask. See Metatasks for details. Use ENVIAbortableTaskFromProcedure to allow your custom task to have a progress dialog with an option to cancel the process. See Messaging for details. You can also write your own base class to simplify the process of writing custom tasks that use a common set of parameters and application behavior. See Custom Base Classes for more information. |
|
|
Yes |
The routine that is called when |
ROUTINE |
|
No |
A string with the name of the task as it appears to the end user. Spaces and special characters are allowed. This key is used by tasks that display a dynamic user interface for entering parameters. See ENVIUI::SelectTaskParameters for details. |
DISPLAY_NAME |
|
Yes |
A string with a description of the task. |
DESCRIPTION |
|
No |
A string that indicates if raster processing is affected by downsampling before program execution. A value of This key is used by the dynamic task UI to determine Preview accuracy. |
COMMUTE_ON_DOWNSAMPLE |
|
No |
A string that indicates if raster processing is affected by subsetting before program execution. For example, your algorithm may rely on statistics of the entire dataset to get accurate results. A value of This key is used by the dynamic task UI to determine Preview accuracy. |
COMMUTE_ON_SUBSET |
|
Yes |
A string listing the version of ENVITask JSON schema that was used to write this task. Currently the only valid value is |
|
|
No |
A container of key/value pairs, described in the Parameter Keys section next. |
|
Parameter Keys
The following table describes the keys that belong to the parameters
group in a task template; these are repeated for each parameter. The "Mapping to ENVITaskParameter" field lists the keys' corresponding property names in ENVITaskParameter.
Key |
Required |
Description |
Mapping to ENVITaskParameter |
---|---|---|---|
|
Yes |
The name of the parameter as it appears to the end user. |
NAME |
|
No |
The internal keyword that the parameter should map to. If it is the same as the NAME key, then you do not need to set |
|
|
No |
The name of the task as it appears to the end user. This key is used by tasks that display a dynamic user interface for entering parameters. See ENVIUI::SelectTaskParameters for details. |
DISPLAY_NAME |
|
Yes |
A scalar string with one of the following:
If a specified data type requires more than one scalar, use the |
TYPE |
|
No |
Specify the array dimensions if the
|
DIMENSIONS |
|
Yes |
Specify if the parameter is Note: If you are using an older version of ENVI where the task template specifies the |
DIRECTION |
|
No |
Set this key to |
REQUIRED |
|
Yes |
A description of the parameter. |
DESCRIPTION |
|
No |
A string array that lists the possible values for the property. Any IDL data type is supported. You can also map from user-friendly strings to an internal lookup table of values if desired. This property is not present for all values of TYPE. Use QueryProperty to learn if it is available. |
CHOICE_LIST |
|
No |
The default value of the parameter if the end user does not provide a value. |
DEFAULT |
|
No |
A value that is greater than or equal to the minimum value allowed for the parameter. This property is not present for all values of TYPE. Use QueryProperty to learn if it is available. |
MIN |
|
No |
A value that is less than or equal to the maximum value allowed for the parameter. This property is not present for all values of TYPE. Use QueryProperty to learn if it is available. |
MAX |
|
No |
Set this key to |
|
Revision History
This section summarizes the updates to task templates, compared to the previous release:
- The
version
key was renamed toschema
. It is a required key with a default value ofenvitask_3.0
. You can still specifyversion
, but its value must be5.3.2
or earlier. - Task and parameter key names are lower-case and use underscores to separate multiple words.
- The
routine
task key is required. - The
description
task key is required. - The
dataType
parameter key was renamed totype
. It now accepts lists, ordered lists, hashes, and ordered hashes. See thetype
description above for details. - The
dimensions
key was introduced. Use this key to specify the array dimensions if thetype
parameter requires more than one scalar. See thedimensions
description above for details. - The
parameterType
key was replaced with therequired
key. The valid values aretrue
orfalse
. - The
defaultValue
key was renamed todefault
.