You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The parameter `OutputCondition` defines how the [`OutputTaskSetting`](../../file/task-settings/output-task-setting.md) object outputs results that satisfy multiple filter conditions across products.
10
+
## Overview
11
+
12
+
The parameter `OutputCondition` defines how the [`OutputTaskSetting`](../../file/task-settings/output-task-setting.md) object outputs results that satisfy multiple filter conditions across products. It allows you to configure complex filtering logic by combining results from multiple tasks and TargetROIDef objects using logical operators (AND/OR).
13
+
14
+
**Use Cases:**
15
+
- Filter outputs based on conditions from descendant TargetROIDef tasks
16
+
- Combine results from multiple processing tasks with logical operators
17
+
- Reference specific atomic result types from previous tasks
18
+
15
19
## JSON Structure
16
20
17
21
**Location in template:**
@@ -43,6 +47,14 @@ OutputTaskSettingOptions[i]
43
47
}
44
48
```
45
49
50
+
**Example Explanation:**
51
+
52
+
This configuration filters output results where:
53
+
- The top-level `Operator` is "AND", requiring all conditions in `TaskResultArray` to be met
54
+
- Results from task "B_task" on TargetROIDef "B" must exist
55
+
- These results must have backward references to task "A_task"
56
+
- The referenced results must be one of the specified atomic result types (text lines, barcodes, frames, table cells, or color regions)
57
+
46
58
> [!NOTE]
47
59
> - This snippet shows only the `OutputCondition` parameter.
48
60
> - To use it, embed this parameter within a [OutputTaskSetting]({{ site.dcvb_parameters }}file/task-settings/output-task-setting.html) object.
@@ -53,81 +65,99 @@ OutputTaskSettingOptions[i]
53
65
54
66
## Parameter Details
55
67
56
-
### Operator
68
+
### Operator (Top-Level)
57
69
58
-
The parameter`Operator` defines the type of filtered combination of results from multiple tasks within a `TargetROIDef` object or across multiple `TargetROIDef` objects.
70
+
The top-level`Operator`parameter defines how to combine the conditions from multiple items in the `TaskResultArray`.
59
71
60
72
| Operator Parameter Details |
61
73
| :------------------- |
62
74
|**Type**<br>*String*|
63
75
|**Range**<br>One of the following values: "OR", "AND" |
64
76
|**Default Value**<br>"AND"|
65
77
78
+
**Explanation:**
79
+
-**"AND"**: All conditions in `TaskResultArray` must be satisfied
80
+
-**"OR"**: At least one condition in `TaskResultArray` must be satisfied
81
+
66
82
### TaskResultArray
67
83
68
-
The parameter `TaskResultArray` configures multiple tasks of descendant `TargetROIDef` objects to filter out the results of the tasks of the reference `TargetROIDef`.
84
+
The parameter `TaskResultArray` is an array that configures multiple filtering conditions based on tasks from descendant `TargetROIDef` objects. Each array element represents one filtering condition.
85
+
86
+
**Type:** Array of objects
87
+
88
+
Each object in the array contains the following parameters:
69
89
70
90
#### TargetROIDefName
71
91
72
-
The parameter `TargetROIDefName` configures the name of descendant `TargetROIDef` object.
92
+
Specifies the name of the descendant `TargetROIDef` object to reference.
73
93
74
94
| TargetROIDefName Parameter Details |
75
95
| :------------------- |
76
96
|**Type**<br>*String*|
77
-
|**Range**<br>One of the names of descendant `TargetROIDef` object |
78
-
|**Default Value**<br>mandatory|
97
+
|**Range**<br>Must be one of the descendant `TargetROIDef` object names defined in your template|
98
+
|**Default Value**<br>Mandatory (no default)|
79
99
80
100
#### TaskSettingNameArray
81
101
82
-
The parameter `TaskSettingNameArray` specifies the task name array on the descendant `TargetROIDef` object.
102
+
Specifies which tasks on the descendant `TargetROIDef` object to check for results.
83
103
84
104
| TaskSettingNameArray Parameter Details |
85
105
| :------------------- |
86
-
|**Type**<br>*String[]*|
87
-
|**Range**<br>Each member of the array should be one of the task in the descendant `TargetROIDef` object.|
106
+
|**Type**<br>*String[]*(Array of strings) |
107
+
|**Range**<br>Each member must be a valid task name in the specified descendant `TargetROIDef` object |
88
108
|**Default Value**<br>null|
89
109
110
+
#### Operator (Task-Level)
111
+
112
+
Defines how to combine multiple task results within this specific condition.
113
+
114
+
| Operator Parameter Details |
115
+
| :------------------- |
116
+
|**Type**<br>*String*|
117
+
|**Range**<br>One of the following values: "OR", "AND" |
118
+
|**Default Value**<br>"AND"|
119
+
120
+
**Note:** This is different from the top-level `Operator`. The task-level operator combines results within a single `TaskResultArray` item, while the top-level operator combines across multiple array items.
Configures backward reference filtering based on results from the reference (parent) `TargetROIDef` object.
125
+
126
+
##### ReferenceTaskNameArray
127
+
128
+
Specifies which tasks on the reference `TargetROIDef` object to check for backward references.
129
+
130
+
| ReferenceTaskNameArray Parameter Details |
131
+
| :------------------- |
132
+
|**Type**<br>*String[]* (Array of strings) |
133
+
|**Range**<br>Each member must be a valid task name in the reference `TargetROIDef` object |
134
+
|**Default Value**<br>null|
135
+
136
+
##### ReferenceResultTypeArray
137
+
138
+
Specifies which types of atomic results to accept from the referenced tasks.
139
+
140
+
| ReferenceResultTypeArray Parameter Details |
141
+
| :------------------- |
142
+
|**Type**<br>*String[]* (Array of strings) |
143
+
|**Range**<br>Each member must be one of the following `AtomicResultType` values:<br>- `"ART_TEXT_LINE"`: Text line results<br>- `"ART_BARCODE"`: Barcode results<br>- `"ART_FRAME"`: Frame results<br>- `"ART_TABLE_CELL"`: Table cell results<br>- `"ART_COLOUR_REGION"`: Color region results |
0 commit comments